gpt4 book ai didi

algorithm - 我怎样才能在以前的密码结果上应用一个新的密码

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:40:07 25 4
gpt4 key购买 nike

我正在寻找 neo4j 中的一个或多个实体,使用 cypher 在屏幕上绘制图形,最终用户将决定他要应用哪种算法。也就是说,我想对先前获得的结果应用算法。

例如:我有这个查询:

MATCH (e)<-[r]->(a) 
WHERE id(e) IN [9336,9306,9352,5215,9354]
RETURN e,r,a

这会返回一个结果,我可以在屏幕上绘制图形。但现在我需要对之前的图应用算法,以便保留结果,但现在我抛出了图中每个节点的中心度。

例如我想应用这个:

CALL algo.pageRank.stream('', '', {iterations:20, dampingFactor:0.85, concurrency:4}) YIELD nodeId, score

但是比之前的结果。

谁能帮帮我?

最佳答案

Neo4j 无法将直接返回的密码结果提供给另一个查询的开始,但您可以做一些事情。

重新运行之前的查询,将 RETURN 替换为 WITH

所以在你的例子中,运行

MATCH (e)<-[r]->(a) 
WHERE id(e) IN [9336,9306,9352,5215,9354]
RETURN e,r,a

其次是

MATCH (e)<-[r]->(a) 
WHERE id(e) IN [9336,9306,9352,5215,9354]
WITH e,r,a
CALL algo.pageRank.stream('', '', {iterations:20, dampingFactor:0.85, concurrency:4}) YIELD nodeId, score
RETURN e,r,a, nodeId, score

这会产生副作用,如果先前查询的结果发生变化(因为添加/删除的节点,结果将更新以反射(reflect)更新的数据。(可能是好是坏取决于您的观点)

重新匹配上一个查询的结果作为下一个查询的开始

我不推荐这个。实现起来会很痛苦,但这是可能的。

关于algorithm - 我怎样才能在以前的密码结果上应用一个新的密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52337510/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com