• Saltar al contenido principal
  • Skip to secondary menu
  • Saltar a la barra lateral principal
  • Saltar al pie de página
  • Inicio
  • Secciones
    • Ciencia de datos
    • Criptografía
    • Herramientas
    • Machine Learning
    • Noticias
    • Opinión
    • Productividad
    • Programación
      • JavaScript
      • Julia
      • Matlab
      • Python
      • R
  • Programación
    • JavaScript
    • Julia
    • Matlab
    • Python
    • R
  • Laboratorio
    • Estadística
      • Calculadora del Tamaño Muestral en Encuestas
      • Calculadora de estadísticos descriptivos
      • Test de normalidad
      • Calculadora de contrastes de hipotesis
      • Calculadora de tamano del efecto
      • Simulador de Regresión Lineal con Ruido
      • Visualizador de PCA
      • Visualizador de Series Temporales
      • Simulador de Regresión Logística
      • Simulador de K-Means
      • Simulador de DBSCAN
      • Detector de la Ley de Benford
    • Probabilidad
      • Calculadora de Probabilidad de Distribuciones
      • Calculadora de Probabilidades de Lotería
      • Simulador del Problema de Monty Hall
      • Simulador de la Estrategia Martingala
    • Finanzas
      • Calculadora de Préstamos e Hipotecas
      • Conversor TIN ↔ TAE
      • Calculadora DCA con ajuste por inflación
      • Calculadora XIRR con Flujos Irregulares
      • Simulador FIRE (Financial Independence, Retire Early)
    • Negocios
      • CLV
      • Scoring
    • Herramientas
      • Formateador / Minificador de JSON
      • Conversor CSV ↔ JSON
      • Comparador y Formateador de Texto y JSON
      • Formateador y Tester de Expresiones Regulares
      • Inspector de JWT
      • Generador y verificador de hashes
      • Codificador / Decodificador Base64 y URL
      • Conversor de bases numericas
      • Conversor de Timestamp Unix
      • Conversor de colores
      • Generador de UUIDs
    • Juegos
      • Tres en Raya
      • Nim con Q-Learning
    • Más
      • Método D’Hondt
      • Generador de Contraseñas Seguras
  • Noticias
  • Boletín
  • Contacto
  • Tienda
    • Libros
    • Equipamiento de oficina
    • Equipamiento en movilidad

Analytics Lane

Ciencia e ingeniería de datos aplicada

  • Ciencia de datos
  • Machine Learning
  • IA Generativa
  • Python
  • Pandas
  • NumPy
  • R
  • Excel

Introducción a igraph en R (Parte 10): Resumen y comparativa de centralidades

mayo 21, 2025 Por Daniel Rodríguez Deja un comentario
Tiempo de lectura: 6 minutos

A lo largo de las entregas anteriores, hemos explorado diversas métricas de centralidad fundamentales para el análisis de redes complejas. Desde métricas básicas como la centralidad de grado hasta algoritmos más sofisticados como PageRank y HITS, cada enfoque ofrece una perspectiva distinta sobre la relevancia y el rol de los nodos dentro de una red.

En esta última entrega de la serie, realizaremos un repaso general y una comparativa entre las principales métricas de centralidad. Analizaremos sus características, ventajas y limitaciones, y discutiremos en qué contextos resulta más apropiado emplear cada una. Además, aplicaremos todo lo aprendido en un ejemplo final utilizando una red compleja en igraph para ilustrar su uso práctico.

Con esta revisión integral de las métricas de centralidad, no solo consolidaremos el conocimiento adquirido a lo largo de la serie, sino que también estaremos mejor preparados para seleccionar y aplicar la métrica adecuada en función del problema y la estructura de la red analizada.

Comparación entre las métricas de centralidad

A continuación, resumimos las principales métricas de centralidad junto con sus características más relevantes:

MétricaDescripciónVentajasLimitaciones
Centralidad de GradoNúmero de conexiones directas de un nodo.Fácil de calcular e interpretar.No refleja la posición estratégica en la red.
Centralidad de IntermediaciónMide cuántos caminos más cortos pasan por un nodo.Identifica nodos clave para la comunicación.Alto coste computacional en redes grandes.
Centralidad de CercaníaDistancia media de un nodo a todos los demás.Detecta nodos con acceso eficiente a otros.Pierde sentido en redes no conexas.
Centralidad de AutovectorEvalúa la importancia de un nodo en función de la importancia de sus vecinos.Captura efectos de influencia en cascada.Puede ser dominada por componentes principales.
Centralidad de KatzVariante de la centralidad de autovector que suma una constante para considerar caminos indirectos.Distingue nodos relevantes en redes dispersas.Requiere ajustar parámetros adecuadamente.
Centralidad de BonacichGeneraliza Katz introduciendo un parámetro para influencias positivas o negativas.Modela redes con relaciones cooperativas o competitivas.Sensible a la elección de los parámetros.
PageRankEvalúa la importancia de un nodo ponderando los enlaces entrantes.Muy efectiva en redes dirigidas (como la web).Menos interpretable en redes no dirigidas.
HITS (Hubs y Autoridades)Distingue nodos como “fuentes” o “referencias” de información.Útil en contextos de roles diferenciados.Sensible a la estructura de la red y requiere interpretación cuidadosa.

Cada una de estas métricas capta diferentes aspectos de la centralidad en una red, y su elección depende en gran medida del tipo de red y del objetivo específico del análisis.

1200 publicaciones en Analytics Lane
En Analytics Lane
1200 publicaciones en Analytics Lane

Cuándo usar cada métrica según el tipo de grafo

La elección de la métrica de centralidad más adecuada varía según la estructura y dinámica de la red:

  • Redes sociales: La centralidad de grado ayuda a identificar a los individuos más conectados, mientras que la centralidad de intermediación detecta intermediarios clave en la difusión de información.
  • Redes de transporte: La centralidad de cercanía es esencial para optimizar rutas y reducir tiempos de viaje.
  • Redes dirigidas (como la web): PageRank y HITS son fundamentales para medir la importancia de los nodos considerando la direccionalidad de las conexiones.
  • Redes académicas o de citaciones: HITS permite distinguir entre documentos influyentes (autoridades) y documentos que consolidan información de múltiples fuentes (hubs).
  • Redes de influencia o contagio: La centralidad de autovector identifica nodos importantes por su conexión con otros nodos también influyentes.
  • Redes dispersas o con influencia indirecta: La centralidad de Katz resulta útil para considerar efectos acumulativos de largo alcance.
  • Redes con relaciones competitivas o colaborativas: La centralidad de Bonacich permite modelar tanto influencias positivas como negativas ajustando sus parámetros.

Publicidad


Ejemplo final con una red compleja

A continuación, aplicaremos varias métricas de centralidad sobre una red compleja generada aleatoriamente utilizando igraph en R. Esto nos permitirá comparar los resultados y observar cómo cada métrica destaca distintos nodos de acuerdo con su definición.

Para ello se puede usar el siguiente código en R:

library(igraph)

# Crear una red compleja simulada
set.seed(123)  # Para reproducibilidad
g <- erdos.renyi.game(15, p = 0.3, directed = TRUE)

# Asignar nombres a los nodos
V(g)$name <- paste0("N", 1:vcount(g))

# Calcular diferentes métricas de centralidad
degree_centrality <- degree(g, mode = "all")
betweenness_centrality <- betweenness(g, directed = TRUE)
closeness_centrality <- closeness(g, mode = "all", normalized = TRUE)
eigenvector_centrality <- eigen_centrality(g, directed = TRUE, scale = TRUE)$vector
katz_centrality <- authority_score(g, scale = TRUE)$vector  # Aproximación simple
pagerank_centrality <- page_rank(g, directed = TRUE)$vector
hits_authority <- authority_score(g)$vector
hits_hub <- hub_score(g)$vector

# Bonacich Centrality (aproximación simple)
alpha <- 0.5
adjacency <- as_adjacency_matrix(g, sparse = FALSE)
identity_mat <- diag(nrow(adjacency))
bonacich_centrality <- solve(identity_mat - alpha * adjacency) %*% rep(1, nrow(adjacency))
bonacich_centrality <- as.vector(bonacich_centrality)

# Crear un dataframe de centralidades
centralities <- data.frame(
  Nodo = V(g)$name,
  Grado = degree_centrality,
  Intermediación = round(betweenness_centrality, 2),
  Cercanía = round(closeness_centrality, 3),
  Autovector = round(eigenvector_centrality, 3),
  Katz = round(katz_centrality, 3),
  PageRank = round(pagerank_centrality, 3),
  HITS_Autoridad = round(hits_authority, 3),
  HITS_Hub = round(hits_hub, 3),
  Bonacich = round(bonacich_centrality, 3)
)

# Mostrar centralidades
print(centralities)

# Visualizar la red
V(g)$size <- 8 + degree_centrality * 2
V(g)$label.cex <- 1
plot(g, vertex.label.color = "black", vertex.label.family = "sans",
     edge.arrow.size = 0.4, main = "Red Compleja con Diferentes Centralidades")

Lo que produce como salida:

    Nodo Grado Intermediación Cercanía Autovector  Katz PageRank HITS_Autoridad HITS_Hub Bonacich
N1 N1 9 10.32 0.667 0.824 0.886 0.077 0.886 0.566 -0.809
N2 N2 4 1.00 0.560 0.133 0.126 0.023 0.126 0.473 0.079
N3 N3 9 12.73 0.667 0.769 0.711 0.081 0.711 0.617 -1.071
N4 N4 9 14.70 0.667 0.632 0.549 0.064 0.549 0.746 -1.276
N5 N5 7 9.94 0.636 0.572 0.452 0.059 0.452 0.697 -0.493
N6 N6 11 27.31 0.737 0.747 0.805 0.078 0.805 0.723 -1.353
N7 N7 10 18.69 0.700 0.675 0.789 0.079 0.789 0.461 -0.662
N8 N8 8 4.45 0.609 0.792 0.856 0.076 0.856 0.458 -0.685
N9 N9 7 4.93 0.667 0.511 0.544 0.047 0.544 0.557 -1.029
N10 N10 9 21.07 0.700 0.570 0.807 0.060 0.807 0.530 -0.108
N11 N11 10 15.15 0.667 1.000 1.000 0.100 1.000 0.585 -0.863
N12 N12 9 11.00 0.667 0.674 0.524 0.075 0.524 0.857 -1.435
N13 N13 9 11.58 0.667 0.784 0.788 0.076 0.788 0.561 -0.826
N14 N14 10 17.93 0.778 0.666 0.634 0.068 0.634 1.000 -1.160
N15 N15 5 3.19 0.538 0.331 0.282 0.038 0.282 0.492 -0.062

Además de la gráfica:

Visualización de una red compleja dirigida generada en R con igraph, mostrando el tamaño de los nodos proporcional a su centralidad de grado y etiquetas personalizadas.
Representación de una red compleja dirigida. El tamaño de cada nodo es proporcional a su centralidad de grado. Las etiquetas permiten identificar los nodos más destacados según su conectividad.

Interpretación de resultados

Cada métrica resalta diferentes aspectos de los nodos en la red:

  • Centralidad de Grado: Nodos con más conexiones directas aparecen más destacados en tamaño en la visualización.
  • Centralidad de Intermediación: Nodos con alta intermediación no necesariamente tienen muchos enlaces, pero controlan el flujo de información entre diferentes partes de la red.
  • Centralidad de Cercanía: Identifica nodos que pueden llegar rápidamente al resto de nodos; ideales para roles de coordinación o difusión rápida.
  • Centralidad de Autovector: Favorece nodos que están conectados a otros nodos importantes, destacando influencias en cadena.
  • Centralidad de Katz: Similar a autovector, pero además premia nodos por conexiones más indirectas; útil en redes donde la influencia disminuye con la distancia.
  • PageRank: Favorece nodos que reciben enlaces de otros nodos relevantes; ideal para estructuras dirigidas como páginas web.
  • HITS:
    • Autoridades son nodos que son referenciados por buenos hubs.
    • Hubs son nodos que apuntan hacia buenas autoridades.
  • Centralidad de Bonacich: Introduce un parámetro para modelar relaciones positivas o negativas, extendiendo la idea de influencia contextual.

La elección de la métrica adecuada depende del tipo de red y de lo que queramos medir: popularidad local, control del flujo, influencia global o rol específico dentro de la estructura.

Conclusiones

El análisis de redes sociales y de información exige seleccionar cuidadosamente la métrica de centralidad adecuada según el objetivo del estudio. Algunas métricas, como la centralidad de grado, destacan la conectividad directa de los nodos, mientras que otras, como la intermediación, la cercanía, PageRank o HITS, capturan formas más complejas de influencia e importancia estructural.

En esta última entrega, hemos resumido, comparado y aplicado las principales métricas de centralidad en un ejemplo práctico, permitiéndonos observar sus diferencias y complementariedades en redes reales.

Con ello, concluimos nuestra serie dedicada a la centralidad en redes utilizando igraph en R. A lo largo de estas semanas, hemos aprendido a calcular diferentes métricas, interpretar sus significados y elegir la más adecuada según el tipo de red y el contexto analítico.

Muchas gracias por acompañarnos en este recorrido. ¡Nos vemos en futuras publicaciones!

Si te ha interesado esta serie, te invitamos a suscribirte a nuestro boletín de noticias o seguirnos en nuestras redes sociales (en el panel lateral). Así no te perderás futuros contenidos.

Nota: La imagen de este artículo fue generada utilizando un modelo de inteligencia artificial.

¿Te ha parecido de utilidad el contenido?

¡Puntúalo entre una y cinco estrellas!

Puntuación promedio 0 / 5. Votos emitidos: 0

Ya que has encontrado útil este contenido...

¡Síguenos en redes sociales!

¡Siento que este contenido no te haya sido útil!

¡Déjame mejorar este contenido!

Dime, ¿cómo puedo mejorar este contenido?

Publicidad


Publicaciones relacionadas

  • 1200 publicaciones en Analytics Lane
  • Analytics Lane lanza su Conversor TIN ↔ TAE: la herramienta definitiva para entender el coste real de depósitos, préstamos e hipotecas
  • Analytics Lane lanza su Conversor de Bases Numéricas: entiende cómo trabajan los ordenadores a nivel de bits
  • Analytics Lane lanza su Visualizador de Series Temporales: entiende tendencia, estacionalidad y ruido de forma visual e interactiva
  • Analytics Lane lanza un nuevo Formateador y Tester de Expresiones Regulares para desarrolladores
  • Analytics Lane lanza un Conversor CSV ↔ JSON para transformar datos en tiempo real
  • Analytics Lane lanza la versión 1.1 del laboratorio con nuevas suites de CLV y Scoring
  • Analytics Lane lanza una Calculadora de Rentabilidad con Flujos Irregulares basada en TIR (XIRR)
  • ¡Analytics Lane cumple ocho años!

Publicado en: R Etiquetado como: Análisis de redes, igraph

Interacciones con los lectores

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

I accept the Terms and Conditions and the Privacy Policy

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Barra lateral principal

Suscríbete a nuestro boletín

Suscríbete al boletín semanal para estar al día de todas las publicaciones.

Política de Privacidad

Analytics Lane en redes sociales

  • Amazon
  • Bluesky
  • Facebook
  • GitHub
  • Instagram
  • Mastodon
  • Pinterest
  • RSS
  • Telegram
  • Tumblr
  • Twitter
  • YouTube

Publicidad

Entradas recientes

Ley de Benford: cómo detectar datos manipulados con ejemplos reales

mayo 28, 2026 Por Daniel Rodríguez

Subplots en Matplotlib: cómo organizar múltiples gráficos en una sola figura

mayo 26, 2026 Por Daniel Rodríguez

Síndrome del objeto brillante en ciencia de datos: el error simétrico a los costes hundidos

mayo 21, 2026 Por Daniel Rodríguez

Publicidad

Es tendencia

  • Creación de gráficos de barras y gráficos de columnas con Seaborn publicado el julio 18, 2023 | en Python
  • Truco Python: eliminar los valores duplicados de una lista en Python publicado el junio 29, 2020 | en Python
  • ¿Cómo eliminar columnas o filas multi-índice en un dataframe de Pandas? publicado el septiembre 20, 2021 | en Python
  • Método del codo (Elbow method) para seleccionar el número óptimo de clústeres en K-means publicado el junio 9, 2023 | en Ciencia de datos
  • Probabilidad básica: cómo entender el azar en nuestra vida diaria publicado el junio 24, 2025 | en Ciencia de datos, Opinión

Publicidad

Lo mejor valorado

4.9 (24)

Seleccionar filas y columnas en Pandas con iloc y loc

4.6 (16)

Archivos JSON con Python: lectura y escritura

4.4 (14)

Ordenación de diccionarios en Python mediante clave o valor

4.7 (13)

Operaciones de filtrado de DataFrame con Pandas en base a los valores de las columnas

4.1 (11)

Aplicar el método D’Hondt en Excel

Comentarios recientes

  • bif en JSON en bases de datos: cuándo es buena idea y cuándo no
  • bif en Cómo desinstalar Oracle Database 19c en Windows
  • M. Pilar en Cómo eliminar las noticias en Windows 11 y recuperar tu concentración
  • Daniel Rodríguez en Probabilidad básica: cómo entender el azar en nuestra vida diaria
  • Pepe en Probabilidad básica: cómo entender el azar en nuestra vida diaria

Publicidad


Footer

Analytics Lane

  • Acerca de Analytics Lane
  • Boletín de noticias
  • Contacto
  • Libros
  • Lo más popular
  • Noticias
  • Tienda
  • Tiendas afiliadas

Secciones

  • Ciencia de datos
  • Criptografía
  • Herramientas
  • Machine Learning
  • Opinión
  • Productividad
  • Programación
  • Reseñas

Sobre de Analytics Lane

En Analytics Lane tratamos de explicar los principales conceptos de la ciencia e ingeniería de datos con un enfoque práctico. Los principales temas tratados son ciencia de datos, ingeniería de datos, inteligencia artificial, machine learning, deep learning y criptografía. Además, también se habla de los principales lenguajes de programación y herramientas utilizadas por los científicos e ingenieros de datos.

Copyright © 2018-2026 Analytics Lane ·Términos y condiciones ·Política de Cookies ·Política de Privacidad ·Herramientas de privacidad ·Contacto