Betweenness
Otra medida de la importancia de un vértice es su betweenness. Es un índice de con qué frecuencia el vértice se sitúa en los caminos más cortos entre dos vértices cualesquiera de la red. Puede entenderse como lo crítico que es el vértice para el flujo de información a través de la red. Las personas con una betweenness alta actúan como puentes clave entre distintas partes de la red. En nuestra red de transmisión del sarampión, los vértices con betweenness alta son aquellos niños que fueron centrales para propagar la enfermedad a otras partes de la red. En este ejercicio, identificarás la puntuación de betweenness de cada vértice y luego harás un nuevo gráfico de la red ajustando el tamaño del vértice según su betweenness para resaltar estos vértices clave.
Este ejercicio forma parte del curso
Análisis de redes en R
Instrucciones del ejercicio
- Calcula la betweenness de cada vértice usando la función
betweenness()sobre el objeto grafog. Asegúrate de que las puntuaciones se calculan para una red dirigida. Los resultados de esta función se asignarán ag.b. - Examina visualmente la distribución de las puntuaciones de betweenness usando la función
hist(). - Usa
plot()para crear un gráfico de la red basado en las puntuaciones de betweenness. Las etiquetas de los vértices deben ponerse enNApara que no aparezcan. El atributo de tamaño de los vértices debe ser uno más la raíz cuadrada de las puntuaciones de betweenness que están en el objetog.b. Dada la enorme disparidad en las puntuaciones de betweenness de esta red, normalizar las puntuaciones de este modo garantiza que todos los nodos se puedan ver y que su importancia relativa siga siendo identificable.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
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))