IniziaInizia gratis

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

Visualizza il corso

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() su nx.degree_centrality(G).
    • Se dc è in top_dcs, allora aggiungi il nodo n alla lista top_connected.
  • Stampa il numero di nodi che condividono le 5 centralità di grado più alte (top_connected) usando len().

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(____)
Modifica ed esegui il codice