实现Python将csv数据导入到Neo4j

实现Python将csv数据导入到Neo4j

目录

一、获取数据集

1.1 获取数据集

1.2 以“记事本”方式打开文件

1.3  另存为“UTF-8”格式文件

1.4 选择“是”

二、 打开Neo4j并运行

2.1 创建新的Neo4j数据库

2.2 分别设置数据库名和密码

​编辑 2.3 启动Neo4j数据库

2.4 打开Neo4j数据库

 2.5 运行查看该数据库是否为空

三、打开Python创建项目 

3.1 创建一个包,存项目

3.2 创建一个项目

3.3 检查自己的依赖是否完全

3.3.1 点击“File”-“Settings”

3.3.2  找到“Project:PythonProject”-"Python Interpreter"

3.4 导入相关依赖,打开Terminal

3.5 输入命令

四、实现Python连接Neo4j 

4.1 Python连接Neo4j测试

4.2 导入数据集

4.3 处理数据集

4.4 初始化neo4j并合并数据集关系

4.5 把节点导入到Neo4j中

4.6 运行代码后,查看Neo4j是否有节点

4.7 导入节点关系

4.8 查看Neo4j

五、该过程出现的Bug

5.1 UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc8 in position 0: invalid continuation byte 


一、获取数据集

1.1 获取数据集

《我是刑警》的人物关系数据集资源https://download.ZEEKLOG.net/download/Z0412_J0103/90160496

1.2 以“记事本”方式打开文件

1.3  另存为“UTF-8”格式文件

1.4 选择“是”

二、 打开Neo4j并运行

2.1 创建新的Neo4j数据库

2.2 分别设置数据库名和密码

 2.3 启动Neo4j数据库

2.4 打开Neo4j数据库

 2.5 运行查看该数据库是否为空

match(n) return n;

三、打开Python创建项目 

3.1 创建一个包,存项目

3.2 创建一个项目

3.3 检查自己的依赖是否完全

3.3.1 点击“File”-“Settings”

3.3.2  找到“Project:PythonProject”-"Python Interpreter"

检查是否导入了“neo4j”、“pandas”、”py2neo

3.4 导入相关依赖,打开Terminal

3.5 输入命令

pip install neo4j-python-driver pandas py2neo

四、实现Python连接Neo4j 

4.1 Python连接Neo4j测试



其中的”123456“是你刚刚建立的Neo4j密码,此处只需要修改该密码就可以了

4.2 导入数据集



其中地址需要改变,其它地方都不用变

运行结果如下

4.3 处理数据集



 执行结果如下

4.4 初始化neo4j并合并数据集关系

# 初始化一个空列表来存储所有的元组 tuple_total = [] # 迭代DataFrame的每一行 for index, row in invoice_data.iterrows(): ties_total = [row['人物'], row['关系'], row['关系人物']] # 将所有元组添加到结果列表中 tuple_total.extend([ties_total]) print(tuple_total)

4.5 把节点导入到Neo4j中

#把节点导入neo4j中 def create_node(people): for name in people: node_1 = Node('人物', name = name) graph.create(node_1) create_node(people)

4.6 运行代码后,查看Neo4j是否有节点

4.7 导入节点关系

matcher = NodeMatcher(graph) # 导入关系 for i in range(0, len(tuple_total)): name_1 = matcher.match('人物', name=tuple_total[i][0]).first() name_2 = matcher.match('人物', name=tuple_total[i][2]).first() rel = tuple_total[i][1] relationship = Relationship(name_1, rel, name_2) graph.create(relationship)

4.8 查看Neo4j

 

五、该过程出现的Bug

5.1 UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc8 in position 0: invalid continuation byte 

解决过程:

是因为你的CSV文件没有设置为”UTF-8“ ,具体过程看本文的1.2和1.3过程

上一篇文章:ZEEKLOG中群发功能及自动回复设置教程_ZEEKLOG粉丝群发https://blog.ZEEKLOG.net/Z0412_J0103/article/details/144074981下一篇文章: JDK11下载安装和配置超详细过程-ZEEKLOG博客https://blog.ZEEKLOG.net/Z0412_J0103/article/details/144451166?sharetype=blogdetail&sharerId=144451166&sharerefer=PC&sharesource=Z0412_J0103&spm=1011.2480.3001.8118

Read more

具身神经-机器人运控通讯架构与实现系列

具身智能热潮之下,大量企业投身具身行业。在机器人本体控制方案上各家争鸣,但是试错路径太长,不少团队会在底层控制方案上走大量的弯路,导致资源浪费、项目延期甚至破产。 以第一性原则,探索当前具身机器人通讯架构实现最优解,加速具身机器人行业底层控制(通讯)系统技术方向收敛。尽可能帮助机器人本体系统工程师减少试错。 本系列仅针对机器人本体控制系统底层通讯部分:小脑<--->执行器/传感器之间的架构和具体实现。 gitee链接:https://gitee.com/Lenz_s_law/embodied-nerve 博文汇总 欢迎投稿 通讯架构分析篇 * MIT开源四足机器狗通讯架构分析 * 智元灵犀X1通讯分析1-整机通讯架构 * 智元灵犀X1通讯分析2-CANFD性能优化 * 宇树G1主控拆解分析 * RS485、CAN/FD、EtherCAT三种主流机器人总线方案分析 CAN/FD技术篇 * CAN/FD总线性能分析-机器人应用 * 机器人CAN/FD总线通讯架构设计 * 机器人CAN/FD接口关键性能指标 * 机器人CAN/FD接口扩展/实现方案

基于FPGA的CLAHE自适应限制对比度直方图均衡算法硬件verilog实现

基于FPGA的CLAHE自适应限制对比度直方图均衡算法硬件verilog实现

基于FPGA的CLAHE自适应限制对比度直方图均衡算法硬件verilog实现 摘要:本文详细阐述了基于 FPGA 的 CLAHE(自适应限制对比度直方图均衡)算法的硬件verilog实现方案。CLAHE是一种强大的图像增强算法,广泛应用于医学影像、红外成像、低照度增强等领域。本文将从算法原理出发,深入讲解各模块的RTL架构设计,包括坐标计数器、直方图统计、CDF计算、双线性插值映射以及乒乓RAM管理等核心模块的实现细节。 项目开源地址:https://github.com/Passionate0424/CLAHE_verilog 开源不易,辛苦各位看官点点star!! 一、CLAHE算法基本原理 1.1 算法背景 CLAHE(Contrast Limited Adaptive Histogram Equalization,对比度受限的自适应直方图均衡)是对传统自适应直方图均衡(AHE)的改进。AHE通过将图像划分为多个子区域(称为 “Tiles”),对每个Tile独立进行直方图均衡化,从而适应图像的局部特性。然而,AHE在噪声较大的平坦区域(如天空、

无人机视觉语言导航从入门到精通(一):什么是无人机视觉语言导航

无人机视觉语言导航从入门到精通(一):什么是无人机视觉语言导航 摘要 视觉语言导航(Vision-Language Navigation, VLN)是人工智能领域的前沿研究方向,它使智能体能够根据自然语言指令,在视觉环境中自主导航至目标位置。当这一技术应用于无人机平台时,便形成了无人机视觉语言导航(UAV Vision-Language Navigation)这一新兴研究领域。本文作为系列博客的开篇,将系统介绍视觉语言导航的基本概念、问题形式化定义、核心挑战、应用场景,并对整个系列的内容进行导读。 关键词:视觉语言导航、无人机、多模态学习、具身智能、自然语言处理 一、引言 1.1 从一个场景说起 设想这样一个场景:你站在一个陌生城市的街头,手中拿着一架小型无人机。你对无人机说:"飞到前方那栋红色建筑的左侧,然后沿着河边向北飞行,在第二座桥附近降落。"无人机收到指令后,自主起飞,识别周围环境中的建筑、河流、桥梁等地标,规划路径,最终准确到达你所描述的位置。

91n边缘计算设备部署轻量TensorFlow模型全流程

91n边缘计算设备部署轻量TensorFlow模型全流程 在工厂车间的流水线上,一台不起眼的小型嵌入式设备正实时分析摄像头传来的图像——它没有连接云端,也不依赖高性能GPU,却能在200毫秒内判断出产品表面是否存在划痕,并立即触发报警。这背后的核心技术,正是基于“91n”类边缘计算设备与轻量化TensorFlow模型的深度融合。 这类设备算力有限、内存紧张,却承担着工业智能化转型中最关键的一环:让AI真正落地到生产现场。而要实现这一目标,不仅需要合适的硬件平台,更离不开一套高效、稳定、可规模化的软件部署方案。TensorFlow Lite 正是在这样的需求背景下脱颖而出,成为当前工业级边缘AI应用的主流选择。 TensorFlow Lite 的工程实践价值 为什么是 TensorFlow Lite?这个问题的答案,藏在每一次模型转换、每一行推理代码和每一个实际部署案例中。 作为 TensorFlow 针对移动端和嵌入式场景优化的轻量版本,TFLite 并非简单地“裁剪”功能,而是从底层重新设计了推理引擎。它的核心逻辑可以概括为三个阶段:模型转换 → 解释器加载 → 本地推理