Clustering coefficient的计算

本文探讨了Clustering Coefficient的两种定义——全局和局部,揭示了网络中节点之间的连接紧密程度,是网络分析中的关键指标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Clustering coefficient的定义有两种;全局的和局部的。

全局的算法基于triplet。首先解释triplet。

triplet分为开放的triplet(open triplet)和封闭的triplet(closed triplet)两种
(A triplet is three nodes that are connected by either two (open triplet) or three (closed triplet) undirected ties)
可以用下面结构定义一个triplet
      struct triplet
     {
    int key;
    set<int> pair;
};

例如下图{1,(2,3)}构成的triplet是封闭的,{3,(4,5)}构成的triplet是开放的

全局的Clustering coefficient比较简单,公式如下:
Clustering coefficient(global) = number of closed triplet / number of triplet(closed+open)

以上图为例:
closed triplet ={1,(2,3)},{2,(1,3)},{3,(1,2)}
all triplet =  {1,(2,3)},{2,(1,3)},{3,(1,2)},{3,(2,4)},{3,(4,5)},{3,(1,5)},{3,(2,5)},{3,(1,4)}
number of closed triplet = 3
number of  triplet = 8
number of triplet / number of  triplet = 3/8

局部的Clustering coefficient的计算方法:
局部计算是面向节点的,对于节点vi,找出其直接邻居节点集合Ni,计算Ni构成的网络中的边数K,除以Ni集合可能的边数|Ni|*(|Ni|-1)/2
例如:
1节点的邻居节点(2,3),他们之间构成的边有1条,可能构成的边1条,因此1/1=1
2节点的邻居节点(1,3),他们之间构成的边有1条,可能构成的边1条,因此1/1=1
3节点的邻居节点(1,2,4,5),他们之间构成的边有1条,可能构成的边(4*3)/2条,因此1/6=1/6
4节点的邻居节点(3),他们之间构成的边有0条,可能构成的边0条,因此0
5节点的邻居节点(3),他们之间构成的边有0条,可能构成的边0条,因此0
则,5个节点平均local Clustering coefficient = (1+1+1/6)/5=13/30


参考
2)<<Complex Network>> 3.2 properties of real-world networks  p25




评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值