将边列表导入igraph的Python格式

3

igraph在Python中接受什么样的边缘列表格式进行导入?包含加权边缘的文本文件应该长什么样子?

我以前用R使用过igraph,但是我需要使用的机器上没有可用的R安装程序——所以我被困在Python中。

我有一个类似于这样的egelist.txt:

123123, 321321, 1
222222, 333333, 2
123123, 333333, 3
222222, 321321, 4

...其中的数值以(source, target, weight)形式表示。

我该如何在Python中导入它?还是我应该重新格式化我的输入?

我正在尝试

import igraph

g = igraph.Graph.Read_Edgelist()

我无法确定如何设置导入语句以告诉它我的列顺序是什么,根据文档(http://hal.elte.hu/~nepusz/development/igraph/tutorial/tutorial.html)的理解,这将假定我有321,321个节点在运行中,而不是将“321321”作为节点的标记ID。


3
看起来如果您的文件是制表符分隔而不是逗号分隔,则它将是Ncol文件,可使用Graph.Read_Ncol()读取。 - Marius
1个回答

4

去掉文件中所有的逗号(即只使用空格作为分隔符),然后使用Graph.Read_Ncol。这应该可以解决问题。您文件中的数字ID将被分配给name顶点属性,边权重将存储在weight边属性中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接