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
Hướng dẫn bài tập
- Bên trong vòng lặp
for:- Gán
Gs[i]chog1vàGs[i + window]chog2. - Dùng
nx.difference()để tính phần khác biệt giữag2vàg1. Thêm kết quả vàoadded. - Thêm phần khác biệt giữa
g1vàg2vàoremoved.
- Gán
- 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(____)