当前位置: 首页 > news >正文

山东天狐做网站cms军事新闻视频在线观看

山东天狐做网站cms,军事新闻视频在线观看,怎么找当地的地推团队,网站app开发价格文章目录 安装py2neo创建节点-连线关系图导入csv文件删除重复节点并连接边 安装py2neo 安装python中的neo4j操作库:pip install py2neo 安装py2neo后我们可以使用其中的函数对neo4j进行操作。 图数据库Neo4j中最重要的就是结点和边(关系)&a…

文章目录

        • 安装py2neo
        • 创建节点-连线关系图
        • 导入csv文件
        • 删除重复节点并连接边

安装py2neo

安装python中的neo4j操作库:pip install py2neo
安装py2neo后我们可以使用其中的函数对neo4j进行操作。

图数据库Neo4j中最重要的就是结点和边(关系),结点之间靠边联系在一起,每个结点也有属于自己的属性。

也就是说我们在用pyhton操作Neo4j的时候只需要创造出节点(Node )和节点之间的关系:边(Relationship ),如果节点存在附加属性,可以再给结点附上一些属性。

注意: 在我们用python的时候我们必须启动Neo4j。如图所示,点击connect进行连接。

在这里插入图片描述

创建节点-连线关系图

下面我们就创建三个结点,每个结点有两个属性,两结点之间有一个关系。

from py2neo import Graph, Node, Relationship
# 连接neo4j数据库,输入地址、用户名、密码
graph = Graph("http://localhost:7474", name="neo4j", password='123456SWXR')
graph.delete_all() #清除neo4j中原有的结点等所有信息# 创建结点
node1 = Node('person', name = 'chenjianbo')   #该结点语义类型是person  结点名字是chenjianbo  也是它的属性
node2 = Node('major',name = 'software')       #该结点语义类型是major  结点名字是software  也是它的属性
node3 = Node('person',name = 'bobo')          #该结点语义类型是person  结点名字是bobo   也是它的属性#给结点node1 添加一个属性 age
node1['age'] = 18
#给结点node2 添加一个属性 college
node2['college'] = 'software college'
#给结点node3 添加一个属性 sex
node3['sex'] = '男'#把结点实例化 在Neo4j中显示出来
graph.create(node1)
graph.create(node2)
graph.create(node3)
# 创建关系
maojor = Relationship(node1, '专业', node2)
friends = Relationship(node1, '朋友', node3)
maojor1 = Relationship(node3, '专业', node2)
#把关系实例化 在Neo4j中显示出来
graph.create(maojor)
graph.create(maojor1)
graph.create(friends)

在这里插入图片描述

导入csv文件

该网站有大量汇总的知识图谱数据集,可供学习使用。
http://openkg.cn/dataset

在这里插入图片描述

周杰伦歌曲知识数据集csv,应用三元组的形式将歌曲歌手所属专辑联系在一起。

在这里插入图片描述

  • dataframe格式读入数据
import pandas as pddf = pd.read_csv('relation.csv',index_col=0)df
	Column1	Column2	Column3
id			
1	Dare for more	周杰伦	歌手
2	Dare for more	蔡依林	歌手
6	Mine Mine	惊叹号	所属专辑
7	Now You See Me	周杰伦	歌手
8	Now You See Me	方文山	作词
...	...	...	...
624	最后的战役	周杰伦	歌手
625	最后的战役	方文山	作词
626	最后的战役	八度空间	所属专辑
627	最长的电影	周杰伦	歌手
628	最长的电影	我很忙	所属专辑
  • 使用py2neoneo4j添加节点和边
graph.delete_all() #清除neo4j中原有的结点等所有信息for index,row in df.iterrows():node1 = Node('person',name=row[0])node2 = Node('person',name=row[1])graph.create(node1)graph.create(node2)each = Relationship(node1, row[2], node2)graph.create(each)

在这里插入图片描述
这样生成的知识图谱只是简单的节点-边的关系,存在大量冗余的实体entity

可以通过neo4j的删除方法将重复节点进行删除,之后将边重新连接。

删除重复节点并连接边

查询重复节点,如果有重复节点就不create。这样节点和边全部联系在一起,形成完整的没有冗余的知识图谱。

目前的缺点是节点Node的命名都是以person命名,所以节点暂时没有区分。

graph.delete_all() #清除neo4j中原有的结点等所有信息
from py2neo import NodeMatcher
entity = []for index,row in df.iterrows():if row[0] not in entity:entity.append(row[0])node1 = Node('person',name=row[0])graph.create(node1)else:node_matcher = NodeMatcher(graph) node1 = list(node_matcher.match('person').where(name=row[0]))[0]print(node1)if row[1] not in entity:entity.append(row[1])  node2 = Node('person',name=row[1])graph.create(node2)else:node_matcher = NodeMatcher(graph) node2 = list(node_matcher.match('person').where(name=row[1]))[0]print(node2)each = Relationship(node1, row[2], node2)graph.create(each)

在这里插入图片描述

http://www.yayakq.cn/news/407084/

相关文章:

  • 个人做财经类网站wordpress产品展示类
  • 珠海企业医疗网站建设q版网页游戏大全
  • 广安门内网站建设中国核工业二三建设有限公司招聘信息
  • 哪些网站做外链好软件开发入门
  • 公司网站怎么做网站备案wordpress 微博插件
  • 商城网站设计制作html中网站最下面怎么做
  • 网站seo优化主要有哪些手段网站源码下载插件
  • 怎么做关不掉的网站公众号做微网站
  • 网站建设模板怎么设计南京外贸网站建设公司
  • 网站建设开场白百姓网网站开发的意义
  • 做云购网站网站实时推送怎么做
  • 学校网站做等级保护勉费申请做网站
  • 优秀国外网站设计赏析外贸网站模板制作
  • 站点推广促销电子商务平台的营销推广方案
  • 网站显示乱码怎么办啊类似淘宝的购物网站 建设
  • seo外贸仿牌网站换域名广东手机网站建设报价表
  • 网站建设 部署与发布视频泰安人力资源招聘
  • seo 网站树网页设计需要学什么编程
  • 视频网站cms系统文明网站建设情况报告
  • 小白怎么学做网站南平网站怎么做seo
  • 专业做外贸网站免费网站空间注册
  • 黑龙江建设兵团知青网站wordpress瀑布流图片主题
  • 自己做免费的网站吗网站运营经验
  • 网站素材下载有关网站建设的公众号
  • 长沙建站长沙网站深圳 企业网站建设
  • 做企业网站一般用什么服务器中铁建设集团有限公司是国企还是央企
  • 众网站seo排名优化培训
  • 平凉网站建设reduseo做得好的企业网站
  • 做网站需要看啥书上海网站开发培训价格
  • 贵阳银行手机银行下载官方网站icp备案查询网站