我使用neo4j创建了图形数据库,从R我正在尝试检索一些结果。 但是相同的“GeneName”节点有许多连接,如附图(From Neo4J)所示。 那么,是否可以将GeneName节点的所有连接作为R控制台上的数据帧。
更详细的信息:
我从一个文件获取的基因信息,附加屏幕截图中GeneName节点周围的连接从另一个文件中考虑。 我已经编写了cypher来根据所有文件中的常见基因名称连接各种文件。 例如
文件A(4列多行)
SCA1 info1 info2 info3
文件B(4列多行)
info5 info7 info8 info10 SCA1
现在我已经以基于GeneName(SCA1)连接两个文件的方式编写了一个密码查询
连接两个文件后的输出将类似于
SCA1 info1 info2 info3 info5 info7 info8 info10
所以在屏幕截图中,每个GeneName节点都连接到info1 info2 info3 info5 info7 info8 info10
Pavan Kumar Alluri 高级项目工程师 C-DAC KP INDIA
![在此处输入图片说明] [1]
答案 0 :(得分:0)
您可以尝试以下几点:
ca1 = getSingleNode(graph, "MATCH (n:GeneName) WHERE n.name = 'CA1' RETURN n")
r = outgoingRels(ca1)
然后 r
是关系对象列表。您可以在这些上使用endNode和startNode。
lapply(r, startNode)
lapply(r, endNode)
或者:
r = getRels(graph, "MATCH (n:GeneName)-[r]->() WHERE n.name = 'CA1' RETURN r")
这也将获得一个关系对象列表,您可以在其上使用apply系列函数以及endNode和startNode。
您还可以使用路径对象:
query = "
MATCH p = (n:GeneName)-->()
WHERE n.name = 'CA1'
RETURN p
"
p = getPaths(graph, query)
n = lapply(p, nodes)
当然,如果没有任何数据来重现你的图表,我无法确定哪种方法最好。我强烈建议您阅读docs and examples。