GraphGists

在这个例子中,改编自 Niko Gamulins 关于 Neo4j 用于社交网络分析的博客文章,图中显示的是一个样本人物的 2 跳关系,用节点表示,并具有 KNOWS 关系。所选节点的 聚类系数 定义为两个随机选择的邻居相互连接的概率。假设邻居数量为 n,邻居之间的相互连接数量为 r,则两个邻居之间可能连接的数量为 n!/(2!(n-2)!) = 4!/(2!(4-2)!) = 24/4 = 6,其中 n 是邻居数量 n = 4,实际连接数量 r1。因此,节点 1 的聚类系数为 1/6nr 可以通过以下查询非常容易地获取

MATCH (a {name: "startnode"})--(b)
WITH a, count(distinct b) AS n
MATCH (a)--()-[r]-()--(a)
RETURN n, count(distinct r) AS r

这将返回上述计算的 nr