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) など 他のアルゴリズムも同様の方法で用いることができる。詳細はマニュアルを参照。

著者: Sho Tsugawa

Created: 2023-09-27 水 23:40

Validate