我有一个.gml文件(Nor graphML),其中包含我的节点和边缘的详细信息。我正在通过以下代码使用 igraph 库在 python 中导入图形:
g = igraph.read("mydata.gml")"
我已经在我的 .gml 文件中给出了边缘的值:
edge
[
source 1
target 0
value 6.25
]
此外,文件以
graph
[
directed 0
weighted 1
但是当我检查时,g.is_weighted() 它返回 false。如何使 igraph 将 .gml 文件中的值作为图形边缘的权重?
is_weighted()
方法只是检查图形是否具有名为 weight
的边属性。在您的情况下,您不会这样做,因为 GML 文件中的值存储在 value
edge 属性中,而不是存储在 weight
中。解决方案是将输入文件中出现的 value
替换为 weight
,或者在加载文件后重命名 igraph 中的属性,如下所示:
g.es["weight"] = g.es["value"]
del g.es["value"]