【发布时间】:2014-11-25 10:32:39
【问题描述】:
我在 Python 中处理大型数据集,并希望从 Python 中的数据数组中创建 Neo4j 节点。因此,我的天真尝试将类似于以下内容。
(在 Python 脚本中)
Product_IDs = data_array[1:1000] # 这包含一个产品 ID 列表
tot_node_num = len(Product_IDs) # 表示产品ID的总数
图形 = 图形()
tx = graph.cypher.begin()
tx.append("FOREACH (r IN range(1,tot_node_num) | CREATE (:Product {ID:Product_IDs[r]}))")
tx.commit()
使用上述语句,变量:tot_node_num 和 Product_IDs 无法识别。如何传递我使用 python 脚本创建的数组以在 Neo4j 图形数据库中创建节点?
谢谢!
【问题讨论】:
-
通过将 { } 放在变量名周围并添加参数定义来解决上述问题。因此,最后它看起来像 tx.append("FOREACH (r IN range(1,{tot_node_num}) | CREATE(:Product{ID: {Product_IDs}[r]}))", parameters={'tot_node_num' :tot_node_num, 'Product_IDs':Product_IDs})