Znajdź węzły o najwyższych centralnościach stopnia
W tym ćwiczeniu przyjrzysz się bliżej, czy jest coś interesującego w najbardziej połączonych studentach w sieci. Na początek znajdziesz grupę studentów o najwyższych centralnościach stopnia. Wynik zostanie zapisany i wykorzystany w kolejnym ćwiczeniu z wizualizacją.
To ćwiczenie jest częścią kursu
Analiza sieci w Pythonie – poziom średniozaawansowany
Instrukcje do ćwiczenia
- Pobierz 5 najwyższych unikalnych wartości centralności stopnia. Użyj do tego funkcji
sorted(), w której pierwszym argumentem jest zbiór wartości centralności stopnia grafu G (ponieważ zależy ci na unikalnych wartościach), a drugim argumentem jestreverse=True, aby wyniki były posortowane malejąco. Ogranicz wyniki do 5 najwyższych wartości, dodając odpowiednie cięcie na końcu wyrażenia. Pamiętaj też, aby użyć.values()na zwróconych wynikach centralności stopnia! - Utwórz listę węzłów, które mają 5 najwyższych ogólnych centralności stopnia. W tym celu:
- Iteruj po słowniku wartości centralności stopnia, używając metody
.items()nanx.degree_centrality(G). - Jeśli
dcznajduje się wtop_dcs, dołącz węzełndo listytop_connected.
- Iteruj po słowniku wartości centralności stopnia, używając metody
- Wyświetl liczbę węzłów współdzielących 5 najwyższych wartości centralności stopnia (
top_connected), używająclen().
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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(____)