gpt4 book ai didi

python-3.4 - 读取 GML 图时出现意外错误

转载 作者:行者123 更新时间:2023-12-04 00:52:21 24 4
gpt4 key购买 nike

我已经下载了包含 dolphins social network 的 gml 文件.

前段时间我对运行python 3.4和的网络做了一些分析。网络x 1.9 在 Windows7 机器上,但现在我在 Arch linux 机器上运行(使用相同版本的 python 但 与 networkx 1.10 )并在尝试读取文件时发现问题。

这是用于读取文件的代码:

import networkx as nx
nx.read_gml("dolphins.gml")

这是错误的堆栈跟踪:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<string>", line 2, in read_gml
File "/usr/lib/python3.4/site-packages/networkx/utils/decorators.py",line 220, in _open_file
result = func(*new_args, **kwargs)
File "/usr/lib/python3.4/site-packages/networkx/readwrite/gml.py", line 210, in read_gml
G = parse_gml_lines(filter_lines(path), label, destringizer)
File "/usr/lib/python3.4/site-packages/networkx/readwrite/gml.py", line 383, in parse_gml_lines
graph = parse_graph()
File "/usr/lib/python3.4/site-packages/networkx/readwrite/gml.py", line 372, in parse_graph
curr_token, dct = parse_kv(next(tokens))
File "/usr/lib/python3.4/site-packages/networkx/readwrite/gml.py", line 323, in tokenize
(line[pos:], lineno + 1, pos + 1))
networkx.exception.NetworkXError: cannot tokenize 'graph' at (1, 1)

你能读取文件吗?有人遇到过类似的问题吗?或者知道是什么产生了错误?

先感谢您!

最佳答案

在较新版本的 networkx 中,gml 文件应遵循更具体的格式。 dolphins.gml 的问题是在方括号前不应该有任何回车。例如:

错误的格式:

graph 
[
directed 0
node
[
id 0
label "Beak"
]
.
.
.

正确格式:
graph [
directed 0
node [
id 0
label "Beak"
]
.
.
.

它不关心方括号前有多少个空格,只要多于一个并且没有回车。

我最终做的是使用正则表达式去除方括号前的空格。以下正则表达式对我有用:
\s+\[

只需将其替换为“[”即可。括号前必须至少有一个空格。

还要记住,每个节点都必须有一个唯一的标签。

希望它有所帮助。

关于python-3.4 - 读取 GML 图时出现意外错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32895291/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com