Trova i nodi con le centralità di grado più alte
In questo esercizio, andrai più a fondo per vedere se c'è qualcosa di interessante tra gli studenti più connessi nella rete. Per iniziare, troverai il gruppo di studenti con le centralità di grado più alte. Questo risultato verrà salvato per il prossimo esercizio di visualizzazione.
Questo esercizio fa parte del corso
Analisi di reti intermedia in Python
Istruzioni dell'esercizio
- Ottieni le 5 punteggi di centralità di grado unici più alti. Per farlo, usa la funzione
sorted(), in cui il primo argomento è l'insieme (set) dei valori di centralità di grado di G (perché vuoi centralità di grado uniche), e il secondo argomento èreverse=True, per assicurarti un ordinamento decrescente. Per limitare i risultati ai 5 punteggi più alti, aggiungi uno slicing appropriato alla fine dell'istruzione. Ricorda anche di usare.values()sui risultati della centralità di grado restituiti! - Crea l'elenco dei nodi che hanno le 5 centralità di grado complessive più alte. Per farlo:
- Itera sul dizionario dei punteggi di centralità di grado usando il metodo
.items()sunx.degree_centrality(G). - Se
dcè intop_dcs, allora aggiungi il nodonalla listatop_connected.
- Itera sul dizionario dei punteggi di centralità di grado usando il metodo
- Stampa il numero di nodi che condividono le 5 centralità di grado più alte (
top_connected) usandolen().
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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(____)