2
第一度連接的網絡(隨機圖)中的數字是很容易計算與功能:如何計算R中網絡圖中所有頂點的二次度數?
g <- erdos.renyi.game(10, 1/10, directed = TRUE)
d1 <- degree(g, mode="out")
然而,利用該函數I可以指望每個節點的第二程度的連接?
第一度連接的網絡(隨機圖)中的數字是很容易計算與功能:如何計算R中網絡圖中所有頂點的二次度數?
g <- erdos.renyi.game(10, 1/10, directed = TRUE)
d1 <- degree(g, mode="out")
然而,利用該函數I可以指望每個節點的第二程度的連接?
我建議使用neigborhood
作爲degree
函數的替代方法。這允許你指定任何鄰居的順序。
d1 <- sapply(neighborhood(g, 1, mode="out"), length)-1
d2 <- sapply(neighborhood(g, 2, mode="out"), length)-1
如果你有帶循環的圖形,你應該檢查這是否仍然給出所需的結果。
編輯:謝謝@Ryan指出neighborhood.size
實際上是比neighborhood
好得多的答案。
d1 <- neighborhood.size(g, 1, mode="out")-1
d2 <- neighborhood.size(g, 2, mode="out")-1
編輯:感謝@Ryan爲neighborhood.size功能!我用它和它的作品,但爲了optain你需要從D2減去D1的第二學位的連接數,那麼你只需要在二度連接:
d1 <- degree(g, mode="out")
d2 <- neighborhood.size(g, 2, mode="out")-d1-1
你甚至可以避開調用sapply通過使用igraph中的neighborhood.size方法。 –