在Igraph中调用顶点

时间:2012-08-14 00:45:00

标签: r igraph

这个问题涉及在Igraph中调用顶点。

让我们说我们有一个有向图

  

g<-graph(c(1:10),directed=T)

我希望找到指向顶点2的顶点。

假设您想要找到指向“顶点1”的顶点。

为什么不使用“to”条件工作

  

V(g)[to(1)]

而是这个?

  

V(g)[nei(1,"to")]

2 个答案:

答案 0 :(得分:1)

对我有用吗?

> g<-graph(c(1:10),directed=T)
> V(g)[to(1)]
Vertex sequence:
[1] 2
> V(g)[nei(1,"to")]
Vertex sequence:
[1] 2

我个人喜欢使用边缘清单。或者你可以这样做:

# Get edgelist:
E <- get.edgelist(g)

# To 1 in directed graph:
E[E[,2]==1,1]

# Connected to 1 in undirected graph:
c(E[E[,2]==1,1],E[E[,1]==1,2])

答案 1 :(得分:0)

to仅适用于边序列;例如,E(g)[to(1)]为你提供指向顶点1的所有边。恕我直言这是非常合乎逻辑的,因为顶点不会“指向”任何地方(边缘都是这样)所以使用fromto

此外,使用nei的“官方”方式是nei(1, "out")而不是nei(1, "to"),尽管"to"可能也是如此。您也可以使用outnei(1)

免责声明:我是igraph的作者之一,虽然我没有写R接口,所以可能有一个比我上面解释的更好的理由。