python - 使用 py2neo 从 csv 文件创建 neo4j 图形数据库

标签 python csv py2neo

我目前正在攻读博士学位,我对 Py2neo 很感兴趣,所以我使用它来使用社交图谱进行一些实验。但是我遇到了新手麻烦。不好意思问这些简单的问题。

我有一个包含有关期刊出版物数据的 xml 数据集,我已将其转换为一个 csv 表,大约有 700 条记录,每条记录由四个字段组成:日期、标题、关键字、作者。所以我的第一个问题是如何以编程方式从该表创建图表。我考虑编写一个 python 脚本来循环 csv 表,读取每一行和每一列字段并写入节点。 +++++++++++++++++++++++++++++++++++++++++++++++代码+++++++++++++++++++++++++++++++++++++++++++++++

   #!/usr/bin/env python
   #
   import csv
   from py2neo import neo4j, cypher
   from py2neo import node,  rel

   # calls database service of Neo4j
   #
   graph_db = neo4j.GraphDatabaseService("http://localhost:7474/db/data/")
   #
   # Create nodes and relationships from a csv table
   # since it's a csv table, a reader must be invoked


   ifile  = open('testeout5_cp.csv', "rb")
   reader = csv.reader(ifile)

   # clear database
   graph_db.clear()

   rownum = 0
   for row in reader:
        colnum = 0
        for col in row:
            titulo, autor, rel = graph_db.create(
            {"titulo": col[1]}, {"autor": col[3]}, (1, "eh_autor_de", 0)
            )
            print(titulo,  autor)  
   rownum += 1

   ifile.close()

================ 我得到了这个输出(片段): Python 2.7.5(默认,2013 年 8 月 22 日,09:31:58) [GCC 4.8.1 20130603 (Red Hat 4.8.1-1)] on aires2, Standard

    (Node('http://localhost:7474/db/data/node/10392'), Node('http://localhost:7474/db/data /node/10393'))
    (Node('http://localhost:7474/db/data/node/10394'), Node('http://localhost:7474/db/data/node/10395'))
    (Node('http://localhost:7474/db/data/node/10396'), Node('http://localhost:7474/db/data/node/10397'))
    (Node('http://localhost:7474/db/data/node/10398'), Node('http://localhost:7474/db/data/node/10399'))
    (Node('http://localhost:7474/db/data/node/10400'), Node('http://localhost:7474/db/data/node/10401'))
    (Node('http://localhost:7474/db/data/node/10402'), Node('http://localhost:7474/db/data/node/10403'))
    (Node('http://localhost:7474/db/data/node/10404'), Node('http://localhost:7474/db/data/node/10405'))

========= 怎么了?

最佳答案

我不是 py2neo 专家,所以帮不上忙。但是,您是否尝试过使用不同的机制来创建图表?由于它不是很大,我会考虑使用电子表格(我用了很多 )- 非常简单。

参见 http://blog.neo4j.org/2013/03/importing-data-into-neo4j-spreadsheet.html了解更多信息。

希望它有意义。

瑞克

关于python - 使用 py2neo 从 csv 文件创建 neo4j 图形数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18804254/

相关文章:

python - 在 Mac 上为 Python 2.6 安装 pygobject

python - 如何在 Django 中执行连接和聚合计数

python - Pandas 中最简单的分组/求和

java - 如何在java中将CSV float 转换为double

python - 为 py2neo.error.CypherExecutionException 导入

neo4j - 使用 py2neo WriteBatch 将大图数据插入 Neo4j

python - 如何向一个键添加多个列表?

java - 使用 DAO 读取 CSV 文件?

Java - 数据库锁定

python - Py2neo (V4) - 属性错误 : 'Graph' object has no attribute 'find_one'