首页 > 解决方案 > 如何分别计算每个集群的频率 - neo4j

问题描述

我正在使用此查询通过使用“total = 238”来计算集群中每个“CPV”的频率,这是不同合同的数量(知道这里的总数为 238,将从一个集群变为另一个,因为它是从一个集群更改为另一个的不同合同的数量。

 MATCH (c1:Contrat1018)<-[r:HAS1018]-(p:CPV1018)-[x:HAS1018]->(c2:Contrat1018)
with distinct p.id as CPV , collect(p.id) AS Total , tofloat(count(p.id)) as Occurence , c1.clusterId as Cluster , c2.clusterId as Cluster2 , 3980 as total
where Cluster=Cluster2  
return Cluster , Cluster2 , CPV , Occurence  , TOFLOAT((Occurence / total )* 100) as frequence
order by Occurence desc

但我得到的结果是所有集群中每个 CPV 的频率。因此,我真正需要的是 CPV 在其集群中的频率(在他工作的集群中)

这是我得到的结果:

在此处输入图像描述

标签: neo4jcyphercluster-computingcluster-analysis

解决方案


推荐阅读