无法导入名称'greedy_modularity_communities'

时间:2018-05-21 15:06:10

标签: python-3.6 networkx

我使用networkx生成有向图。我想使用greedy_modularity_communities(G, weight=None)在我的图表中查找社区。 正如Networkx documentation中提到的那样,我正在导入以下模块。

from networkx.algorithms import community

from networkx.algorithms.community import greedy_modularity_communities

但是我收到了错误:

  

ImportError:无法导入名称'greedy_modularity_communities'

2 个答案:

答案 0 :(得分:0)

正如您从链接的网址中看到的那样,您正在查看的文档来自“最新”,在页面的左上角,您可以看到这些文档来自的版本是“2.2rc1.dev_20180504030509 “,这是版本2.2的发布候选版本尚未发布。

如果需要,可以按照networkx docs中的说明安装开发版本,之后应该可以使用:

>>> import networkx
>>> networkx.__version__
'2.2rc1.dev_20180521153746'
>>> from networkx.algorithms.community import greedy_modularity_communities
>>> print(greedy_modularity_communities.__doc__)
Find communities in graph using Clauset-Newman-Moore greedy modularity
    maximization. This method currently supports the Graph class and does not
    consider edge weights.

    Greedy modularity maximization begins with each node in its own community
    and joins the pair of communities that most increases modularity until no
    such pair exists.
    [...]

但是像往常一样,你应该意识到使用软件包的预发行版本的危险:通常有一些尚未修复的错误和不完整的测试。编码器要小心。

答案 1 :(得分:0)

最新版本的networkx似乎已将greedy_modularity_communities移至modularity_max模块,如here所示。

这个尚未包含在您通过PIP安装的软件包版本中,因此如果您需要此功能,您可能需要尝试最新的开发版本。