ComeçarComece de graça

Betweenness

Outra medida da importância de um vértice é sua betweenness. Esse índice indica com que frequência o vértice está nos caminhos mais curtos entre quaisquer dois vértices da rede. Você pode pensar nisso como o quão crítico o vértice é para o fluxo de informação através da rede. Indivíduos com betweenness alta são pontes-chave entre diferentes partes da rede. No nosso grafo de transmissão de sarampo, vértices com betweenness alta são aquelas crianças que foram centrais para espalhar a doença para outras partes da rede. Neste exercício, você vai identificar a pontuação de betweenness de cada vértice e, em seguida, criar um novo gráfico da rede ajustando o tamanho dos vértices pela sua betweenness para destacar esses vértices-chave.

Este exercício faz parte do curso

Network Analysis in R

Ver curso

Instruções do exercício

  • Calcule a betweenness de cada vértice usando a função betweenness() no objeto de grafo g. Garanta que as pontuações sejam calculadas para uma rede dirigida. Os resultados dessa função serão atribuídos a g.b.
  • Examine visualmente a distribuição das pontuações de betweenness usando a função hist().
  • Use plot() para criar um gráfico da rede com base nas pontuações de betweenness. Os rótulos dos vértices devem ser definidos como NA para que não apareçam. O atributo de tamanho dos vértices deve ser um mais a raiz quadrada das pontuações de betweenness que estão no objeto g.b. Dada a grande disparidade nas pontuações de betweenness nesta rede, normalizar as pontuações dessa maneira garante que todos os nós possam ser visualizados, mas sua importância relativa continue identificável.

Exercício interativo prático

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

library(igraph)

# Calculate betweenness of each vertex
g.b <- ___(g, directed = ___)

# Show histogram of vertex betweenness
___(___, breaks = 80)

# Create plot with vertex size determined by betweenness score
___(g, 
     vertex.label = ___,
     edge.color = 'black',
     vertex.size = sqrt(___)+1,
     edge.arrow.size = 0.05,
     layout = layout_nicely(g))
Editar e executar o código