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

Kullanıcı düğümlerinin derece merkezilik dağılımı

Bu egzersizde ve bir sonraki egzersizde, önceki kurstaki materyalin son bir tekrarını yapacaksın. Görevin, GitHub işbirliği ağının iki parçalı (bipartite) sürümünde, her düğüm bölümünün derece merkezilik dağılımlarını çizmek. Burada bunu 'users' bölümü için yapacaksın. Sonraki egzersizde ise 'projects' bölümü için yapacaksın.

Daha önce yazdığın get_nodes_from_partition() fonksiyonu senin için yüklendi. Hatırlatmak için, "derece merkeziliği" bir düğümün öneminin bir ölçüsüdür ve "derece merkezilik dağılımı" ise grafikteki tüm düğümlerin derece merkezilik puanlarının listesidir. Birkaç egzersiz önce, circos grafiğini oluştururken, derece merkeziliklerini senin için hesaplamıştık. Şimdi bunu kendin yapmayı pratik edeceksin!

Bu egzersiz

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

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

Egzersiz talimatları

  • matplotlib.pyplot modülünü plt adıyla içe aktar.
  • Önceki egzersizdeki get_nodes_from_partition() fonksiyonunu kullanarak, G’nin 'users' düğümlerine karşılık gelen user_nodes adlı bir liste elde et.
  • nx.degree_centrality() fonksiyonunu kullanarak G’deki her düğüm için derece merkeziliklerini hesapla. Sonucu dcs olarak sakla.
  • Bir liste üreteci kullanarak user_nodes içindeki her düğümün derece merkeziliklerini hesapla. Sonucu user_dcs olarak sakla.
    • Unutma, dcs anahtarları düğümler olan bir sözlüktür. İlgili düğümler burada user_nodes içinde. Kullanıcı düğümlerinin derece merkeziliklerini elde etmek için bu bilgiyi nasıl kullanabilirsin? Yineleyici değişken olarak n kullan.
  • plt.hist() ve user_dcs kullanarak kullanıcıların derece dağılımının histogramını çiz.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Import matplotlib
____

# Get the 'users' nodes: user_nodes
user_nodes = ____

# Compute the degree centralities: dcs
dcs = ____

# Get the degree centralities for user_nodes: user_dcs
user_dcs = [dcs[____] for n in ____]

# Plot the degree distribution of users_dcs
plt.yscale('log')
plt.hist(____, bins=20)
plt.show()
Kodu Düzenle ve Çalıştır