我想爲Burt的有效大小創建一個函數。 公式歸結爲:在igraph中創建新的度量方法
有效尺寸= N - 2噸/ N
- 其中t是關係(不計的聯繫,自我)的數
- n是的人的數量在網絡中(不包括自我)。
我真的不確定從哪裏開始編寫igraph中的函數。
讓我知道,如果有更多的細節將是有益的......
感謝。
我想爲Burt的有效大小創建一個函數。 公式歸結爲:在igraph中創建新的度量方法
有效尺寸= N - 2噸/ N
我真的不確定從哪裏開始編寫igraph中的函數。
讓我知道,如果有更多的細節將是有益的......
感謝。
首先模擬基本圖表:
require(igraph)
alters = 50
ties = 10
set.seed(12345)
edgelist = rbind(0, 1:alters)
edgelist = cbind(edgelist, replicate(ties, sample(alters, 2)))
g = graph(edgelist, directed=F)
dev.new(width=5, height=5)
plot(g, layout=layout.kamada.kawai)
然後寫一個簡單的函數來計算的有效尺寸。 (這裏,關於g
操作的功能都很好地記錄在igraph
手冊和周圍的淨各種例子。)
EffectiveSize <- function(g, ego=0) {
n = neighbors(g, ego)
t = length(E(g)[to(n) & !to(ego)])
n = length(n)
n - 2 * t/n
}
> EffectiveSize(g)
[1] 49.6
啊。謝謝!對於冗餘/基本問題抱歉,但我真的不確定是否需要用C調用/編輯。我沒有意識到我可以創建正常的R函數來與igraph一起工作。 – crock1255
是的,它真的很靈活。 igraph也是一個很好的軟件包,用這些方法在頂點和邊上進行索引/迭代。祝你的項目好運! –
提供樣本圖,到目前爲止你已經嘗試計算什麼尺寸。 –