Mulai sekarangMulai gratis

Ekstrak rerata degree centrality per hari pada partisi mahasiswa

Di sini, Anda akan memeriksa apakah rerata degree centrality di semua node berkorelasi dengan jumlah edge yang dipetakan seiring waktu. Tidak harus ada korelasi yang kuat, dan Anda akan melihat apakah hal tersebut terjadi.

Latihan ini merupakan bagian dari kursus

Analisis Jaringan Menengah di Python

Lihat Kursus

Instruksi latihan

  • Buat instans grafik baru bernama G_sub yang berisi subset edge.
  • Tambahkan node dari G, termasuk metadata node.
  • Tambahkan edge yang memenuhi kriteria, menggunakan metode .add_edges_from().
  • Dapatkan proyeksi mahasiswa G_student_sub dari G_sub menggunakan fungsi nx.bipartite.projected_graph().
  • Hitung degree centrality dari proyeksi mahasiswa menggunakan nx.degree_centrality() (jangan gunakan versi bipartit).
  • Tambahkan rerata degree centrality ke daftar mean_dcs. Pastikan mengonversi dc.values() menjadi list terlebih dahulu.
  • Tekan 'Kirim Jawaban' untuk melihat plot!

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

from datetime import datetime, timedelta
import numpy as np
import networkx as nx
import matplotlib.pyplot as plt

# Initialize a new list: mean_dcs
mean_dcs = []
curr_day = dayone
td = timedelta(days=2)

while curr_day < lastday:
    if curr_day.day == 1:
        print(curr_day)  
    # Instantiate a new graph containing a subset of edges: G_sub
    G_sub = ____
    # Add nodes from G
    G_sub.____(____)
    # Add in edges that fulfill the criteria
    G_sub.____([(u, v, d) for u, v, d in G.edges(data=True) if d['date'] >= curr_day and d['date'] < curr_day + td])
    
    # Get the students projection
    G_student_sub = ____
    # Compute the degree centrality of the students projection
    dc = ____
    # Append mean degree centrality to the list mean_dcs
    mean_dcs.____(np.mean(____(dc.values())))
    # Increment the time
    curr_day += td
    
plt.plot(mean_dcs)
plt.xlabel('Time elapsed')
plt.ylabel('Degree centrality.')
plt.show()
Edit dan Jalankan Kode