Networkx- IndexError:使用(greedy_modularity_communities时,列表索引超出范围

时间:2018-12-01 16:49:49

标签: python-3.x networkx modularity

我正在使用Python 3.7.1和networkx 2.2。 我使用networkx生成了有向图,并且我想使用networkx.algorithms.community.modularity_max.greedy_modularity_communities计算图的社区 按以下步骤操作:

import networkx as nx
from networkx.algorithms.community import greedy_modularity_communities
G=nx.DiGraph()
G.add_nodes_from([1,10])
G.add_edges_from([(1,2),(3,4),(5,6),(7,1),(2,10),(3,8),(9,8)])
c = list(greedy_modularity_communities(G))
sorted(c[0])

我收到一个错误:

  

IndexError:列表索引超出范围

1 个答案:

答案 0 :(得分:1)

我怀疑您的问题是图形是有向的。 greedy_modularity_communities的文档表明它期望输入为Graph,而您的输入为DiGraph

如果我这样做

H = nx.Graph(G)
c = list(greedy_modularity_communities(H))

我没有收到错误消息。我不确定它在H中找到的社区是否会是您感兴趣的地方。