【发布时间】:2015-04-15 15:59:11
【问题描述】:
我有两个 csv 文件,即:file1.csv {contains fields: Gene, Tumor, Totalpatients, Level} 和 file2.csv{Gene, Sample, Value, Abundance}
我需要创建两个文件之间的关系,例如:Gene is connected to Tumor 和 created to sample 等等(类似的关系)
我正在尝试以下操作,但它显示了我想要的结果(在代码下方进行了解释)
USING PERIODIC COMMIT
LOAD CSV WITH HEADERS
FROM 'file///home/file1.csv' AS row
LOAD CSV WITH HEADERS
FROM 'file///home/file2.csv' AS line
MERGE (genes:Genes { name: 'Genes' })
MERGE (cancer:Cancer { name: 'Cancer' })
MERGE (rna:RNA {name: 'RNA'})
MERGE (gene:Gene {name: UPPER(row.Gene)})
MERGE (tumor:Tumor {name: UPPER(row.Tumor)})
MERGE (patient:Patients { name: 'Patients' })
MERGE (total:Totalpatients {name: UPPER(row.Totalpatients)})
MERGE (level:Level {name: UPPER(row.Level)})
MERGE (count:Countpatients {name: UPPER(row.Countpatients)})
MERGE (sample:Sample{name: UPPER(line.Sample)})
MERGE (genes)-[:GENES]->(gene)
MERGE (genes)-[:TUMOR]->(tumor)
MERGE (gene)-[:RNA]->(Sample)
RETURN row;
执行后,关系 RNA 显示连接到空节点的 Gene,即没有要显示的属性。
如何纠正?
【问题讨论】:
-
您能提供(即要点)file1.csv 和 file2.csv 的内容吗?或者也许是前几行?是否正确创建 :GENES 和 :TUMOR 关系?