我正在尝试在neo4j中创建一个图形,我的数据在CSV文件中看起来像
node1,connection,node2
PPARA,0.5,PPARGC1A
PPARA,0.5,ENSG00000236349
PPARA,0.5,TSPA
我希望connection
值用作图中关系的标签,这是我无法做到的。以下是我用来创建图形的确切代码。
LOAD CSV WITH HEADERS FROM "file:///C:/Users/username/Desktop/Cytoscape-friend.csv" AS network
CREATE (:GeneRN2{sourceNode:network.node1, destNode:network.node2})
CREATE (sourceNode) -[:TO {exp:network.connection}] ->(destNode)
我的第二个问题是,由于我的文件中有多个重复值,默认情况下neo4j正在为重复值创建多个节点。如何为多个值创建单个节点并将所有其他相关节点连接到该单个节点?
labels
。他们有一个type
。apoc.create.relationship
中的APOC library
过程。MERGE
而不是CREATE
。所以你的查询可能如下所示:
LOAD CSV WITH HEADERS
FROM "file:///C:/Users/username/Desktop/Cytoscape-friend.csv"
AS network
MERGE (sourceNode {id:network.node1})
MERGE (destNode {id:network.node2})
WITH sourceNode,
destNode,
network
CALL apoc.create.relationship(sourceNode, network.connection, {}, destNode) yield rel
RETURN sourceNode,
rel,
destNode