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

Поиск узлов с наибольшей центральностью по степени

В этом упражнении вы проведёте более детальный анализ и выясните, есть ли что-то примечательное в наиболее связанных студентах сети. Для начала вы найдёте группу студентов с наибольшими значениями центральности по степени. Этот результат понадобится вам в следующем упражнении по визуализации.

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

Средний уровень сетевого анализа на Python

Посмотреть курс

Инструкции к упражнению

  • Получите 5 наибольших уникальных значений центральности по степени. Для этого используйте функцию sorted(), где первый аргумент — множество значений центральности по степени для G (чтобы получить уникальные значения), а второй аргумент — reverse=True, чтобы отсортировать результат по убыванию. Добавьте подходящий срез в конец выражения, чтобы ограничиться топ-5 значениями. Не забудьте применить .values() к результату функции центральности по степени!
  • Создайте список узлов с 5 наибольшими значениями центральности по степени. Для этого:
    • Переберите словарь значений центральности по степени, используя метод .items() на nx.degree_centrality(G).
    • Если dc входит в top_dcs, добавьте узел n в список top_connected.
  • Выведите количество узлов, имеющих одинаковые топ-5 значений центральности по степени (top_connected), с помощью len().

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Get the top 5 unique degree centrality scores: top_dcs
top_dcs = ____(set(____), reverse=True)[____:____]

# Create list of nodes that have the top 5 highest overall degree centralities
top_connected = []
for n, dc in ____:
    if ____ in ____:
        ____
        
# Print the number of nodes that share the top 5 degree centrality scores
print(____)
Редактировать и запускать код