Knoten mit den höchsten Degree-Centralities finden
In dieser Übung schaust du dir genauer an, ob es bei den am besten vernetzten Studierenden im Netzwerk etwas Auffälliges gibt. Zuerst findest du die Gruppe von Studierenden mit den höchsten Degree-Centralities. Dieses Ergebnis wird für die nächste Plot-Übung gespeichert.
Diese Übung ist Teil des Kurses
Fortgeschrittene Netzwerkanalyse in Python
Anleitung zur Übung
- Ermittle die 5 höchsten, eindeutigen Degree-Centrality-Werte. Verwende dazu die Funktion
sorted(), wobei das erste Argument die Menge der Degree-Centrality-Werte von G ist (weil du eindeutige Werte willst) und das zweite Argumentreverse=True, damit absteigend sortiert wird. Um die Ergebnisse auf die Top-5-Werte zu begrenzen, füge am Ende der Anweisung ein passendes Slicing hinzu. Denk auch daran,.values()auf den zurückgegebenen Degree-Centrality-Ergebnissen zu verwenden! - Erstelle eine Liste der Knoten, die zu den 5 höchsten Degree-Centralities insgesamt gehören. Gehe dazu so vor:
- Iteriere über das Dictionary der Degree-Centrality-Werte mit der Methode
.items()aufnx.degree_centrality(G). - Wenn
dcintop_dcsenthalten ist, hänge den Knotennan die Listetop_connectedan.
- Iteriere über das Dictionary der Degree-Centrality-Werte mit der Methode
- Gib die Anzahl der Knoten aus, die die Top-5-Degree-Centrality-Werte teilen (
top_connected), indem dulen()verwendest.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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(____)