ComeçarComece de graça

Visualizando a conectividade

Aqui, você vai visualizar como a conectividade dos nós mais conectados muda ao longo do tempo. A lista de valores mais conectados, top_connected, do exercício anterior já foi carregada.

Lembra do defaultdict que você usou no Capítulo 1? Você vai usar outro defaultdict neste exercício! Como o Eric mencionou no vídeo, um defaultdict é preferível aqui, pois um dicionário Python comum geraria um KeyError se você tentasse obter um item com uma chave que não está presente no dicionário.

Este exercício vai usar loops for aninhados. Ou seja, você vai usar um for dentro de outro.

Este exercício faz parte do curso

Análise de Redes Intermediária em Python

Ver curso

Instruções do exercício

  • Inicialize um defaultdict de listas vazias chamado connectivity.
  • Faça a iteração sobre top_connected usando um loop for e, no corpo desse for externo, itere novamente sobre Gs. Dentro desse loop aninhado:
    • As chaves de connectivity devem ser os nós n em top_connected, e os valores devem ser a lista de pontuações de conectividade. Portanto, você deve adicionar len(list(G.neighbors(n))) a connectivity[n].
  • Itere sobre connectivity usando .items() e plote a conectividade de cada nó passando conn para plt.plot().

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Import necessary modules
import matplotlib.pyplot as plt
from collections import defaultdict

# Create a defaultdict in which the keys are nodes and the values are a list of connectivity scores over time
connectivity = ____
for n in ____:
    for g in ____:
        connectivity[____].____(len(____))

# Plot the connectivity for each node
fig = plt.figure() 
for n, conn in ____: 
    plt.plot(____, label=n) 
plt.legend()  
plt.show()
Editar e executar o código