假设我有一个很大的图,所有的关系都有一个叫做“权重”的数值属性,我想取一个子图,这个子图由一个指定的中心节点(通过id)和它的邻居组成,这些邻居通过权重大于0.9的关系连接到这个中心节点。
我试图使用APOC,但显然,没有一个开箱即用的选项来建立一个条件的关系。
MATCH (n:Assay {assay_id: "9995-6"})
CALL apoc.path.subgraphAll(n, {
relationshipFilter: "LINK",
minLevel: 1,
maxLevel: 1
})
YIELD nodes
RETURN node,n, LIMIT 25
例如,我想添加这样一行:
MATCH (n:Assay {assay_id: "9995-6"})
CALL apoc.path.subgraphAll(n, {
relationshipFilter: "LINK",
minLevel: 1,
maxLevel: 1,
r.weight > 0.9 #this line
})
YIELD nodes
RETURN node,n, LIMIT 25
当然,这是行不通的。我希望有一个简单的解决办法。谢谢。
1条答案
按热度按时间pjngdqdw1#
你可以在得到子图之后过滤关系。下面的第8行使用filter those relationships with wt〉.9。只要忽略浏览器中子图的可视化,因为这个查询是一种黑客攻击。