无法转换边缘数据网络 X
Failed to Convert Edge Data Network X
我有这个结构如下的小 gephiready.tsv 文件:
Source Target Type
1 2 Undirected
1 3 Undirected
1 4 Undirected
1 5 Undirected
1 6 Undirected
我想在 python 环境中通过 NetworkX 打开它,代码为:
G = nx.read_edgelist("small-gephiready.tsv", nodetype=int)
然而,它returns错误"Failed to convert edge data (['Type']) to dictionary"。我以为Type datas是string,所以我在nodetype=int后面加了data=('Type',str)
,它returns str没有属性decode.
我是不是把 read_edge 函数写错了,还是我必须在文件中检查一些东西?谢谢你的帮助。
这是我的回答,显然如果你给一个文件 headers,你需要一些参数来读取它们。但是,我需要 pandas read_csv 功能,并用 from_pandas_edgelist 功能将其折腾到 network_x。
f = pd.read_csv("small-gephiready.tsv", sep='\t')
G = nx.from_pandas_edgelist(f, source='FromNodeId', target='ToNodeId')
我不太确定它是如何工作的,但下面的代码似乎为我提供了预期的结果:
先去掉Headers,然后使用下面的代码
nx.read_edgelist("small-gephiready.tsv", nodetype=int, data=(("Type", str),))
加载节点和边没有任何问题。
我有这个结构如下的小 gephiready.tsv 文件:
Source Target Type
1 2 Undirected
1 3 Undirected
1 4 Undirected
1 5 Undirected
1 6 Undirected
我想在 python 环境中通过 NetworkX 打开它,代码为:
G = nx.read_edgelist("small-gephiready.tsv", nodetype=int)
然而,它returns错误"Failed to convert edge data (['Type']) to dictionary"。我以为Type datas是string,所以我在nodetype=int后面加了data=('Type',str)
,它returns str没有属性decode.
我是不是把 read_edge 函数写错了,还是我必须在文件中检查一些东西?谢谢你的帮助。
这是我的回答,显然如果你给一个文件 headers,你需要一些参数来读取它们。但是,我需要 pandas read_csv 功能,并用 from_pandas_edgelist 功能将其折腾到 network_x。
f = pd.read_csv("small-gephiready.tsv", sep='\t')
G = nx.from_pandas_edgelist(f, source='FromNodeId', target='ToNodeId')
我不太确定它是如何工作的,但下面的代码似乎为我提供了预期的结果:
先去掉Headers,然后使用下面的代码
nx.read_edgelist("small-gephiready.tsv", nodetype=int, data=(("Type", str),))
加载节点和边没有任何问题。