这个问题与Igraph中顶点的调用有关。
假设我们有一个有向图
g<-graph(c(1:10),directed=T)
我想找到指向顶点 2 的顶点。
假设您要找到指向"顶点 1"的顶点。
为什么使用"to"条件不起作用
V(g)[to(1)]
而是这个?
V(g)[nei(1,"to")]
它对我有用?
> 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])
to
仅适用于边序列;例如,E(g)[to(1)]
为您提供指向顶点 1 的所有边。恕我直言,这是非常合乎逻辑的,因为顶点不会"指向"任何地方(边缘会),因此使用 from
或 to
是没有意义的。
此外,使用nei
的"官方"方式是nei(1, "out")
而不是nei(1, "to")
尽管"to"
也可能有效。您也可以使用outnei(1)
。
免责声明:我是igraph的作者之一,尽管我没有编写R接口,因此可能比我上面解释的原因更好。