斯皮尔曼相关系数的解读

最近在编写程序的时候使用到了scipy.stats.spearmanr这个库,由于自己之前未曾使用过斯皮尔曼相关系数,对于这个调用函数理解不够深度,特编写文章记录自己的学习过程。
斯皮尔曼相关系数是一个衡量两个变量的依赖性的非参数指标,它并不假设两个数据集是相同分布的,像其他的相关系数一样,这个变量的范围从-1到+1,0暗示着两个参数之间没有相关性。如果数据中没有重复值,并且两个变量完全单调相关时,斯皮尔曼相关系数为+1或-1,当X增加时,Y趋向于增加时,斯皮尔曼相关系数为正,而当X增加并且Y趋向于减少时,斯皮尔曼相关系数则为负。
斯皮尔曼相关系数被定义成等级变量之间的皮尔逊相关系数,对于样本容量为n的样本,n个原始数据被转换成登记数据,相关系数 ρ \rho ρ
ρ = ∑ i ( x i − x ˉ ) ∗ ( y i − y ) ∑ i ( x i − x ˉ ) ∗ ∑ i ( y i − y ˉ ) ( 1 ) \rho = \frac{\sum_{i}(x_{i}-\bar{x})*(y_{i}-y)}{\sqrt{\sum_{i}(x_{i}-\bar{x})*\sum_{i}(y_{i}-\bar{y})}}(1) ρ=i(xixˉ)i(yiyˉ) i(xixˉ)(yiy)(1)
简化公式为
ρ = 1 − 6 ∗ s u m d i 2 n ∗ ( n 2 − 1 ) ( 2 ) \rho = 1-\frac{6*sumd_{i}^{2}}{n*(n^{2}-1)}(2) ρ=1n(n21)6sumdi2(2)
比如如下的图计算相应的斯皮尔曼相关系数
斯皮尔曼相关系数的解读_第1张图片
使用公式(1)的时候,先求出身高的平均和体重的平均,然后对于每一项求出相应的值并求和,使用公式(2)的时候,直接套用相应的斯皮尔曼公式(2)求得相应的值
实战调用一下对应的库函数
斯皮尔曼相关系数的解读_第2张图片在得到的p值中,如果p值大于0.05,则没有显著性差异,也就是说没有理由认为显著性差异存在,即没有相关性,如果p值小于0.05,我们可以认为存在显著性差异。这里的p值大于0.088,即使用斯皮尔曼相关系数验证相关性可以成立。
r: 这个相关系数在-1和+1之间变化,0表示没有相关性。相关系数的绝对值约接近1,相关性越高,
p: p值粗略地表示不相关系统产生具有Spearman相关性的数据集的概率(通俗的说,就是2个变量不相关的概率,总体上,若2个变量的相关系数越高,则P值会相对较低)。p值并不完全可靠,但对于大于500左右的数据集可能是合理的。
r表示相关系数,p表示不相关的概率,r与p相当于一个互补的关系,相关系数越大,不相关的概率就越小

你可能感兴趣的:(pytorch笔记,nlp学习笔记)