Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neo4j python驱动程序:匹配数十万个节点并返回数据帧块_Python_Neo4j_Neo4j Apoc - Fatal编程技术网

Neo4j python驱动程序:匹配数十万个节点并返回数据帧块

Neo4j python驱动程序:匹配数十万个节点并返回数据帧块,python,neo4j,neo4j-apoc,Python,Neo4j,Neo4j Apoc,我有一个函数查询,它以列表的形式返回我的结果。我还能够将数据加载到数据帧中。我想知道是否有可能将数十万个节点属性分块加载到单个数据帧中,或者并行化match和return语句。我查看了apoc.periodic.iterate,但它似乎只返回已处理的行数,并且需要更新节点。我只希望以块的形式返回节点属性信息。我要做的是写入csv文件;你可以在那之后进口。另一种方法是使用from io import StringIO绕过对文件的写入。 def query(text_query, driver, d

我有一个函数查询,它以列表的形式返回我的结果。我还能够将数据加载到数据帧中。我想知道是否有可能将数十万个节点属性分块加载到单个数据帧中,或者并行化match和return语句。我查看了apoc.periodic.iterate,但它似乎只返回已处理的行数,并且需要更新节点。我只希望以块的形式返回节点属性信息。

我要做的是写入csv文件;你可以在那之后进口。另一种方法是使用
from io import StringIO
绕过对文件的写入。
def query(text_query, driver, db = None):
     try: 
         session = driver.session(database=db) 
         response = list(session.run(text_query))
     except Exception as e:
         print("Query failed:", e)
     finally: 
        if session is not None:
            session.close()
     return response

text = "MATCH (n:technique) WHERE exists(n.embedding_vector)  RETURN DISTINCT n.common_ds_cafe_id, n.embedding_vector"
tech_dtf_data = pd.DataFrame([dict(_) for _ in query(text, db='neo4j', driver = driver)])
tech_dtf_data['label'] = 'technique'
print("Techniques loaded:",  tech_dtf_data.shape)