此函数实现了多级模块化优化算法,用于查找社区结构,请参见下面的参考文献。它基于模块化度量和分层方法。
值
cluster_louvain()
返回一个 communities()
对象,有关详细信息,请参见 communities()
手册页。
详细信息
此函数实现了多级模块化优化算法,用于查找社区结构,详细信息请参见 VD Blondel, J-L Guillaume, R Lambiotte and E Lefebvre: Fast unfolding of community hierarchies in large networks, https://arxiv.org/abs/0803.0476。
它基于模块化度量和分层方法。最初,每个顶点都被分配到自己的社区中。在每个步骤中,顶点以局部贪婪的方式重新分配到社区:每个顶点移动到其对模块化贡献最高的社区。当没有顶点可以重新分配时,每个社区都被视为其自身的顶点,并且该过程再次从合并的社区开始。当只剩下一个顶点或者模块化无法在一个步骤中进一步增加时,该过程停止。自 igraph 1.3 起,顶点以随机顺序处理。
此函数由 Tom Gregorovic 贡献。
参考文献
Vincent D. Blondel, Jean-Loup Guillaume, Renaud Lambiotte, Etienne Lefebvre: Fast unfolding of communities in large networks. J. Stat. Mech. (2008) P10008
参见
参见 communities()
以从结果中提取成员资格、模块化分数等。
其他社区检测算法:cluster_walktrap()
, cluster_spinglass()
, cluster_leading_eigen()
, cluster_edge_betweenness()
, cluster_fast_greedy()
, cluster_label_prop()
cluster_leiden()
社区检测 as_membership()
, cluster_edge_betweenness()
, cluster_fast_greedy()
, cluster_fluid_communities()
, cluster_infomap()
, cluster_label_prop()
, cluster_leading_eigen()
, cluster_leiden()
, cluster_optimal()
, cluster_spinglass()
, cluster_walktrap()
, compare()
, groups()
, make_clusters()
, membership()
, modularity.igraph()
, plot_dendrogram()
, split_join_distance()
, voronoi_cells()
作者
Tom Gregorovic, Tamas Nepusz ntamas@gmail.com
示例
# This is so simple that we will have only one level
g <- make_full_graph(5) %du% make_full_graph(5) %du% make_full_graph(5)
g <- add_edges(g, c(1, 6, 1, 11, 6, 11))
cluster_louvain(g)
#> IGRAPH clustering multi level, groups: 3, mod: 0.58
#> + groups:
#> $`1`
#> [1] 1 2 3 4 5
#>
#> $`2`
#> [1] 6 7 8 9 10
#>
#> $`3`
#> [1] 11 12 13 14 15
#>