簡體   English   中英

Neo4j加載CSV文件

[英]Neo4j load csv file

我正在嘗試按照LearningNeo4j書籍的“使用加載CSV導入”一章中的說明,學習如何在Neo4j中導入csv文件。 我正在實現的代碼如下:

load csv with headers from 
"file:C:/wamp/www/fantapappa/nodes.csv"
as nodes
create (n {id: nodes.Node, name: nodes.Name, type: nodes.Label})
return n

load csv with headers from 
"file:C:/wamp/www/fantapappa/rels.csv" 
as rels 
match (from {id:rels.From}), (to {id: rels.To})
create from-[:REL {type: rels.'Relationship'}]->to
return from, to

match (m {type:"Male"}), (f {type:"Female"})
set m:Male, f:Female
return m,f

到目前為止,一切都很好,但是當我嘗試以這種方式建立關系時:

match (n)-[r1 {type:"MOTHER_OF"}]->(m), (s)-[r2 {type:"FATHER_OF"}]->(t)
create n-[:MOTHER_OF]->m, s-[:FATHER_OF]->t
return *;

match ()-[r:REL]-() delete r;

我什么都無法比擬。 我只是復制並粘貼了本書的代碼,但無法建立關系。 有人能幫我嗎?

PS csv文件為:

nodes.csv
Node,Name,Label
1,Amada Emory,Female
2,Rana Seely,Female
3,Detra Thatcher,Female
4,Melda Reza,Female
5,Shana Willems,Female
6,Sharonda Peele,Female
7,Dagny Agee,Female
8,Tisa Woodman,Female
9,Shelba Mutcheler,Female
10,Anderson Spagnola,Male
11,Pamela Forward,Female
12,Melva Fairchild,Female
13,Antione Selman,Male
14,Carmela Cali,Female
15,Fairy Daughtery,Female
16,Stefany Mcamis,Female
17,Kermit Meaney,Male
18,Williemae Dossantos,Female
19,Marth Sparling,Female
20,Jarvis Noland,Male

rels.csv
From,Name,Relationship ,To,Name
1,Amada Emoroy,MOTHER_OF,11,Pamala Forward
1,Amada Emoroy,MOTHER_OF,12,Melva Fairchild
1,Amada Emoroy,MOTHER_OF,13,Antione Selman
2,Rana Seely,MOTHER_OF,14,Carmelia Cali
2,Rana Seely,MOTHER_OF,15,Fairy Daughtery
2,Rana Seely,MOTHER_OF,16,Stefany Mcamis
3,Detra Thatcher,MOTHER_OF,17,Kermit Meaney
3,Detra Thatcher,MOTHER_OF,18,Williemae Dossantos
3,Detra Thatcher,MOTHER_OF,19,Marth Sparling
10,Anderson Spagnola,FATHER_OF,20,Jarvis Noland
14,Carmelia Cali,MOTHER_OF,1,Amada Emory
11,Pamela Forward,MOTHER_OF,2,Rana Seely
11,Pamela Forward,MOTHER_OF,3,Detra Thatcher
12,Melva Fairchild,MOTHER_OF,4,Melda Reza
12,Melva Fairchild,MOTHER_OF,5,Shana Willems
12,Melva Fairchild,MOTHER_OF,6,Sharonda Peele
17,Kermit Meaney,FATHER_OF,7,Dagny Agee
13,Antione Selman,MOTHER_OF,8,Tisa Woodman
13,Antione Selman,MOTHER_OF,9,Shelba Mutchler
20,Jarvis Noland,FATHER_OF,1,Amada Emory

編輯

我只是復制您的代碼,我得到以下內容 在此處輸入圖片說明

對不起,但是在您的鏈接中,我無法完全理解您在哭什么。

關系上的type屬性未創建。 所以你的比賽不會結束。

這是因為在標題中, Relationship列的后面緊跟一個空格,您需要用空格反引號:

rels.`Relationship `

-

load csv with headers from 
"file:C:/wamp/www/fantapappa/rels.csv" 
as rels 
match (from {id:rels.From}), (to {id: rels.To})
create from-[:REL {type: rels.`Relationship `}]->to
return from, to

另外,我建議您檢查什么標簽和索引,以加快較大數據集的插入速度。

編輯

我已將您的csv上傳到要點,並在Neo4j控制台中( http://console.neo4j.org/r/hrao50)運行了整個過程:

LOAD CSV WITH HEADERS FROM "https://gist.githubusercontent.com/ikwattro/2a38a2f71a7ebc8a6681/raw/da5b47ceab9a9d93f62a12ee1fe8224788c0d861/nodes.csv"
AS nodes
create (n {id: nodes.Node, name: nodes.Name, type: nodes.Label})
return n

LOAD CSV 
WITH HEADERS FROM "https://gist.githubusercontent.com/ikwattro/2a38a2f71a7ebc8a6681/raw/da5b47ceab9a9d93f62a12ee1fe8224788c0d861/rels.csv" 
AS rels
match (from {id:rels.From}), (to {id: rels.To})
create from-[:REL {type: rels.`Relationship `}]->to
return from, to

MATCH (m { type:"Male" }),(f { type:"Female" })
SET m:Male, f:Female
RETURN m,f

match (n)-[r1 {type:"MOTHER_OF"}]->(m), (s)-[r2 {type:"FATHER_OF"}]->(t)
create n-[:MOTHER_OF]->m, s-[:FATHER_OF]->t
return *;

並且該圖似乎已正確創建。 您可以使用有關灰色圖表的屏幕截圖來更新您的問題。

另請注意,也許您需要通過在瀏覽器控制台編輯器中發出:style reset命令來重置圖形的:style reset

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM