毕设之python&neo4j各种学习链接

一、python

1、列表去重

https://www.cnblogs.com/nyist-xsk/p/7473236.html

去重之后顺序会改变

#用set
ids = [1,4,3,3,4,2,3,4,5,6,1]
ids = list(set(ids))

不改变原来的顺序用reduce()OR 删除索引

OR 用一个空列表把不重复的元素装起来

list2 = []
list1 = [1,2,3,2,2,2,4,6,5]
for i in list1:
    if i not in list2:
        list2.append(i)
list2
[1, 2, 3, 4, 6, 5]

2、Python数组如何提取某一列元素

https://blog.csdn.net/a5186050/article/details/78471694

import numpy as np
group=[[1,2],[2,3],[3,4]]
#numpy转化
ar=np.array(group)
print(ar[:,1])
#Out:[2 3 4]

3、复旦KG(CN-DBpedia)使用(python)

http://f.dataguru.cn/thread-918592-1-1.html

二、Python & neo4j

Neo4j 操作与 py2neo 用法

https://blog.csdn.net/qq_19707521/article/details/80060675

python操作neo4j

https://blog.csdn.net/yangfengling1023/article/details/82049715
 

三、neo4j

https://www.jianshu.com/p/26fea16888ec

neo4j-高效的原因(节点关系属性存储)

 

https://www.cnblogs.com/ljhdo/p/5516793.html

为节点增加标签

match (n)
where id(n)=7
set n:Company
return n

通过id函数,返回节点或关系的ID

MATCH (:Person { name: 'Oliver Stone' })-[r]->(movie)
RETURN id(r)

MATCH (n:Node { value: '曾晓民' })
RETURN id(n)

通过lables函数,查询节点的标签

MATCH (:Person { name: 'Oliver Stone' })-[r]->(movie)
RETURN lables(movie)

索引限制的解决办法:

1、计算节点属性的数据类型所对应的maxsize,key大小查询限制

      超出的节点不多的话可以删掉这部分节点

返回节点value值大于4036的节点
MATCH (n:Node) WHERE size(n.value) > 4036 RETURN n

返回节点value值大于4036的节点的id
MATCH (n:Node) WHERE size(n.value) > 4036 RETURN n.id

返回节点value值大于4036的节点的数目
MATCH (n:Node) WHERE size(n.value) > 4036 RETURN count(n)

删除节点及其所有关系
MATCH (n:Node) WHERE size(n.value) > MAX_SIZE DETACH DELETE n

可通过给特定节点(如筛选出的节点value值大于3000的节点)增加节点标签来测试索引是否创建成功

根据id创建节点标签
MATCH (n) where id(n)=21 set n:Person return n

删除节点m的标签Person
MATCH(m:Person)
WHERE id(m) = 3730594
REMOVE m:Person
RETURN m

2、不想删除节点,可以尝试指定将Lucene用于该特定索引的索引提供程序。这可以使用以下任一方法完成

选项1; 更改配置

  1. dbms.index.default_schema_provider设置为所需的设置。
  2. 重启Neo4j。
  3. 删除并重新创建相关索引。
  4. 更改dbms.index.default_schema_provider回原始值。
  5. 重启Neo4j。
CALL db.createIndex(":Node(value)", "lucene + native-2.0")

选项2; 使用内置程序

有一些内置过程可用于在索引创建,唯一属性约束创建和节点密钥创建时指定索引提供程序(有关约束的详细信息,请参阅Cypher手册→约束。有关更多信息,请参阅内置过程

可以查询debug文件来查看日志找到neo4j报错原因

返回节点value的长度

RETURN size("hello world")


START n=node(5)
RETURN size(n.name)

neo4j载入新数据库

https://cloud.tencent.com/developer/ask/147153/answer/256843

由于使用Neo3.x创建新数据库而不删除现有数据库,所以只需在$NEO4J_HOME的conf的目录编辑neo4j.conf。

搜寻,其默认值应为graph.db。用其他名称替换它,然后再次启动neo4j。现在,将在该目录名下创建一个新数据库。若要切换回以前的db,请重复这些步骤,只需将新值替换为graph.db在配置文件中。

附上自己的整理的有道云笔记:http://note.youdao.com/noteshare?id=03e144a34171a11dd9fd52f4c5f7df52

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值