Sho Tsugawa's Homepage:情報メディア実験
ネットワークのデータのファイルからの読み込み (R で igraph を用いる場合)
ネットワークのデータが以下のようなエッジリストの形式の場合。 数字はノード番号を表し、スペースで区切られた 2 つのノードの間にリンクが存在することを表している。
0 1 0 3 1 2 2 3
次のコマンドで、edgelist.txt を読み込むことができる
> library(igraph) > g<-read.graph("./edgelist.txt",format="edgelist")
エッジリスト以外の形式もサポートされている。詳しくはマニュアルを参照すること。
R igraph を用いたコミュニティ抽出
次のコマンドで、edgelist.txt で表されるネットワークのコミュニティを Girvan Newman 法で求めることができる。(最後の plot は可視化)
> library(igraph) > g<-read.graph("./edgelist.txt",format="edgelist") > c<-edge.betweenness.community(g) > c IGRAPH clustering edge betweenness, groups: 5, mod: 0.4 + groups: $`1` [1] 1 2 4 8 12 13 14 18 20 22 $`2` [1] 3 25 26 28 29 32 $`3` [1] 5 6 7 11 17 > plot(g,vertex.color=c$membership, layout=layout.fruchterman.reingold)
Newman 法 (cluster\fast\greedy) や、Louvain 法 (cluster\louvain) など 他のアルゴリズムも同様の方法で用いることができる。詳細はマニュアルを参照。