如何使用 igraph 和 R 找到顶点的边?
假设我有这个示例图,我想找到连接到顶点“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)
我可以轻松找到顶点:
V(g)[V(g)$name == 'a' ]
但我需要引用连接到顶点“a”的所有边。
Say I have this example graph, i want to find the edges connected to vertex '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)
I can easily find a vertex:
V(g)[V(g)$name == 'a' ]
But i need to reference all the edges connected to the vertex 'a'.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
请参阅有关 igraph 迭代器 的文档;特别是 from() 和 to() 函数。
在您的示例中,“a”是 V(g)[0],因此要查找连接到“a”的所有边:
结果:
See the documentation on igraph iterators; in particular the from() and to() functions.
In your example, "a" is V(g)[0], so to find all edges connected to "a":
Result:
如果您不知道顶点的索引,可以在使用 from() 函数之前使用 match() 找到它。
If you do not know the index of the vertex, you can find it using match() before using the from() function.
找到了一个更简单的版本,结合了上述两项工作,可能也很有用。
Found a simpler version combining the two efforts above that may be useful too.
我使用此函数来获取所有节点的边数:
I use this function for getting number of edges for all nodes: