ML之PPMCC:PPMCC皮尔逊相关系数(Pearson correlation coefficient)、Spearman相关系数的简介、案例应用之详细攻略

ML之PPMCC:PPMCC皮尔逊相关系数(Pearson correlation coefficient)、Spearman相关系数的简介、案例应用之详细攻略

目录

PPMCC皮尔逊相关系数的简介

1、PPMCC的几何解释

2、PPMCC的数学特性

1、Pearson线性相关系数对数据分布的敏感性

1.1、PPMCC的存在性

1.2、PPMCC的大样本性

1.3、PPMCC的鲁棒性(Robustness)

2、PPMCC的使用条件

3、几种的(x,y)点即相应的x、y的相关系数

4、相关系数大小与相关性大小的关系?

Spearman相关系数简介

Pearson皮尔逊相关系数和spearman相关系数总结

1、并非所有变量都可采用Pearson皮尔逊相关系数和spearman相关系数

2、Pearson皮尔逊和spearman相关系数代码实现


PPMCC皮尔逊相关系数的简介

在统计学中,皮尔逊相关系数( Pearson correlation coefficient),又称皮尔逊积矩相关系数(Pearson product-moment correlation coefficient,简称 PPMCCPCCs),是用于度量两个变量X和Y之间的相关(线性相关),其值介于-1与1之间。
皮尔逊积矩相关系数在学术研究中被广泛应用来度量两个变量线性相关性的强弱,它是由Karl Pearson在19世纪80年代从Francis Galton介绍的想法基础发展起来的,但是发展后原想法相似但略有不同的,这种相关系数常被称为“Pearson的r。

In statistics, the Pearson product-moment correlation coefficient is a measure of the linear correlation (dependence) between two variables X and Y, giving a value between +1 and ?1 inclusive, where 1 is total positive correlation, 0 is no correlation, and ?1 is total negative correlation. It is widely used in the sciences as a measure of the degree of linear dependence between two variables. 在统计学中,皮尔逊积差相关系数是两个变量X和Y之间线性相关(相关)的一种度量,取值范围为+1和- 1,其中1为完全正相关,0为无相关,- 1为完全负相关。它被广泛应用于科学领域,作为衡量两个变量之间线性相关程度的指标。

切记,关于线性,这里需要强调的有两点:

  • 这里的相关系数只是用来衡量两个变量线性相关程度的指标;
  • 也就是说,你必须先确认这两个变量是线性相关的,然后这个相关系数才能告诉你他俩相关程度如何。

反之不成立:

  • 比如你先算出相关系数=0.9,就下结论说两个变量线性相关是不对的,甚至说两个变量相关(有某种更复杂的关系)也是不对的(见:case 1)
  • 另外,如果算出来相关系数=0,下结论说两个变量不是线性相关是ok的,但说他们完全不相关就得小心了,很有可能不对(见:case 2)。

如图(右上)所示,非线性相关也会导致线性相关系数很大;
好吧,你退一步,转而问:如果两个变量的相关系数很大(0.816),那能不能说两者相关呢? 答案还是不能,为什么? 因为如图(右下)所示,很可能是一个离群点(outlier)导致了相关系数变得很大。
这也不能那也不能,那怎么办?(你一定要画出图来看才行,后面会深入解释)

上图的相关系数计算结果为0,但你能说冰激凌的销量和温度不相关吗?

所以, pearson correlation coefficient = 0只能说不是线性相关,但说不定会有更复杂的相关关系(非线性相关)

wiki对于误解的进一步解释:

“The Pearson correlation coefficient indicates the strength of a linear relationship between two variables, but its value generally does not completely characterize their relationship.”
“皮尔逊相关系数 其实是衡量 两个变量线性相关程度大小的指标,但它的值的大小并不能完全地反映两个变量的真实关系。

推荐一篇文章:https://blog.csdn.net/witforeveryang/article/details/42585791

1、PPMCC的几何解释

对于相对中心性的数据(例如,一组已经通过样本均值转换为均值为0的数据),相关系数可以看做是由两随机变量样本绘出的两个向量之间夹角的余弦值。

2、PPMCC的数学特性

不论是样本的还是总体的Pearson相关系数绝对值均小于等于1,相关系数等于1或-1时,所有数据的点都精确地落在一条直线上(为样本相关系数的情况),或是两变量的分布完全由一条直线支撑(为总体相关系数的情况)。Pearson相关系数具有对称性,即:corrcorr(,)corr(,)XYYX?。?Pearson相关系数的一个关键的特性就是它并不随着变量的位置或是大小的变化而变化。也就是说,我们可以把X变为a+bX,把Y变为c+dY,其中a,b,c和d都是常数,而并不会改变相互之间的相关系数(这点对总体和样本Pearson相关系数都成立)。

1、Pearson线性相关系数对数据分布的敏感性

基于Pearson相关系数的统计推断对数据的分布类型,是很敏感的,所以,只有在数据是近似正态分布的时候,基于Fisher变换的精确检验和近似检验才能被采用,否则就可能导致错误的结论。在某些情况下,引导可用于构造置信区间,并置换测试可用于进行假设检验。在二元正态不成立时,非参数的方法在某些情况下可能会得到更有意义的结果。但这些方法的标准版本依赖于数据的互换性,也就是说,在没有特定的顺序或是数据可供分析时,可能影响相关估计的行为。

1.1、PPMCC的存在性

总体的Pearson相关系数是通过原点矩来定义的,所以二元概率分布的总体协方差以及变量边缘总体反差必须是有意义且是非零的。一些概率分布例如柯西(Cauchy)分布的反差就是无意义的,因此在X或Y服从这种分布时,p也是没有意义的。在一些实际应用中,例如那些涉及数据在尾部比较集中的情况,考虑这点就是很重要的。但是,相关系数的存在性通常不是我们关注的焦点,因为一般只要分布是有界的,那么p就可以被定义。

1.2、PPMCC的大样本性

在二元正态分布中,若已知变量的边缘分布的均值和标准差,那么由Pearson相关系数就可以完全确定该分布的特性。但是对于其它的二元分布,情况就有所不同。然而,不论变量之间的联合概率密度函数是不是正态的,Pearson相关系数都是用来衡量两个随机变量之间的线性相关程度的。对于二元正态数据,样本的相关系数是总体相关系数的极大似然估计,并且具有渐进无偏性和有效性,也即是说在数据来自正态分布,且样本大小适中或是足够大的时候,不可能构造一个比样本相关相关系数更加精确的量来估计变量之间的相关性。对于非正态总体,样本相关系数依然是渐进无偏的,但是可能不是有效的估计。只要样本均值、方差、协方差是一致的(可以通过应用大数定律来保证),样本相关系数是总体相关系数的一个一致估计量。

1.3、PPMCC鲁棒性(Robustness

与其他一些广泛应用的统计量相同,样本统计量r是不可靠的,在存在异常值的时候,r的值可能会误导我们。也就是说,PMCC不仅受变量分布的影响,还随异常值非常敏感。观察X、Y之间的散点图,就可以看出,缺少鲁棒性确实是一个很大的问题,在这种情况下,就需要采用更加稳健的参量来度量变量的相关性。但是值得一提的是,无论采用多么稳健的参量来度量变量之间的相关性,都与Pearson相关系数在数值大小保持很好的一致性。

2、PPMCC的使用条件

Pearson线性相关系数只是许多可能中的一种情况,为了使用Pearson线性相关系数必须假设数据是成对地从正态分布中取得的,并且数据至少在逻辑范畴内必须是等间距的数据。如果这两条件不符合,一种可能就是采用Spearman秩相关系数来代替Pearson线性相关系数。

3、几种的(x,y)点即相应的x、y的相关系数

几种的(x,y)点即相应的x、y的相关系数。可以看出,相关反映线性关系分散程度和方向(第一行),但是不能反映线性关系时的斜率(第二行),也不能反映出非线性关系的许多方面(最底下一行)。
注:图中第二行第四个小图的直线斜率是0,在这种情况下,相关系数是没有意义的,因为Y的方差是零。

4、相关系数大小与相关性大小的关系?

许多学者都提出了通过相关系数大小判断变量相关性的标准。但是正如Cohen(1988)所指出的一样,这些标准或多或少的有些武断,不应该过于严格地遵守。相同相关系数对相关性大小的判断取决于不同的背景和目的。同样是0.9的相关系数,在使用很精确的仪器验证物理定律的时候可能被认为是很低的,但是社会科学中,在评定许多复杂因素的贡献时,却可能被认为是很高的相关性。

相关性

正值

负值

显著相关

0.5~1.0

?1.0~?0.5

中等相关

0.3~0.5

?0.5~?0.3

低相关

0.1~0.3

?0.3~?0.1

不相关

0.0~0.09

?0.09~0.0

Spearman相关系数简介

在 统计学中, 以查尔斯·斯皮尔曼命名的斯皮尔曼等级相关系数,即spearman相关系数。经常用希腊字母ρ表示。 它是衡量两个变量的依赖性的 非参数 指标。 它利用单调方程评价两个统计变量的相关性。 如果数据中没有重复值, 并且当两个变量完全单调相关时,斯皮尔曼相关系数则为+1或?1。

Spearman秩相关系数是一个非参数性质(与分布无关)的秩统计参数,由Spearman在1904年提出,用来度量两个变量之间联系的强弱(Lehmann and D'Abrera 1998)。Spearman秩相关系数可以用于R检验,同样可以在数据的分布使得Pearson线性相关系数不能用来描述或是用来描述或导致错误的结论时,作为变量之间单调联系强弱的度量。

在统计学中,Spearman秩相关系数或称为Spearman的ρ,是由Charles Spearman命名的,一般用希腊字母ρs(rho)或是rs表示。Spearman秩相关系数是一个非参数的度量两个变量之间的统计相关性的指标,用来评估当用单调函数来描述是两个变量之间的关系有多好。在没有重复的数据的情况下,如果一个变量是两外一个变量的严格单调的函数,则二者之间的Spearman秩相关系数就是+1或-1,称变量完全Spearman相关。

Spearman秩相关系数通常被认为是排列后的变量之间的Pearson线性相关系数,在实际计算中,有更简单的计算ρs的方法。假设原始的数据xi,yi已经按从大到小的顺序排列,记x’i,y’i为原xi,yi在排列后数据所在的位置,则x’i,y’i称为变量x’i,y’i的秩次,则di=x’i-y’i为xi,yi的秩次之差。

Pearson皮尔逊相关系数和spearman相关系数总结

1、并非所有变量都可采用Pearson皮尔逊相关系数和spearman相关系数

那么有个问题,是所有的变量都可以用这两个系数吗,这两个变量当然是有区别的,区别如下。

  • 连续数据,正态分布,线性关系,用pearson相关系数是最恰当,当然用spearman相关系数也可以,效率没有pearson相关系数高。
  • 上述任一条件不满足,就用spearman相关系数,不能用pearson相关系数。
  • 两个定序测量数据(顺序变量)之间也用spearman相关系数,不能用pearson相关系数。
  • Pearson相关系数的一个明显缺陷是,作为特征排序机制,他只对线性关系敏感。如果关系是非线性的,即便两个变量具有一一对应的关系,Pearson相关性也可能会接近0。

2、Pearson皮尔逊和spearman相关系数代码实现

1
2
3
4
5
6
import pandas as pd
data = loans_2007[["funded_amnt", "funded_amnt_inv"]]
#计算皮尔逊系数
print(data.corr())
#计算spearman系数
print(data.corr('spearman'))

参考文章
https://www.mathsisfun.com/data/correlation.html
皮尔逊积矩相关系数Pearsonproduct-momentcorrelationcoefficient
关于相关系数的一些理解误区