get.all.shortest.paths $nrgeo 上的帮助文件

get.all.shortest.paths help file on $nrgeo

我正在尝试查找给定两个顶点之间的所有最短路径上特定顶点的出现次数。为此,我在 R 中使用 igraph 包。我一直在使用 get.all.shortest.paths() 下图

g <- graph(c(1,2,1,3,2,4,3,4,3,5,4,6,5,6,6,7), directed = F)

我遇到的问题是当我 运行 get.all.shortest.paths(g,2,3) 我得到:

$res
$res[[1]]
+ 3/7 vertices:
[1] 2 4 3

$res[[2]]
+ 3/7 vertices:
[1] 2 1 3

$nrgeo
[1] 1 1 2 1 0 1 0

我假设 $nrgeo 是从顶点 2 到 3 的所有最短路径中顶点出现的次数。(我找不到该函数的帮助文件,所以我不确定是什么$nrgeo 正是。)

但是,顶点2和顶点3之间没有最短路径包含顶点6,顶点2实现了两次,而不是一次。

我错过了什么吗?

我相信 nrgeo 是 Djikstra's algorithm 值的合成向量,用于查找最短路径。这不会告诉您某个顶点在 2 和 3 之间有多少条最短路径。相反,您可以使用类似

的东西
vertex=1
sum(sapply(get.all.shortest.paths(g,2,3)$res,function(x){vertex %in% x}))

例如,查找顶点 1 所在的最短路径的数量。