Python来袭,教你用Neo4j构建“复联4”人物关系图谱!没有剧透!【文末赠书】...

讲技术之前先引个好玩的热点话题,带你与时代接轨~


漫威系列电影《复仇者联盟4》上映

你去看了吗?

小编就盼着周末去好好享受

谁剧透,跟谁急!


640?wx_fmt=gif 复仇者联盟 之  绝对不剧透


漫威英雄们为了不让自己剧透也是使出了浑身解数。在洛杉矶全球首映礼上记者费尽心机想要从各位演员身上套点信息:“如果你活下来就眨一下眼睛,死了就眨两下”。


“绿巨人” :我就是不眨,看你怎么样!

640?wx_fmt=gif

“雷神”:我眨了23下,你猜我活没活着~

640?wx_fmt=gif

“蚁人”:我不睁眼就不用眨眼了~

640?wx_fmt=gif

希望大家可以像奇异博士学习

做个合格的影迷哦

640?wx_fmt=jpeg

都谁看了复联4?

据说,看复联4的,分三种人:


(1)骨灰粉

看完晒票根发感慨的


(2)路人粉

还没看,但是怕被剧透的


(3)纯属小白跟风

被漫威错综复杂的人物线,搞得一头雾水

640?wx_fmt=png

 

640?wx_fmt=gif 敲黑板,讲技术重点了~! 来,先放一张成品图, 帮你理清核心人物 一张图带你读懂“妇联4”人物关系!


640?wx_fmt=png

 

人物节点和关系数据

人物节点数据:姓名和角色

name,role

霍华德·斯塔克,斯塔克工业创始人

佩姬·卡特,神盾局创始人

美国队长,复仇者联盟成员

钢铁侠,复仇者联盟成员

巴基,复仇者联盟成员

雷神,复仇者联盟成员

蚁人,复仇者联盟成员

绿巨人,复仇者联盟成员

黑寡妇,复仇者联盟成员

洛基,火神

鹰眼,复仇者联盟成员

战争机器,复仇者联盟成员

蜘蛛侠,复仇者联盟成员

幻视,复仇者联盟成员

红骷髅,九头蛇组织创始人

黑豹,瓦坎达国王

泽莫男爵,美国队长宿敌


人物关系:姓名1,姓名2,关系类型


start,end,relation

钢铁侠,美国队长,内战

美国队长,钢铁侠,内战

蜘蛛侠,钢铁侠,师傅

钢铁侠,战争机器,好友

幻视,钢铁侠,AI管家

钢铁侠,霍华德·斯塔克,儿子

钢铁侠,绿巨人,搭档

美国队长,红骷颅,宿敌

红骷颅,美国队长,宿敌

黑豹,美国队长,庇护

泽莫男爵,美国队长,敌对

美国队长,泽莫男爵,敌对

美国队长,佩姬·卡特,二战恋人

美国队长,巴基,好友

巴基,美国队长,好友

洛基,雷神,弟弟

绿巨人,雷神,结识

黑寡妇,鹰眼,暧昧

640?wx_fmt=png

 

640?wx_fmt=gif


@







启动neo4j服务,打开http://127.0.0.1:7474

文件存放位置:neo4j安装目录的import文件夹下

 

导入节点数据,先不添加标签

LOAD CSV WITH HEADERS  FROM "file:///data_node.csv" AS line MERGE ({name:line.name,role:line.role})

 

640?wx_fmt=png

给不同的角色添加不同的标签

复仇者联盟成员为例:

MATCH (n { role: '复仇者联盟成员' }) SET n :复仇者联盟成员 RETURN n

640?wx_fmt=png

MATCH (n { role: '神盾局创始人' })SET n :神盾局创始人 RETURN n

640?wx_fmt=png

MATCH (n { role: '斯塔克工业创始人' })SET n :斯塔克工业创始人 RETURN n

640?wx_fmt=png

MATCH (n { role: '火神' }) SET n:火神 RETURN n

640?wx_fmt=png

 

MATCH (n { role: '九头蛇组织创始人' })SET n :九头蛇组织创始人 RETURN n

640?wx_fmt=png

 

MATCH (n { role: '瓦坎达国王' }) SET n :瓦坎达国王 RETURN n

640?wx_fmt=png

 

MATCH (n { role: '美国队长宿敌' })SET n :美国队长宿敌 RETURN n

640?wx_fmt=png

 

查看所有节点

match (n) return n

640?wx_fmt=png

 

点击节点,可以设置节点颜色和大小。

640?wx_fmt=png

 

导入关系数据,由于导入节点的时候,并没有设置标签,所以导入关系数据的时候,也不需要设置节点标签。

正确语法:

LOAD CSV WITH HEADERS FROM 'file:///data_relation.csv'as line

MATCH (start {name: line.start})

MATCH (end {name: line.end})

MERGE (start) -[:r{relation:line.relation}]-> (end)

640?wx_fmt=png

 

用以下语法,添加节点标签Person,虽然语法不报错,但是并没有把关系添加进去:

LOAD CSV WITH HEADERS FROM 'file:///data_relation.csv'as line

MATCH (start:Person {name: line.start})

MATCH (end:Person {name: line.end})

MERGE (start) -[:r{relation:line.relation}]-> (end)

640?wx_fmt=png

 

再查看所有节点和关系

match (n) return n

640?wx_fmt=png

 

查看所有复仇者联盟成员的名字

match (n:复仇者联盟成员) return n

640?wx_fmt=png

 

点击标签,也可以设置颜色和大小。 

640?wx_fmt=png

 

查看钢铁侠的全部关系

match p=({name:'钢铁侠'})-[:r]->()return p

640?wx_fmt=png

 

点击关系,也可以设置颜色和大小。

640?wx_fmt=png

 

 查看钢铁侠的2层内的关系


match p=({name:'钢铁侠'})-[*..2]->()return p

640?wx_fmt=png


查看钢铁侠的好友关系

match p=({name:'钢铁侠'})-[:r{relation:'好友'}]->()return p

640?wx_fmt=png

 这波操作超酷~

重点来了!

这个技术,在哪里可以学到?

Python如何连接Neo4j进行社交网络分析,书中会有介绍哦!


640?wx_fmt=gif


  好 书 推 荐 @上榜理由


640?wx_fmt=gif 超 值 推 荐


640?wx_fmt=jpeg

一本书带你学会Python 

270分钟授课视频 = 49.00元


识别下方官方京东购买链接,还可享限时折扣哦!

640?wx_fmt=png

特别提示:此书每本书均配有防盗版二维码,请从官方渠道购买,否则视频、源码等资源全部无效。

640?wx_fmt=jpeg


640?wx_fmt=gif 赠 书 活 动


清华大学出版社官方活动

奖池:5本《Python机器学习——数据分析与评分卡建模(微课版)》

1.活动发起方:清华大学出版社

2.参与方式:识别下方二维码即可参与抽奖。

640?wx_fmt=jpeg


3.奖项公布方式:参与抽奖的粉丝请及时关注抽奖小程序二维码中的开奖时间,届时微信会自动推送是否中奖信息。

若被抽中的幸运粉丝,识别二维码、点击输入您的通讯地址即可。

4.注意事项:

(1)本次活动为小程序系统随机抽取,中奖与否,全部随缘!

(2)所有样书将于2019年4月30日统一安排寄送。

(3)若中奖的粉丝,有意修改通讯地址可在本发文中留言。

如果觉得中奖概率太小,可以识别下方京东官方购书链接二维码,抢限时优惠购书!

640?wx_fmt=png

一本书带你学会Python 

270分钟授课视频 = 49.00元

绝对超值 超值 超值~!


别忘了给个好评哦!

因为,您的好评,是对我们最大的鼓励~!


本文源代码获取方式:

在本公众号后台回复:羽毛书,即可获取。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值