相似度计算之kendall秩相关系数

31 sec read

在统计学中,肯德尔相关系数是以Maurice Kendall命名的,并经常用希腊字母τ(tau)表示其值。肯德尔相关系数是一个用来测量两个随机变量相关性的统计值。一个肯德尔检验是一个无参数假设检验,它使用计算而得的相关系数去检验两个随机变量的统计依赖性。肯德尔相关系数的取值范围在-1到1之间,当τ为1时,表示两个随机变量拥有一致的等级相关性;当τ为-1时,表示两个随机变量拥有完全相反的等级相关性;当τ为0时,表示两个随机变量是相互独立的。

假设两个随机变量分别为X、Y(也可以看做两个集合),它们的元素个数均为N,两个随机变量取的第i(1<=i<=N)个值分别用Xi、Yi表示。X与Y中的对应元素组成一个元素对集合XY,其包含的元素为(Xi, Yi)(1<=i<=N)。当集合XY中任意两个元素(Xi,Yi)与(Xj,Yj)的排行相同时(也就是说当出现情况1或2时;情况1:Xi>Xj且Yi>Yj,情况2:Xi<Xj且Yi<Yj),这两个元素就被认为是一致的。当出现情况3或4时(情况3:Xi>Xj且Yi<Yj,情况4:Xi<Xj且Yi>Yj),这两个元素被认为是不一致的。当出现情况5或6时(情况5:Xi=Xj,情况6:Yi=Yj),这两个元素既不是一致的也不是不一致的。

这里有三个公式计算肯德尔相关系数的值

公式一

    \[T_{au-a}=\frac{C-D}{\frac{1}{2}N(N-1)}\]

其中C表示XY中拥有一致性的元素对数(两个元素为一对);D表示XY中拥有不一致性的元素对数。

注意:这一公式仅适用于集合X与Y中均不存在相同元素的情况(集合中各个元素唯一)。

公式二

    \[T_{au-b}=\frac{C-D}{\sqrt{(N3-N1)(N3-N2)}}\]

其中:

    \[N3=\frac{1}{2}N(N-1)\]

    \[N1=\sum_{i=1}^{s}{\frac{1}{2}U_i(U_i-1)}\]

    \[N2=\sum_{i=1}^{t}{\frac{1}{2}V_i(V_i-1)}\]

其中C、D与公式一中相同;N1、N2分别是针对集合X、Y计算的,现在以计算N1为例,给出N1的由来(N2的计算可以类推):将X中的相同元素分别组合成小集合,s表示集合X中拥有的小集合数(例如X包含元素:1 2 3 4 3 3 2,那么这里得到的s则为2,因为只有2、3有相同元素),Ui表示第i个小集合所包含的元素数。N2在集合Y的基础上计算而得。

注意:这一公式适用于集合X或Y中存在相同元素的情况(当然,如果X或Y中均不存在相同的元素时,公式二便等同于公式一)。

公式三:

    \[T_{au-c}=\frac{C-D}{\frac{1}{2}N^2\frac{M-1}{M}}\]

注意:这一公式中没有再考虑集合X、或Y中存在相同元素给最后的统计值带来的影响。公式三的这一计算形式仅适用于用表格表示的随机变量X、Y之间相关系数的计算。M表示长方形表格中行数与列数中较小的一个。

参考资料:https://en.wikipedia.org/wiki/Kendall_rank_correlation_coefficient

打赏作者
微信支付标点符 wechat qrcode
支付宝标点符 alipay qrcode

Pandas学习笔记:Excel、CSV文件的读取与导出

在使用Pandas处理数据时,常见的读取数据的方式时从Excel或CSV文件中获取,另外有时也会需要将处理完的数据输出为Excel或CSV文件。今天就一起来学习下Pandas常见的文件读取与导出的方法。
2 min read

Pandas学习笔记之数据类型

Pandas是建立在Numpy上,并与其他第三方库在科学运算环境中有较好兼容性的包。其最大的特色在于提供灵活直观的数据结构来处理关联和有标签的数据。如果从底层视角观察Pandas,可以把它看成增强版的NumPy结构化数据,行列都不再只是简单的整数索引,还可以 ...
1 min read

Excel比较多列并取获最小值或最大值取列名

最近在Excel中分析数据的时候需要要比较多列数据,并返回列中最小值所在列的列名,具体场景如下:
2 sec read

Leave a Reply

Your email address will not be published. Required fields are marked *