maven项目右上角s和j_贪心学院第二个主题项目代码

项目2 利用Neo4j构建图片所示内容,熟悉Cypher查询语言

作业样式:

4535bff3317dacc2c77ed1be15ce16ed.png

分析实现步骤:

1.图右上角,将知识内容归为三类,因此后面创建节点时可以以此分类创建。

2.仔细观察图中会发现其中有几个核心的知识。通过这个核心的知识点再延展其他的知识点。

在创建节点关系的时候可以优先创建。例如:“Python基础”很多知识都从它衍生出去的。

3.最后将核心知识点再串联一起,就可以构成知识网络图谱了。

下面是实现知识图谱需要掌握的基本语句,当然网上和官方也有教程,下面只是提供部分参考。

创建节点语法:create (: 知识{name:'Hive'}), (: 知识{name:'Python基础'})

搜索创建的节点:

搜索节点:match (p:知识{name:'Python基础'}),(h:`知识`{name:'Hive'}) return p,h

使用ID搜索节点:match (p) where id(p)=xx return p ‘xx为匹配的ID数字‘

创建节点关系:

创建两个节点关系代码:match (s:`知识`{name:'scrapy'}),(m:`知识`{name:'MySQL'}) 
                  create (s)-[db:数据库]->(m)

创建一个节点多关系代码(方法一):match (sd:`知识`{name:'深度学习'}),(sj:`岗位方向`{name:'视觉'}),
                        (yy:`岗位方向`{name:'语音'}),(nlp:`岗位方向`{name:'NLP'}),(tj:`岗位方向`{name:'推荐'}) 
                  create (sd)-[:job]->(sj), (sd)-[:job]->(yy),(sd)-[:job]->(nlp),(sd)-[:job]->(tj)

创建一个节点多关系代码(方法二):match (sd:`知识`{name:'深度学习'}) foreach (name in ['视觉','语音','NLP','推荐'] |
                    create (sd)-[:job]->(:`岗位方向`{name:name}))

修改节点:

修改节点代码:match (sd:`知识`{name:'xpath'}) set sd.name = 'Xpath'

删除节点、节点关系:

删除节点代码:match (sd:`知识`{name:'深度学习'}) delete sd  

删除节点关系代码:match (sd:`知识`{name:'深度学习'})-[j:job]->(sj:`岗位方向`{name:'视觉'}) delete j

使用ID实现删除节点代码:match (r) where id(r) = 501 delete r ‘关键在于detach的使用’

使用ID实现删除节点及节点关系代码:match (r) where id(r) = 501 detach delete r ‘关键在于detach的使用’

作业完成效果:

c29a854dc044c82e64e2c6a4ad8b1fd7.png

下面知识图谱是知识与岗位的一些关系:

e30c819565c6999222a7e0c81c502ff7.png

下面知识图谱是知识、岗位及岗位方向的一些关系:

e1e068f2058b9b14e0a2823c99f9e91e.png

下面是一些该项目的小节:

1.对于节点的命名特别是英文的一定要有一个规范。不要一会儿是首字母大写,一会儿是全部英文单词大写,一会儿全是小写。这样可以避免在搜索节点时不容易出错,避免由于出错后产生新的节点仅具有id属性,检查、删除很麻烦。

2.创建多关系的时候,可以在创建之前就明确好关系名称,这样会让自己的脉络清晰,流程清楚。

3.在neo4j输入框中使用shift+enter,这样可以换行,使得的代码逻辑清晰,如果出错也方便搜索查找。

4.在上面代码很少使用return(ps:不想看效果),但return是一个很好检验代码实现效果的语句,在做复杂的知识图谱是还是需要的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值