[英]igraph in R: error with get.shortest.paths but not with shortest.paths
[英]Returning individual vertices of get.shortest.paths() in R
我使用igraph包创建了一个随机(Erdos-Renyi)图,其中p = 0.2,R中有10个节点,如下所示:
library(igraph)
graph <- erdos.renyi.game(10, 0.2, type = c("gnp", "gnm"), directed = FALSE,
loops = FALSE)
我发现图的中心节点和叶节点是这样的:
centralNode <- which(degree(graph) %in% c(max(degree(graph))))
leafNodes <- which(degree(graph) %in% c(1))
我发现从中央节点到第一个叶节点的最短路径是这样的:
sp <- get.shortest.paths(graph, centralNode, leafNodes[1])
并可以得到类似的信息(如果1是centralNode
而4是leafNodes[1]
:
[[1]]
[1] 1 2 9 4
我希望能够访问从centralNode
到leafNodes[1]
的最短路径中的每个顶点。
我尝试这样做,但不断出现这些错误:
sp$2
Error: unexpected numeric constant in "sp$2"
sp$[[1]][2]
Error: unexpected '[[' in "sp$[["
sp$1[2]
Error: unexpected numeric constant in "sp$1"
sp$[1][2]
Error: unexpected '[' in "sp$["
我不确定如何单独返回每个顶点,或者只选择其中一个。 我希望这是有道理的。
任何帮助将非常感激。 谢谢
sp
只是一个标准列表。 因此, sp[[1]]
等将只获取向量。
但是,子集图形对象可能更有意义。 像这样:
V(graph)[sp[[1]]]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.