НачатьНачать бесплатно

Визуализация распределения центральности по степени для проекции студентов

В этом упражнении вы визуализируете распределение центральности по степени для проекции студентов. Это повторение двух концепций, которые вы уже изучили: центральности по степени и проекций графов.

Это упражнение является частью курса

Средний уровень сетевого анализа на 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() 
Редактировать и запускать код