开发者学堂课程【人工智能必备基础:概率论与数理统计:斯皮尔曼等级相关】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/545/detail/7457
斯皮尔曼等级相关
内容介绍
一.画出上节课中的图像
二.等级变量的相关分析
三.斯皮尔曼等级相关
一.画出上节课中的图像
import matplotlib.pyplot as plt
plt.scatter(x,y)
plt.show()
二.等级变量的相关分析
当测量得到的数据不是等距或等比数据,而是具有等级顺序的数据;或者得到的数据是等距或等比数据,但其所来自的总体分布不是正态的,不满足求皮尔森相关系数(积差相关)的要求。这时就要运用等级相关系数。
先来看一个小实验,两个基因 A、B,他们的表达量关系是 B=2A,在 8 个样本中的表达量值如下:
计算得出,他们的皮尔森相关系数 r=1,P-vlaue0,从以上可以直观看出,如果两个基因的表达量呈线性关系,则具有显著的皮尔森相关性。
以上是两个基因呈线性关系的结果。如果两者呈非线性关系,例如暴函数关系(曲线关系),那又如何呢?我们再试试。
两个基因 A、D,他们的关系是 D=A^10,在 8 个样本中的表达量值如下:
输入import numpy as np
import scipy.stats as stats
import scipy
x=[0.6,0.7,1,2.1,2.9,3.2,5.5,6.7] y=np.power(x,10)
correlation,pvalue=stats.stats.pearsonr(x,y) print('correlation’,correlation)
print pvalue,pvalue
输出correlation 0.765928796314
pvalue 0.0266964972088
可以看到,基因 A、D 相关系数,无论数值还是显著性都下降了。皮尔森相关系数是一种线性相关系数,因此如果两个变量呈线性关系的时候,具有最大的显著性。对于非线性关系(例如 A、D 的幂函数关系),则其对相关性的检测功效会下降。
这时我们可以考虑另外一个相关系数计算方法:斯皮尔曼等级相关。
三.斯皮尔曼等级相关
1.概念
当两个变量值以等级次序排列或以等级次序表示时,两个相应总体并不一定呈正态分布,样本容量也不一定大于 30,表示这两变量之间的相关,称为 Spearman 等级相关。
简单点说,就是无论两个变量的数据如何变化,符合什么样的分布,我们只关心每个数值在变量内的排列顺序。如果两个变量的对应值,在各组内的排序顺位是相同或类似的,则具有显著的相关性。
n 为等级个数
d 为二列成对变量的等级差数
(d 越大最终数值越小)
2.例题
将上表转换成排序等级
利用斯皮尔曼等级相关计算 A、D 基因表达量的相关性,结果是: r=1,p-value=4.96e-05(得出显著性高,相关性强)
这里斯皮尔曼等级相关的显著性显然高于皮尔森相关。这是因为虽然两个基因的表达量是非线性关系,但两个基因表达量在所有样本中的排列顺序是完全相同的,因为具有极显著的斯皮尔曼等级相关性。
3.代码
输入X= [10.35,6.24,3.18,8.46,3.21,7.65,4.32,8.66,9.12,10.31]
y=[5.13,3.15,1.67,4.33, 1.76,4.11, 2.11, 4.88, 4.99,5.12]
correlation,pvalue=stats.stats.spearmanr(x,y)
print ('correlation',correlation)
print (pvalue’,pvalue)
输出correlation1.0
pvalue 664689742203e-64
在 scipy 中找到斯皮尔曼如何使用即可
输入[10.35,6.24,3.18,8.46,3.21,7.65,4.32,8.66,9.12,10.31] y=[5.13,3.15.1.67, 4.33,1.76, 4.11. 2.11. 4.88, 4.99,5.12] x=scipy.stats.stats.rankdata(x)
y=scipy.statsstatsrankdata(y)
print (x,y)
correlation,pvalue=stats.stats.spearmanr(x,y)
print ('correlation',correlation)
print (pvalue,pvalue)
[10. 4. 1. 6. 2. 5. 3. 7. 8. 9.] [ 10. 4. 6. 2. 3. 7. 8. 9.]
correlation 10
pvalue 6.64689742203e-64
4.斯皮尔曼实例
10 名高三学生学习潜在能力测验与自学能力测验成绩如下表所示,问两者相关情况如何?
计算等级相关系数
等级相关系数的显著性检验
与积差相关系数检验的方法相同
10 个学生学习潜在能力与自学能力测验成绩相关系数为 0.891,问从总体上说,两者是否存在相关?
计算检验统计量的值:
所以学生的学习潜在能力与自学能力之间存在着较高的正相关。