web-dev-qa-db-ja.com

AttributeError:モジュール 'networkx.algorithms.community'に属性 'best_partition'がありません

よく私は有名なFacebookスナップデータセットでコミュニティ検出アルゴリズムnetworkxを使用しようとしています。ここに私のコードがあります:

import networkx as nx
import matplotlib.pyplot as plt
from networkx.algorithms import community
from networkx.algorithms.community.centrality import girvan_newman

G_fb = nx.read_edgelist("./facebook_combined.txt",create_using = nx.Graph(), nodetype=int)

parts = community.best_partition(G_fb)
values = [parts.get(node) for node in G_fb.nodes()]

しかし、私がセルを実行すると、次のタイトルエラーが発生します:

AttributeError: module 'networkx.algorithms.community' has no attribute 'best_partition'

何かアドバイス ?

6

私はあなたがnetworkxの コミュニティモジュールpython-louvain モジュールのコミュニティ検出と混同していると思いますusesnetworkx。

あなたがpython-louvainをインストールすると、そのドキュメントの例が私のために機能し、次のような画像を生成します

sample graph partition

networkx.algorithms.communityではなくcommunityをインポートすることに注意してください。あれは、

import community

[.. code ..]

partition = community.best_partition(G_fb)
2
DSM