Mulai sekarangMulai gratis

Distribusi degree centrality untuk simpul pengguna

Dalam latihan ini dan latihan berikutnya, Anda akan meninjau kembali materi dari kursus sebelumnya. Tugas Anda adalah memplot distribusi degree centrality untuk setiap partisi simpul dalam versi bipartit dari jaringan kolaborasi GitHub. Di sini, Anda akan melakukannya untuk partisi 'users'. Pada latihan berikutnya, Anda akan melakukannya untuk partisi 'projects'.

Fungsi yang telah Anda tulis sebelumnya, get_nodes_from_partition(), sudah dimuat untuk Anda. Sebagai pengingat, "degree centrality" adalah ukuran pentingnya suatu simpul, dan "distribusi degree centrality" adalah daftar skor degree centrality untuk semua simpul dalam graf. Beberapa latihan yang lalu, saat Anda membuat plot circos, kami telah menghitung degree centrality untuk Anda. Sekarang, Anda akan berlatih melakukannya sendiri!

Latihan ini merupakan bagian dari kursus

Analisis Jaringan Menengah di Python

Lihat Kursus

Instruksi latihan

  • Impor matplotlib.pyplot sebagai plt.
  • Gunakan fungsi get_nodes_from_partition() dari latihan sebelumnya untuk mendapatkan daftar bernama user_nodes yang sesuai dengan simpul 'users' dari G.
  • Dengan fungsi nx.degree_centrality(), hitung degree centrality untuk setiap simpul di G. Simpan hasilnya sebagai dcs.
  • Gunakan list comprehension untuk menghitung degree centrality bagi setiap simpul di user_nodes. Simpan hasilnya sebagai user_dcs.
    • Ingat, dcs adalah sebuah dictionary, di mana kuncinya adalah simpul. Simpul yang relevan di sini terdapat dalam user_nodes. Bagaimana Anda dapat menggunakan informasi ini untuk memperoleh degree centrality dari simpul pengguna? Gunakan n sebagai variabel iterator Anda.
  • Plot histogram distribusi degree untuk pengguna, menggunakan plt.hist() dan user_dcs.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# 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()
Edit dan Jalankan Kode