0

我已经使用 read_graphml 加载了一个图,它看起来好像返回了一个 Multiedges 图对象,我无法在该对象上运行 PageRank 方法(返回图必须是非多边的异常)。有没有办法将我的图表转换为非多边类型(我认为我加载的图表中没有多条边......)。

谢谢

4

1 回答 1

3

如果 read_graphml() 函数返回一个 MultiGraph() 对象,它可能会在输入文件中找到平行(多条)边。但是您可以通过传入一个新的 Graph() 将其转换为没有平行边的图。例如

In [1]: import networkx as nx

In [2]: G = nx.MultiGraph([(1,2),(1,2)])

In [3]: G.edges()
Out[3]: [(1, 2), (1, 2)]

In [4]: H = nx.Graph(G)

In [5]: H.edges()
Out[5]: [(1, 2)]
于 2013-02-25T14:16:37.653 回答