我有一个网络,我想使用iGraph中的多级社区检测算法进行分析。我听说igraph中的多层次与Louvain方法相同。我知道Louvain方法只输出最佳模块性,但我需要知道如何输出其他集群模块性。
我尝试使用return_levels = True
,但结果是
igraph.clustering.VertexClustering object at 0x117364518
如果我没有使用return_levels = True
输出只显示最佳模块性
这是我的community_multilevel代码:
from igraph import *
graph= Graph.Read_Ncol('Dummy.txt',names=True,directed=False,weights=True)
implementLouvain = graph.community_multilevel()
print (implementLouvain)
outputModularity = graph.modularity(implementLouvain)
print("Modularity Optimal Value",outputModularity)
在Dummy.txt里面
a b 1
a c 1
a d 1
b d 1
c d 1
b g 1
e f 1
e g 1
e h 1
f h 1
g h 1
a g 1
输出看起来像这样
Clustering with 8 elements and 2 clusters
[0] a, b, c, d
[1] g, e, f, h
Modularity Optimal Value: 0.33333333333333337
我的目标是为每个群集输出模块化,就像这样
[0] a,b,c,d
Modularity [0]:0.xxxxxxx
我的问题有解决办法吗?还是我错过了什么? 谢谢〜