簡體   English   中英

cypher neo4j-收集一組節點

[英]cypher neo4j - collect a group of nodes

我嘗試在我的neo4j項目中獲取節點集合

我的數據庫嘗試通過評分描述用戶和電影之間的連接

所以我將用戶鏈接到電影的鏈接“ RATED”,其評級值為(1-5)

此外,我還通過“相似”鏈接將用戶與自己鏈接在一起

現在我有一群喜歡的用戶

用戶組

我想為每組相似用戶查看:喜歡該電影的電影組(喜歡=評分> = 4)

在此示例中,我的結果是:爆發,與狼共舞,披露

現在,您已經在用戶之間創建了直接關系SIMILAR ,您必須運行社區檢測算法,以便它定義不同的用戶組。 您可以使用針對Neo4j的apoc插件使用apoc.algo函數運行它。

CALL apoc.algo.community(25,['User'],'community','SIMILAR','BOTH',1,10000)

現在,您已經使用社區檢測算法定義了用戶組,您只需查詢不同的用戶組喜歡什么

//You can also set additional filters when matching movies groups liked
MATCH (user:User)-[rel:LIKED]->(m:Movie) where rel.rating > 3.5
RETURN distinct(user.community) as group,collect(m.title) as movies

知道這是如何實現此功能的非常簡單的版本。 我建議您檢查這個圖表專家 ,也許這個視頻

希望這可以幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM