Bắt đầu ngayBắt đầu miễn phí

Khác biệt của đồ thị theo thời gian

Bây giờ, bạn sẽ tính các khác biệt của đồ thị theo thời gian! Để xét trường hợp đơn giản nhất, ở đây bạn sẽ dùng một cửa sổ (tháng, tháng + 1), rồi theo dõi các cạnh được thêm hoặc bị mất theo thời gian. Bài tập này là bước chuẩn bị cho bài tiếp theo, nơi bạn sẽ trực quan hóa các thay đổi theo thời gian.

Bài tập này là một phần của khóa học

Phân tích mạng nâng cao với Python

Xem khóa học

Hướng dẫn bài tập

  • Bên trong vòng lặp for:
    • Gán Gs[i] cho g1Gs[i + window] cho g2.
    • Dùng nx.difference() để tính phần khác biệt giữa g2g1. Thêm kết quả vào added.
    • Thêm phần khác biệt giữa g1g2 vào removed.
  • In fractional_changes.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

import networkx as nx  
# Instantiate a list of graphs that show edges added: added
added = []
# Instantiate a list of graphs that show edges removed: removed
removed = []
# Here's the fractional change over time
fractional_changes = []
window = 1

for i in range(len(Gs) - window):
    g1 = Gs[____]
    g2 = Gs[____ + ____]
        
    # Compute graph difference here
    added.append(____)   
    removed.append(____)
    
    # Compute change in graph size over time
    fractional_changes.append((len(g2.edges()) - len(g1.edges())) / len(g1.edges()))
    
# Print the fractional change
print(____)
Chỉnh sửa và Chạy Mã