Database 从NEO4J中的CSV文件向节点添加标签

Database 从NEO4J中的CSV文件向节点添加标签,database,graph,neo4j,Database,Graph,Neo4j,我试图从CSV向图形数据库添加一些节点,假设如下: | city continent feature_1 ... |-------------------------------------------------- 0 | Barcelona Europe 1 | Stockholm Europe 2 | New York America 3 | Nairobi Africa 4 |

我试图从CSV向图形数据库添加一些节点,假设如下:

    |  city         continent         feature_1 ...
    |--------------------------------------------------
0   |  Barcelona    Europe
1   |  Stockholm    Europe
2   |  New York     America
3   |  Nairobi      Africa
4   |  Tokyo        Asia
第一种方法是将此数据加载为:

// Insert city nodes
USING PERIODIC COMMIT 1000
LOAD CSV WITH HEADERS FROM 'file:///city_data.csv' AS row
MERGE (city: City {name: row.city})
下一步是合并大陆信息,这样我就可以拥有不同颜色的节点。这意味着每个节点有两个标签,我不知道该怎么做。无论如何,目前我决定只使用一个标签,其中包含大陆信息。由于此信息在CSV文件中,我认为apoc.create.node工具是一种选择。因此,受此启发,我尝试了以下方法:

CALL apoc.load.csv('file:///city_data.csv') YIELD row
CALL apoc.create.node(['row.continent'], {name:['row.continent']}) YIELD node 
RETURN count(*)
这不会引起任何错误,但它与我所想的有所不同。它基本上将列名row.continent本身设置为标签


问题是您将变量用撇号括起来,因此请尝试以下方法:

CALL apoc.load.csv('file:///city_data.csv') YIELD row
CALL apoc.create.node([row.continent], {name: row.continent}) YIELD node 
RETURN count(*)

谢谢,它很管用!我意识到使用收益率行存在一些问题。我最好用产量图代替。