我需要计算图中两个顶点之间最短路径的边缘属性的乘积。
例如:
data<-as.data.frame(cbind(c(1,2,3,4,5,1),c(4,3,4,5,6,5),c(0.2,0.1,0.5,0.7,0.8,0.2)))
G<-graph.data.frame(data, directed=FALSE)
set.edge.attribute(G, "V3", index=E(G), data$V3)
如果我根据属性计算最短路径我有两个可能性,首先告诉我步骤:
get.shortest.paths (G, 2, 6, weights=E(G)$V3)
2 3 4 1 5 6
第二个告诉我路径上属性的总和。
shortest.paths (G, 2, 6, weights=E(G)$V3)
1.8
由于我需要制作一个产品,我需要在路径的节点之间有一个边缘属性的向量。在这个例子中,我应该得到0.8 0.2 0.2 0.5 0.1,其产品将是0.0016。 谁能建议我怎么做?
答案 0 :(得分:4)
使用output
的{{1}}参数:
get.shortest.paths