最近我一直在使用 python-igraph 包,我的所有代码都基于我使用 igraph 创建的图表。现在,我需要为我的图计算一些度量,这些度量显然是在 networkx 中实现的,而不是在 igraph 中实现的,例如(katz_centrality_numpy,edge_ Betweenness_centrality,...)。我想知道是否有一种方法可以在这两个包之间将一个图转换为另一个图,并避免再次从文件中读取,因为我的文件很大并且必须多次重复相同的过程。
顺便说一句,当我将 igraph 图形传递给 networkx 函数时,我收到以下错误:
TypeError: 'Graph' object is not iterable
谢谢 :)
您可以启动一个带有边的networkx图:
Graph([(1,2), (3,4)])
See 文档 https://networkx.github.io/documentation/latest/reference/classes.graph.html#overview.
EDIT:
这是如何使用它(谢谢 nimafl 的代码):
graph
is the igraph
图表并创建G
这是一个networkx
graph.
import networkx
A = graph.get_edgelist()
G = networkx.DiGraph(A) # In case your graph is directed
G = networkx.Graph(A) # In case you graph is undirected
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)