有序分类变量的相关系数

  统计/机器学习 描述性统计    浏览次数: 981
3

数值变量的相关系数是皮尔逊相关系数,那如果是有序分类变量呢,也可以用皮尔逊相关系数吗?


 

LeBron   2017-04-12 12:22



   2个回答 
7

当然也可以用Pearson $\rho$。

但是针对于有序分类变量,另外一个很适用的叫做Kendall $\tau$,也叫做肯达尔秩相关系数。与皮尔逊系数类似,肯达尔秩相关系数的范围也是-1到1。-1表示完全负相关,1表示完全正相关。公式为

$$\tau=2\frac{有序对的个数-逆序对的个数}{n(n-1)}$$

对于样本$A=\{a_1,a_2,\cdots, a_n\}$与样本$B=\{b_1,b_2,\cdots,b_n\}$。如果存在一对$(i,j)$,当$a_ i \lt a_j $时,$b_i \lt b_j$;或者当$a_i>a_j$时,$b_i\gt b_j$;这样的一对就称作有序对。反过来就是一个逆序对。


比如样本$A=\{1, 3, 5\}$,$B=\{4 , 6, 3\}$

有序对为

$a_1 < a_2$,$b_1 < b_2$

逆序对为

$a_1 < a_3$,$b_1 > b_3$

$a_2 < a_3$,$b_2 > b_3$

所以上面两个数列的Kendall $\tau$为

$$\tau=2\frac{1-2}{3\times2}=-\frac{1}{3}$$



PS,感谢s3040608090发现笔误,现在已经更正。


SofaSofa数据科学社区 DS面经 问答 实战

弼码温   2017-11-25 00:31

谢谢解答,长知识了。不过我想请教一下举例中的符号是否写反了?a1=1, a2=3不是应该是小于吗,还是我理解有误。 - s3040608090   2017-12-29 20:51
我也感觉大小于号写反了 - 0101RG   2017-12-30 01:23
抱歉抱歉,有碍大家观瞻了,现在已经更正了 - 弼码温   2017-12-30 14:37
6

除了弼码温提到的Kendall $\tau$,另一个也许更常用的是Spearman秩相关系数,也称为Spearman $\rho$。

对于两组样本,先对它们取序。

$A=(1, 2, 5, 3, 7)$,$B=(2, 10, 50, 11, 20)$这两组数,取序之后的结果为

$A'=(1, 2, 4, 3, 5)$,$B'=(1, 2, 5, 3, 4)$,然后再对$A'$和$B'$求正常的皮尔逊相关系数

$$\frac{\text{Cov}(A', B')}{\sigma_{A'}\sigma_{B'}}$$

$A'$和$B'$的皮尔逊相关系数就是$A$和$B$的Spearman秩相关系数。


SofaSofa数据科学社区 DS面经 问答 实战

木子周   2017-12-30 14:20



  相关主题

一个连续变量和一个二元变量的相关系数怎么求?   2回答

Python计算两个数组的相关系数   3回答

回归中自变量和因变量的相关系数和回归系数(斜率)有什么关系?   3回答

如何对两个名义分类变量的关联性进行可视化展示?   1回答

两个变量不相关但是也不独立   2回答

为什么说皮尔逊相关系数是刻画了线性相关性?   2回答

对两个相关系数做显著性的假设检验?   1回答

相关系数的p值是怎么算的?   1回答

序列的autocorrelation(自相关系数)的计算公式   1回答

相关系数很小的变量一定要删掉吗?   0回答

关于Python中 theano的相关问题   1回答

怎么判断是因果还是相关?   0回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!