• 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 2): Grado de los nodos y su centralidad en grafos

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

El análisis de redes es una herramienta gracias a la cual se puede estudiar las relaciones y estructuras existentes en diversos ámbitos, desde redes sociales hasta sistemas biológicos y urbanos. Una de las medidas más básicas en el análisis de redes es la centralidad de grado, que mide cuántas conexiones directas tiene un nodo dentro de un grafo. Su simplicidad la convierte en una métrica esencial para detectar nodos influyentes en una red.

En esta segunda entrega de la serie sobre igraph en R, explicaremos en detalle el concepto de centralidad de grado, su interpretación en distintos contextos, su implementación práctica en R utilizando igraph, y mostrar cómo usarlo en un caso práctico. También analizaremos sus ventajas y limitaciones en comparación con otras métricas de centralidad, cómo se puede combinar con otras medidas de análisis de redes y ejemplos de aplicaciones avanzadas en distintos sectores.

Tabla de contenidos

  • 1 Definición de Centralidad de Grado
  • 2 Interpretación en Redes Sociales y Otros Tipos de Grafos
    • 2.1 Redes Sociales
    • 2.2 Redes de Transporte
    • 2.3 Redes Biológicas
  • 3 Implementación en igraph con degree()
  • 4 Ejemplo Práctico con un Grafo de Redes Sociales
  • 5 Conclusiones

Definición de Centralidad de Grado

La centralidad de grado es una medida simple pero importante que cuantifica la importancia de un nodo dentro de una red en función de cuántas conexiones directas tiene. En términos matemáticos, el grado de un nodo v en un grafo no dirigido se expresa como: \text{grado}(v) = |{u \in V | (v,u) \in E }|, donde E es el conjunto de aristas (edges) y V es el conjunto de nodos (vértices).

Nuevo test de normalidad interactivo en el laboratorio de Analytics Lane
En Analytics Lane
Nuevo test de normalidad interactivo en el laboratorio de Analytics Lane

En un grafo dirigido, se distingue entre:

  • Grado de entrada (in-degree): número de aristas que llegan al nodo.
  • Grado de salida (out-degree): número de aristas que salen del nodo.

Cuanto mayor es el grado de un nodo, mayor es su importancia dentro de la red en términos de conectividad. Sin embargo, esta métrica por sí sola no siempre refleja la influencia global de un nodo, ya que no tiene en cuenta su posición dentro de la estructura de la red. Además, en algunas redes complejas, la centralidad de grado puede no ser suficiente para explicar patrones de interacción y difusión de información.

Interpretación en Redes Sociales y Otros Tipos de Grafos

La centralidad de grado se puede interpretar en distintos contextos:

Publicidad


Redes Sociales

En redes sociales como Bluesky, Facebook o LinkedIn, la centralidad de grado es crucial para comprender la influencia de un usuario:

  • Un usuario con un grado alto tiene muchas conexiones directas (seguidores, amigos, contactos profesionales, etc.).
  • Un alto in-degree en Bluesky o Mastodón indica que una cuenta es seguida por muchas otras, lo que sugiere una gran popularidad o autoridad.
  • Un alto out-degree indica que la cuenta sigue a muchas otras, reflejando una alta actividad o interés en la red.

Por ejemplo, en una comunidad de profesionales en LinkedIn, un usuario con un grado alto tiene muchas conexiones y puede actuar como un nodo clave en la difusión de información y oportunidades. Sin embargo, un alto grado no siempre implica influencia real, ya que la estructura de las conexiones puede ser más importante que el número total de enlaces.

Redes de Transporte

En una red de transporte, como el sistema de metro de una ciudad:

  • Un nodo con grado alto representa una estación con muchas conexiones directas (hub), como una estación central con múltiples líneas.
  • Los nodos con grado bajo pueden ser estaciones periféricas con pocas conexiones.
  • La eliminación de un nodo de alto grado podría afectar significativamente la accesibilidad y el flujo de pasajeros.

Al analizar las redes de transporte, también se pueden estudiar otros factores como la redundancia de rutas, la resiliencia del sistema ante fallos y cómo el grado de los nodos afecta la eficiencia del transporte.

Redes Biológicas

En redes de interacciones proteicas o neuronales:

  • Una proteína con un alto grado interactúa con muchas otras, lo que puede indicar una función crucial en los procesos celulares.
  • En una red neuronal, una neurona con un alto grado puede actuar como un punto clave en la transmisión de señales.

En este tipo de redes, la centralidad de grado puede combinarse con otras métricas como la centralidad de intermediación o de cercanía para obtener una visión más completa del comportamiento de la red.

Publicidad


Implementación en igraph con degree()

En igraph, la centralidad de grado se calcula con la función degree(). Veamos un ejemplo práctico:

library(igraph)

# Crear un grafo simple
g <- graph(edges = c(1,2, 1,3, 2,4, 2,5, 3,6, 5,6), directed = FALSE)

# Calcular grado de los nodos
degree(g)

Como resultado de obtiene

2 3 2 1 2 2

Lo que indica que el primer nodo tiene dos conexiones: 1--2 y 1--3, mientras que el segundo tiene tres: 1--2, 2--4 y `2–5’, y así para el resto de los nodos. En este caso, se ha creado un grafo no dirigido solo existe un tipo de grado. Por otro lado, si trabajamos con un grafo dirigido, podemos calcular el grado de entrada (in-degree) y el grado de salida (out-degree):

# Crear un grafo dirigido
g_dir <- graph(edges = c(1,2, 1,3, 2,4, 2,5, 3,6, 5,6), directed = TRUE)

# Calcular in-degree
degree(g_dir, mode = "in")

# Calcular out-degree
degree(g_dir, mode = "out")

Ahora, para el grado de entrada se obtiene:

0 1 1 1 1 2

Lo que indica para el primer nodo no existe ningúna arista que llegue al nodo, una para el resto salvo para el último nodo al que llegan dos aristas (3--6 y 5--6). Por otro lado, para el grado de salida se obtiene como resultado:

2 2 1 0 1 0

Esta medida es útil para analizar diferentes tipos de redes, desde estructuras de comunicación hasta mapas de carreteras. También podemos normalizar la centralidad de grado dividiendo por el número total de nodos menos uno, lo que permite comparar redes de diferente tamaño.

Ejemplo Práctico con un Grafo de Redes Sociales

Supongamos que tenemos una pequeña red social con seis personas y sus conexiones de amistad:

# Crear un grafo de redes sociales
red_social <- graph(edges = c("Ana","Luis", "Ana","Carlos", "Luis","Elena", "Luis","Javier", "Carlos","Marta", "Javier","Marta"), directed = FALSE)

# Mostrar el grafo
plot(red_social, vertex.size=30, vertex.label.cex=1.2, edge.width=2, main="Red Social")

# Calcular la centralidad de grado
degree(red_social)

El resultado muestra el número de conexiones que tiene cada persona dentro de la red, lo que nos permite identificar quiénes tienen mayor influencia directa. En este caso, Luis destaca con un grado de 3.

Además del grado, existen otras métricas que nos ayudan a comprender mejor la estructura de la red, como el coeficiente de clustering o la densidad de la red, que explicaremos en futuras entradas.

En concreto, el resultado de la función degree() en esta red social es:

   Ana   Luis Carlos  Elena Javier  Marta 
2 3 2 1 2 2

En la siguiente figura se muestra la representación gráfica de esta red.

Representación gráfica de la red social de ejemplo
Representación gráfica de la red social de ejemplo

Conclusiones

La centralidad de grado es una de las métricas más intuitivas y ampliamente utilizadas en análisis de redes. Su interpretación varía según el tipo de grafo, pero en general, permite identificar nodos clave dentro de una estructura de relaciones. Sin embargo, no siempre es la mejor métrica para evaluar influencia global, ya que no considera la estructura completa de la red.

En esta entrega hemos explorado su definición, cómo se interpreta en diferentes contextos y cómo implementarla en igraph. En la próxima entrega profundizaremos en la centralidad de intermediación (betweenness centrality), que mide cuántas veces un nodo actúa como puente en el camino entre otros nodos.

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

  • Nuevo test de normalidad interactivo en el laboratorio de Analytics Lane
  • Nuevo conversor de timestamp Unix en el laboratorio de Analytics Lane
  • Calculadora de Contrastes de Hipótesis: interpreta correctamente el p-valor y toma decisiones estadísticas con confianza
  • Calculadora de Tamaño del Efecto: la herramienta clave para entender cuánto importa realmente una diferencia
  • Simulador de DBSCAN: descubre cómo encontrar clusters reales (y ruido) sin fijar K
  • Conversor de Colores: convierte, compara y valida cualquier color en tiempo real
  • Analytics Lane lanza su Generador de UUIDs: identificadores únicos, seguros y listos para producción en segundos
  • 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

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

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

mayo 21, 2026 Por Daniel Rodríguez

De la Regresión Logística al Scorecard: La Transformación Matemática

mayo 19, 2026 Por Daniel Rodríguez

Noticias

Analytics Lane lanza la versión 1.1 del laboratorio con nuevas suites de CLV y Scoring

mayo 18, 2026 Por Daniel Rodríguez

Publicidad

Es tendencia

  • 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
  • Síndrome del objeto brillante en ciencia de datos: el error simétrico a los costes hundidos publicado el mayo 21, 2026 | en Ciencia de datos, Opinión
  • Truco Python: eliminar los valores duplicados de una lista en Python publicado el junio 29, 2020 | en Python
  • El método de las aproximaciones sucesivas e implementación en Python publicado el marzo 10, 2023 | en Ciencia de datos
  • Exactitud, precisión, recall… qué mide realmente cada métrica (y qué no) publicado el marzo 3, 2026 | en Ciencia de datos

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