繁体   English   中英

从边列表中读取无向图

[英]Read an undirected graph from a list of edges

我在从边列表中读取无向图时遇到问题。 我在txt文件中有这样的边列表:

BND IEF 0.943176118
BND LQD 0.885572253
BND TIP 0.83072059
BND TLT 0.897231452
DBC USO 0.885015182

等等

然后我的代码是:

G0 = nx.Graph()

G0 = nx.read_edgelist(place_holder + "edges_for_graph.txt", nodetype = str, data = (('weight', int),))

但是当我运行代码时,我遇到了这个问题:

TypeError: Failed to convert weight data 0.943176118 to type <class 'int'>.

我尝试过更改txt文件(每个值之间只有一个空格),但是它不起作用,有人会因为值是int而知道如何解决它。

好吧,从数据片段来看,您的权重并非整数。 您可以以某种方式将它们转换为int,或者将它们存储为float s(可能第二个是您想要做的,因为值似乎在0到1之间)。

对于第一种方式,您可以预处理文件以删除weigth或将其转换为值1。但是,为了正确读取它们,可以使用('weight', float)代替('weight', int)这里的例子。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM