Визуализация распределения центральности по степени для проекции студентов
В этом упражнении вы визуализируете распределение центральности по степени для проекции студентов. Это повторение двух концепций, которые вы уже изучили: центральности по степени и проекций графов.
Это упражнение является частью курса
Средний уровень сетевого анализа на Python
Инструкции к упражнению
- Получите узлы раздела
'student'и сохраните их в списокstudent_nodes.- Используйте списковое включение: итерируйтесь по всем узлам графа
G(включая метаданные) и проверяйте, что ключ'bipartite'словаряdравен'student'.
- Используйте списковое включение: итерируйтесь по всем узлам графа
- Создайте проекцию узлов студентов в виде графа
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()