0

グラフからいくつかのコミュニティを収集しようとしています。ただし、結果として得られるコミュニティは孤立したノードで構成されており、コミュニティに関する私の理解と矛盾しています。ここに私の重要な R/igraph-code があります:

g<-simplify(g)
print("isolates: ")
length(which(degree(g)==0)-1) # says 0

c<-fastgreedy.community(g)

cmem<-community.to.membership(g,c$merges,3081)
w<-which(cmem$membership==0)  
sub<-subgraph(g,w)

print("isolates in subgraph: ")
length(which(degree(sub)==0)-1) # says > 0

私は間違いを犯しましたか?ご協力ありがとうございました。

4

1 に答える 1

1

から 1 を減算するのを忘れていますwhich(cmem$membership == 0)。これは、igraph がノードを 0 からインデックス付けするのに対し、R は 1 ベースのインデックス付けを使用するために必要です。でもう一度試してw <- which(cmem$membership == 0) - 1、分離株が持続するかどうかを確認してください。

于 2011-09-20T14:52:19.663 に答える