BaşlayınÜcretsiz Başlayın

Öğrenciler bölümünde ortalama derece merkeziliğini gün gün çıkar

Burada, tüm düğümler üzerindeki ortalama derece merkeziliğinin, zaman içinde çizilen kenar sayısıyla ilişkili olup olmadığını inceleyeceksin. Mutlaka güçlü bir korelasyon olmak zorunda değil; bunun böyle olup olmadığına bakacaksın.

Bu egzersiz

Python ile Orta Düzey Ağ (Network) Analizi

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Kenarların bir alt kümesini içeren G_sub adında yeni bir grafik oluştur.
  • Düğüm metadatası dahil olacak şekilde G'den düğümler ekle.
  • Kriteri sağlayan kenarları .add_edges_from() metodunu kullanarak ekle.
  • nx.bipartite.projected_graph() fonksiyonunu kullanarak G_sub'dan öğrenciler izdüşümünü G_student_sub olarak elde et.
  • nx.degree_centrality() kullanarak öğrenciler izdüşümünün derece merkeziliğini hesapla (iki parçalı sürümü kullanma).
  • Ortalama derece merkeziliğini mean_dcs listesine ekle. Önce dc.values()'ı listeye dönüştürdüğünden emin ol.
  • Grafiği görmek için 'Yanıtı Gönder'e bas!

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

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()
Kodu Düzenle ve Çalıştır