plotting - ¿Cómo encuentro los bordes de un vértice usando igraph y R?
vertex label color igraph (4)
Consulte la documentación sobre iteradores igraph ; en particular las funciones from () y to ().
En su ejemplo, "a" es V (g) [0], así que para encontrar todos los bordes conectados a "a":
E(g) [ from(0) ]
Resultado:
[0] b -- a
[1] c -- a
[2] d -- a
Digamos que tengo este ejemplo de gráfico, quiero encontrar los bordes conectados al vértice ''a''
d <- data.frame(p1=c(''a'', ''a'', ''a'', ''b'', ''b'', ''b'', ''c'', ''c'', ''d''),
p2=c(''b'', ''c'', ''d'', ''c'', ''d'', ''e'', ''d'', ''e'', ''e''))
library(igraph)
g <- graph.data.frame(d, directed=FALSE)
print(g, e=TRUE, v=TRUE)
Puedo encontrar fácilmente un vértice:
V(g)[V(g)$name == ''a'' ]
Pero necesito hacer referencia a todos los bordes conectados al vértice ''a''.
Encontré una versión más simple que combina los dos esfuerzos anteriores que también pueden ser útiles.
E(g)[from(V(g)["name"])]
Si no conoce el índice del vértice, puede encontrarlo usando match () antes de usar la función from ().
idx <- match("a", V(g)$name)
E(g) [ from(idx) ]
Utilizo esta función para obtener el número de bordes para todos los nodos:
sapply(V(g)$name, function(x) length(E(g)[from(V(g)[x])]))