Візуалізуйте розподіл центральності ступеня для проєкції студентів
У цій вправі ви візуалізуєте розподіл центральності ступеня для проєкції студентів. Це підсумок двох тем, які ви вже вивчили: центральність ступеня та проєкції.
Ця вправа є частиною курсу
Середній рівень Network Analysis у Python
Інструкції до вправи
- Отримайте вузли секції
'student'у списокstudent_nodes.- Зробіть це за допомогою list comprehension: ітеруйте всі вузли
G(включно з метаданими) та перевіряйте, чи ключове слово'bipartite'уdдорівнює'student'.
- Зробіть це за допомогою list comprehension: ітеруйте всі вузли
- Створіть проєкцію на вузли студентів як граф
G_students. Для цього скористайтеся функцієюnx.bipartite.projected_graph(). Обов'язково вкажіть іменований аргументnodes=student_nodes. - Обчисліть центральність ступеня для
G_studentsза допомогоюnx.degree_centrality(). Збережіть результат у зміннійdcs. - Побудуйте гістограму значень центральності ступеня.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Import necessary modules
import matplotlib.pyplot as plt
import networkx as nx
# Get the student partition's nodes: student_nodes
student_nodes = [n for n, d in ____ if d['____'] == '____']
# Create the students nodes projection as a graph: G_students
G_students = ____
# Calculate the degree centrality using nx.degree_centrality: dcs
dcs = ____
# Plot the histogram of degree centrality values
plt.hist(list(____))
plt.yscale('log')
plt.show()