使用R,igraph
get.all.shortest.paths返回两个对象:$ res和$ nrgeo。
$ res似乎是一个嵌套列表,其中包含连接作为“从”和“到”节点提供的两个节点的节点序列(以及“从”和“到”节点本身)。
在我的情况下,$ res返回“ from”和“ to”之间的21条路径。
如果我用以下方法获得第一个列表的第一项:
$res[[1]][1]
我得到以下输出:
+ 1/2590 vertex, named:
[1] t_Pc Ntwk Site Code
我通过创建“ from”列和“ to”列来构建边缘的数据框:
makePathDataframe <- function(PathObject, index){
nodeCount <- length(PathObject$res[[1]])
fromColumn <- PathObject$res[[index]][1:nodeCount - 1]
toColumn <- PathObject$res[[index]][2:nodeCount]
pathFrame <- cbind(fromColumn,toColumn)
return(pathFrame)
}
得到了:
fromColumn toColumn
t_Pc Ntwk Site Code 221 676
c_Create Date 676 269
t_To Delvbl Header 269 310
c_Agncy Id 310 6
我希望从fromColumn和toColumn中获取节点的名称,但要获取节点号。
我想要作为顶点标签的是数据框中的行标题。我可以使用
获取行标题row.names(_data frame_)
然后使用该函数的输出返回并重新创建数据帧,但是必须有一种更简单的方法。
因此,致电所有igraph中小企业。什么是更简单的方法?
谢谢。