4

Burt の有効サイズの関数を作成したいと考えています。式は次のように要約されます。

有効サイズ=n-2t/n

  • ここで、t は同点の数です (エゴとの同点は数えません)
  • n はネットワーク内の人数です (エゴは数えません)。

igraph内/igraph用の関数をどこから書き始めればよいかよくわかりません。

詳細が役立つかどうか教えてください...

ありがとう。

4

1 に答える 1

7

最初に基本的なグラフをシミュレートします。

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
于 2011-11-01T17:34:54.863 に答える