Python 3.x “如何使用社区模块”;"大蟒蛇";在networkx 2.2中?
我曾经这样使用这个模块:Python 3.x “如何使用社区模块”;"大蟒蛇";在networkx 2.2中?,python-3.x,networkx,Python 3.x,Networkx,我曾经这样使用这个模块: import community if __name__ == '__main__': G = nx.karate_club_graph() pos = nx.spring_layout(G) partition = community.best_partition(G) import community import networkx as nx import matplotlib.pyplot as plt G = nx.erdos
import community
if __name__ == '__main__':
G = nx.karate_club_graph()
pos = nx.spring_layout(G)
partition = community.best_partition(G)
import community
import networkx as nx
import matplotlib.pyplot as plt
G = nx.erdos_renyi_graph(30, 0.05)
partition = community.best_partition(G)
size = float(len(set(partition.values())))
pos = nx.spring_layout(G)
count = 0
for com in set(partition.values()) :
count = count + 1
list_nodes = [nodes for nodes in partition.keys()if partition[nodes] == com]
nx.draw_networkx_nodes(G, pos, list_nodes, node_size = 20,node_color = str(count / size))
nx.draw_networkx_edges(G, pos, alpha=0.5)
plt.show()
我安装了正确的模块:
sudo pip3 install python-louvain
我得到这个错误:
AttributeError: module 'community' has no attribute 'best_partition'
据我所知,它遵循所提供的文档。似乎其他人以前也遇到过此问题,请参阅: 如果安装了另一个名为community的库,则可能会导致问题。以下是我链接到的线程中提出的一个解决方案:
from community import community_louvain
partition = community_louvain.best_partition(G)
我也是Networkx的初学者,但我在Jupyter笔记本中使用了以下语法,对我来说效果很好
!pip install python-louvain
from community import community_louvain
communities =community_louvain.best_partition(G)
您好,您应该安装下面的软件包。我使用它,它工作。 我在windows中安装它。
在cmd中编写“pip install python louvain”,然后编写如下程序:
import community
if __name__ == '__main__':
G = nx.karate_club_graph()
pos = nx.spring_layout(G)
partition = community.best_partition(G)
import community
import networkx as nx
import matplotlib.pyplot as plt
G = nx.erdos_renyi_graph(30, 0.05)
partition = community.best_partition(G)
size = float(len(set(partition.values())))
pos = nx.spring_layout(G)
count = 0
for com in set(partition.values()) :
count = count + 1
list_nodes = [nodes for nodes in partition.keys()if partition[nodes] == com]
nx.draw_networkx_nodes(G, pos, list_nodes, node_size = 20,node_color = str(count / size))
nx.draw_networkx_edges(G, pos, alpha=0.5)
plt.show()
我使用的是Python3.7您需要来自的名为
PythonLouvain的包
基于networkx的模块化Q为0.0849022950503318我不确定为什么会出现以下情况,但似乎有另一个名为“community”的包不包含函数“community.best_partition”。如上所述,您想要“python louvain”包,它似乎包含“社区”部分?!在PyCharm 2020.3中,在Preferences->Project:Python解释器下,我删除了“community”包并添加了“Python louvain”包。在那之后,“导入社区”仍然像“community.best_partition”一样工作。因为它的价值:我必须
pip卸载社区
然后
pip安装python
然后
pip安装networkx
为了让我的conda py37环境正常工作,并且能够调用community.best_partition()
,而不会出现属性错误
我认为,如果您在python louvain
之前安装了networkx
,它将为community
声明名称空间,并且不允许您运行所需的内容