2011-09-20 40 views
0

我想从我的图中收集一些社区。然而,由此产生的社区由孤立的节点构成,这与我对社区的理解相矛盾。 这是我必不可少的R/IGRAPH代码:在孤立节点中检测社区结果

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 

难道我犯了一个错误?感谢您的帮助。

回答

1

您忘记了从which(cmem$membership == 0)减去1,这是因为igraph从零索引节点所需要的,而R使用基于1的索引。用w <- which(cmem$membership == 0) - 1再试一次,看看分离株是否存在。

+0

非常感谢。这有帮助! – Julian