RNeo4j密码-检索路径
我试图从全局网络(特定节点到特定深度的子网络)中提取一个子图 网络由标记为Account的节点组成,这些节点具有iban属性和RNeo4j密码-检索路径,r,neo4j,cypher,r-neo4j,R,Neo4j,Cypher,R Neo4j,我试图从全局网络(特定节点到特定深度的子网络)中提取一个子图 网络由标记为Account的节点组成,这些节点具有iban属性和TRANSFER\u TO\u AGG关系 密码语法如下所示: MATCH (a:Account { iban :'FR7618206004274157697300156' }),(b:Account), p = allShortestPaths((a)-[:TRANSFER_TO_AGG*..3]-(b)) RETURN p limit 250 这在Neo4J web
TRANSFER\u TO\u AGG
关系
密码语法如下所示:
MATCH (a:Account { iban :'FR7618206004274157697300156' }),(b:Account),
p = allShortestPaths((a)-[:TRANSFER_TO_AGG*..3]-(b))
RETURN p limit 250
这在Neo4J web界面上非常有效。但是,当尝试使用命令cypher将结果保存到R对象时,我遇到以下错误:
"Error in as.data.frame.list(value, row.names = rlabs) :
supplied 92 row names for 1 rows"
我相信这是因为如果返回数据,您只能查询表格结果。也就是说,对于包含数组属性、集合、节点或关系的密码结果,此方法当前没有任何功能
有人能提供解决方案吗?我最近添加了将路径作为R对象返回的功能。首先,卸载/重新安装RNeo4j。然后,请参见: 具体来说,您可以使用
getpath()
:
p
是路径对象的列表。有关将apply函数系列与路径对象列表一起使用的示例,请参见文档。没错,cypher()仅用于返回表格结果,而您返回的是路径(由节点和关系实体组成)。您可以使用EXTRACT()从路径中获取相关属性。如果您想分享更多关于您正试图做的事情的信息,我可以尝试帮助您找到一个具有RNeo4j中当前可用功能的解决方案。我没有接触过遍历API或返回路径的功能,因为将这些东西表示为R对象并不简单!我最终使用标签和属性来标记相关的子图,然后使用extract和returnby这些标记。非常感谢您的回答,感谢您提供的支持Neo4J与R配合使用的强大软件包-它非常棒,非常有用!!!
library(RNeo4j)
graph = startGraph("http://localhost:7474/db/data/")
query = "
MATCH (a:Account { iban :'FR7618206004274157697300156' }),(b:Account),
p = allShortestPaths((a)-[:TRANSFER_TO_AGG*..3]-(b))
RETURN p limit 250
"
p = getPaths(graph, query)