当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python NetworkX greedy_modularity_communities用法及代码示例


本文简要介绍 networkx.algorithms.community.modularity_max.greedy_modularity_communities 的用法。

用法:

greedy_modularity_communities(G, weight=None, resolution=1, n_communities=1)

使用贪心的模块化最大化在 G 中查找社区。

该函数使用Clauset-Newman-Moore贪心模块化最大化[2]。

贪心模块化最大化从其自己社区中的每个节点开始,并加入最大增加模块化的社区对,直到不存在这样的对或直到达到社区数量n_communities

此函数最大化广义模块化,其中 resolution 是分辨率参数,通常表示为 。见 modularity()

参数

GNetworkX 图
weight字符串或无,可选(默认=无)

保存用作权重的数值的边属性的名称。如果没有,则每条边的权重为 1。度数是与节点相邻的边权重的总和。

resolution浮点数(默认=1)

如果分辨率小于 1,则模块化有利于更大的社区。大于 1 有利于较小的社区。

n_communities: int

期望的社区数量:一旦达到这个社区数量,或者直到不能进一步增加模块化,社区合并过程就终止。必须介于 1 和 G 中的节点总数之间。默认为 1 ,这意味着社区合并过程将继续进行,直到所有节点都在同一个社区中或直到找到最佳社区结构。

返回

分区:列表

一组冻结的节点列表,每个社区一个。按长度排序,首先是最大的社区。

参考

1

Newman, M. E. J. “Networks: An Introduction”, page 224 Oxford University Press 2011.

2

Clauset, A., Newman, M. E., & Moore, C. “Finding community structure in very large networks.” Physical Review E 70(6), 2004.

3

Reichardt and Bornholdt “Statistical Mechanics of Community Detection” Phys. Rev. E74, 2006.

4

Newman, M. E. J.”Analysis of weighted networks” Physical Review E 70(5 Pt 2):056131, 2004.

例子

>>> from networkx.algorithms.community import greedy_modularity_communities
>>> G = nx.karate_club_graph()
>>> c = greedy_modularity_communities(G)
>>> sorted(c[0])
[8, 14, 15, 18, 20, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33]

相关用法


注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.algorithms.community.modularity_max.greedy_modularity_communities。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。