Знайдіть вузли з найбільшою централізованістю за степенем
У цій вправі ви детальніше розглянете, чи є щось цікаве серед найзв'язніших студентів у мережі. Спершу ви знайдете кластер студентів із найвищими значеннями централізованості за степенем. Цей результат буде збережено для наступної вправи з побудови графіків.
Ця вправа є частиною курсу
Середній рівень Network Analysis у Python
Інструкції до вправи
- Отримайте топ-5 унікальних значень централізованості за степенем. Для цього скористайтеся функцією
sorted(), де перший аргумент — це множина (set) значень централізованості за степенем для G (адже потрібні унікальні значення), а другий аргумент —reverse=True, щоб відсортувати у спадному порядку. Щоб обмежити результат п'ятьма найвищими значеннями, додайте відповідний зріз наприкінці виразу. Також не забудьте використати.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(____)