【发布时间】:2014-03-27 10:43:24
【问题描述】:
我有一张最短路径的表格:
g<-barabasi.game(200)
geodesic.distr <- table(shortest.paths(g))
geodesic.distr
# 0 1 2 3 4 5 6 7
# 117 298 3002 2478 3342 3624 800 28
然后我构建一个 100 行和相同列数的矩阵作为长度(geodesic.distr):
geo<-matrix(0, nrow=100, ncol=length(unlist(labels(geodesic.distr))))
colnames(geo) <- unlist(labels(geodesic.distr))
现在我进行了 100 个实验,在这些实验中,我使用
创建了基于附件的优先网络for(i in seq(1:100)){
bar <- barabasi.game(vcount(g))
geodesic.distr <- table(shortest.paths(bar))
distance <- unlist(labels(geodesic.distr))
for(ii in distance){
geo[i,ii]<-WHAT HERE?
}
}
对于每个实验,我想在矩阵中存储我找到了多少条路径。
我的问题是:如何根据列名选择正确的列?在我的情况下,模拟网络产生的某些名称可能不会出现在原始名称中,所以我不需要只是通过名称找到正确的列,但也是最接近的列(假设我的最大值是 7,我最终可能会得到一个长度为 9 的路径,该路径在地理矩阵中不存在,所以我想将它添加到名为 7) 的列
【问题讨论】:
-
请提供一个可重现的例子。 stackoverflow.com/questions/5963269/…
-
谢谢,为了复制这段代码,你只需要制作一个新的图表 g,比如:g
-
请修改您的问题以使其完整。
-
你的代码不起作用,
seed.graph是什么? -
我刚刚删除了,与讨论无关……谢谢指出。