使用python向neo4j中批量导入txt和csv三元组数据

1.导入txt文件

数据示例:

(头实体,关系,尾实体)
(头实体,关系,尾实体)
。。。。。。

在执行python代码之前在neo4j中执行这个命令,清空所有节点
match (n) detach delete n

代码:

import py2neo
from py2neo import Graph,Node,Relationship,NodeMatcher
import csvgraph = Graph('http://localhost:7474',user='neo4j',password='自己的密码,neo4j的初始密码是neo4j')# 打开txt文件
with open("数据文件路径", "r", encoding='utf-8') as file:lines = file.readlines()for line in lines:# 分割每行数据triple = line.strip().split(", ")triple[0] = triple[0].replace("(", "")triple[2] = triple[2].replace(")", "")# 创建节点和关系head_node = Node("Entity", name=triple[0], primary_label="Entity", primary_key="name")tail_node = Node("Entity", name=triple[2], primary_label="Entity", primary_key="name")relationship = Relationship(head_node, triple[1], tail_node)graph.merge(head_node, "Entity", "name")graph.merge(tail_node, "Entity", "name")graph.merge(relationship)#关闭连接  这行代码会报错,AttributeError: 'Graph' object has no attribute 'close'
# 是为了看什么时候导入完成,报错的时候说明前面的执行完了,就导入完成了
graph.close()

2.导入csv格式

数据示例:

头实体关系尾实体
头实体关系尾实体

代码:

with open("数据文件路径", "r", encoding='utf-8') as f:reader = csv.reader(f)for item in reader:head_node = Node("Entity", name=item[0], primary_label="Entity", primary_key="name")tail_node = Node("Entity", name=item[2], primary_label="Entity", primary_key="name")relationship = Relationship(head_node, item[1], tail_node)graph.merge(head_node, "Entity", "name")graph.merge(tail_node, "Entity", "name")graph.merge(relationship)#关闭连接
graph.close()

路虽远,行则将至。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/224549.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信生态下的私域流量载体有哪些?

私域流量的本质就是:降低我的获客成本,提高我产品服务的复购率,增加我和用户之间的粘性,挖掘用户的终身价值。 私域流量一般我们特指微信体系的个人号、公众号、社群和小程序,现在朋友圈和视频号也成为了打造微信私域…

HubSpot和AI的完美结合:解锁业务增长密码

随着数字化时代的发展,智能营销已经成为企业走向成功的关键之一。在这个领域的领先者之一,HubSpot积极整合人工智能(AI)技术,为数字营销、销售和服务带来了新的可能性。今天运营坛将带领大家深入探讨HubSpot和人工智能…

活动预告 | 微盟技术沙龙 - Elasticsearch 在微盟的实践 12/21/2023

微盟技术沙龙 「微盟技术沙龙」是由微盟研发中心发起并联合各方小伙伴为开发者举办的系列技术沙龙,从用户,产品,技术等方面与开发者进行交流。 微盟技术沙龙关注开发者在实际应用中遇到的问题。提供最真实的干货,以技术会友&…

GPU 性能测试软件:GPU-Z,2023 年 9 月 12 日更新

GPU-Z是一款用于Windows操作系统的免费工具,它用于查看和监控计算机的图形处理单元(GPU)信息。这个工具是专为计算机硬件爱好者、游戏玩家、系统管理员和技术支持人员设计的 GPU-Z 的特点 GPU信息:GPU-Z能够显示关于您计算机中G…

命令执行 [BUUCTF 2018]Online Tool1

打开题目 我们代码审计一下 if (isset($_SERVER[HTTP_X_FORWARDED_FOR])) { $_SERVER[REMOTE_ADDR] $_SERVER[HTTP_X_FORWARDED_FOR]; } 如果存在xxf头且不为空,则将xxf头内容(真实的客户端ip)赋给ROMOTE_ADDR(代理服务器传过…

如何使用蜘蛛池蚂蚁SEO

​蜘蛛池是一种利用搜索引擎爬虫进行推广营销的方式。它的核心是建立一个能够吸引搜索引擎爬虫的网站群,这些网站能够产生大量的优质内容,并形成一个巨大的网站群,从而吸引更多的搜索引擎爬虫。 如何联系蚂蚁seo? baidu搜索&…

【C语言(十二)】

数据在内存中的存储 一、整数在内存中的存储 整数的2进制表示方法有三种,即 原码、反码和补码 有符号的整数,三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,最高位的⼀位是被当做符号…

赠与婚外情人1百余万,主张全额返还获支持

丈夫婚内出轨,并瞒着妻子给情人转账177万余元,最终被妻子发现诉至法院。近日,湖南省湘阴县人民法院审理了一起不当得利案件,认定丈夫的赠与行为无效,支持了妻子全额返还的诉讼请求。   男子钱某与女子赵某于2020年6月…

无参数RCE知识点

什么是无参数RCE? 无参rce,就是说在无法传入参数的情况下,仅仅依靠传入没有参数的函数套娃就可以达到命令执行的效果 核心代码 if(; preg_replace(/[^\W]\((?R)?\)/, , $_GET[code])) { eval($_GET[code]); } 这段代码的核心就是只…

西工大计院计算机系统基础实验二(配置gdb插件)

第二次实验是二进制炸弹实验,为了简化操作,并且让大家接下来能够按照作者之前已经为网安院写好的博客西工大网络空间安全学院计算机系统基础实验二(清楚实验框架及phase_1)-CSDN博客来走,大家需要下载一款好用的gdb插件…

java基础进阶之List和Set和Map

1、list List本身是一个接口,该接口继承自Collection接口,它有两个常用的实现子类ArrayList和LinkedList。从功能特性上来看,List是有序、可重复的单列集合,集合中的每个元素都有对应的顺序索引,我们可以通过该索引来访…

canvas基本绘制对象

目录 绘制画布 设置画布 绘制圆形 绘制矩形填充渐变色 绘制文字及文字样式 绘制画布 <canvas id"canvas" width"800" height"600"></canvas> 设置画布 //获得画布元素var canvasdocument.getElementById(canvas);var ctxca…

基于Java (spring-boot)的二手物品交易平台

​ 一、项目介绍 1、管理员功能 &#xff08;1&#xff09;登录&#xff1a;管理员能够根据账号访问系统。 &#xff08;2&#xff09;用户管理&#xff1a;管理员可以添加、删除、修改用户信息&#xff0c;查看用户列表&#xff0c;对用户进行管理和控制。例如&#xff0c…

Python将Labelme文件的标注信息绘制到图片上

Python将Labelme文件的标注信息绘制到图片上 前言前提条件相关介绍实验环境Python将Labelme文件的标注信息绘制到图片上代码实现输出结果 前言 由于本人水平有限&#xff0c;难免出现错漏&#xff0c;敬请批评改正。更多精彩内容&#xff0c;可点击进入Python日常小操作专栏、O…

利用docker部署Node-RED

利用Docker部署Node-RED可以通过以下步骤进行&#xff1a; 1. 安装Docker&#xff1a;首先&#xff0c;确保你的计算机上已经安装了Docker。你可以从Docker官网下载并安装适合你操作系统的版本。 2. 创建Docker镜像&#xff1a;在Dockerfile中&#xff0c;编写一个包含Node-RED…

Java面试整理-多线程

Java多线程(Java Multithreading)是Java编程语言中的一个核心概念,它允许程序同时执行多个任务。在多线程环境下,CPU可以在不同的线程之间迅速切换,使得似乎多个任务在同时进行,这对于提高应用程序的性能和响应速度非常重要。 在深入讨论多线程之前,我们可以先对比一下线…

react dom的diff理解及性能优化

diff的三大过程 当某个值变化时&#xff0c;他从根组件寻找 (key,state,props,context) 当父组件稳定时&#xff0c;react会跳过子组件的props的对比 只有当当前组件值改变时&#xff0c;从他开始&#xff0c;所有的子孙节点都会对比props props是全等比较&#xff0c;所以&am…

windows 创建SSH公钥

1、 运行电脑终端 powershell 2、检查你的电脑是否已经有 SSH key cd ~/.ssh ls 3、创建一个 SSH key ssh-keygen -t rsa -C “your_emailexample.com” or ssh-keygen -t ed25519 -C “your_emailexample.com” 代码参数含义&#xff1a; -t 指定密钥类型&#xff0c;默…

怎么把图片转文字?这几个图片转文字方法一定要知道!

怎么把图片转文字&#xff1f;无论是从书籍、网络还是社交媒体上&#xff0c;我们经常需要从图片中提取文字来进行复制、编辑或翻译。手动操作耗时耗力&#xff0c;效率低下&#xff0c;那么怎么把图片转文字呢&#xff1f;今天我将介绍三种不同的方法来实现图片转文字。 图片转…

OceanMind海睿思案例入选第二届中国数据治理年会“DCMM百项优秀案例”

近日&#xff0c;中国电子信息行业联合会在北京成功举办“第二届中国数据治理年会”。 本届大会以“数据强基、智领未来”为主题&#xff0c;汇聚我国数据治理领域的资深专家、学者、企业大咖同台论道&#xff0c;共话数据未来的发展与创新。 中新赛克海睿思作为DCMM3级乙方代…