微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

NetworkXError:输入不是用于转换的已知数据类型

如何解决NetworkXError:输入不是用于转换的已知数据类型

我想在 VM 中使用 Neo4j GraphDB 创建一个 networkx 图。我已经在网上尝试了很多东西,但我遇到了同样的错误,当我尝试使用 py2neo 来做同样的事情时,错误会弹出,并且在通过 neo4j BoltDriver 直接加载时也会出现。

实现:

from neo4j import GraphDatabase
import networkx as nx

driver = GraphDatabase.driver(credentials['url'],auth=(credentials['user'],credentials['passwd']))

G = nx.Graph(driver)

有什么我遗漏的吗?我已经阅读了 networkx 的文档,但遗憾的是没有与我面临的问题相关。

解决方法

我不确定您期望在这里发生什么,但是您将连接对象(驱动程序)传递到 NetworkX Graph 数据类型的构造函数中。错误很明显是因为 NetworkX 不知道如何处理那个 Driver 对象。

相反,您需要通过运行 Cypher 查询从数据库中提取一些数据,然后将该数据传递给 Graph 构造函数,假设您也将其强制转换为 NetworkX可以接受。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。