IniziaInizia gratis

Sottografi II

Nel precedente esercizio ti abbiamo dato un elenco di nodi di cui ti abbiamo chiesto di estrarre i vicini.

Proviamo un altro esercizio in cui estrai i nodi che hanno una certa proprietà nei metadati e i loro vicini. Questo dovrebbe richiamare quanto hai imparato sull'uso delle list comprehension per trovare i nodi. L'esercizio ti aiuterà anche a comporre funzioni che hai già utilizzato in precedenza.

Questo esercizio fa parte del corso

Introduzione all'analisi delle reti in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Usando una list comprehension, estrai i nodi che hanno il metadato 'occupation' pari a 'celebrity' insieme ai loro vicini:
    • L'espressione di output della list comprehension è n, e ci sono due variabili iteratore: n e d. L'iterabile è la lista dei nodi di T (inclusi i metadati, che puoi specificare con data=True) e l'espressione condizionale verifica se la chiave 'occupation' del dizionario dei metadati d è uguale a 'celebrity'.
  • Inseriscili in un nuovo sottografo chiamato T_sub. Per farlo:
    • Itera sui nodi, calcola i vicini di ciascun nodo e aggiungili all'insieme dei nodi nodeset usando il metodo .union(). Quest'ultima parte è già stata fatta per te.
    • Usa nodeset insieme al metodo T.subgraph() per calcolare T_sub.
  • Disegna T_sub sullo schermo.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Extract the nodes of interest: nodes
nodes = [n for n, d in ____ if ____ == ____]

# Create the set of nodes: nodeset
nodeset = set(nodes)

# Iterate over nodes
for n in ____:

    # Compute the neighbors of n: nbrs
    nbrs = ____

    # Compute the union of nodeset and nbrs: nodeset
    nodeset = nodeset.union(nbrs)

# Compute the subgraph using nodeset: T_sub
T_sub = ____

# Draw T_sub to the screen
____
plt.show()
Modifica ed esegui il codice