我有最短路徑與得到的表:基於列名稱如何選擇一個矩陣列
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)的列中。
請提供一個可重複的例子。 http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example –
謝謝你,爲了複製這些代碼,你只需要創建一個新的圖像g:g < -barabasi.game(200) – user299791
請修改您的問題以使其完整。 –