相关分析——斯皮尔曼等级相关Python实现

目录

一、等级变量的相关分析

二、斯皮尔曼等级相关

三、斯皮尔曼实例


一、等级变量的相关分析

当测量得到的数据不是等距或等比数据,而是具有等级顺序的数据;或者得到的数据是等距或等比数据,但其所来自的总体分布不是正态分布,不满足皮尔森相关系数(积差相关)的要求。这时就要运用等级相关系数。

二、斯皮尔曼等级相关

当两个变量值以等级次序排列或以等级次序表示时,两个相应总体并不一定呈正态分布,样本容量也不一定大于30,表示这两变量之间的相关,称为Spearman等级相关。

(1)公式

相关分析——斯皮尔曼等级相关Python实现_第1张图片

 参数说明:n为等级个数;d为二列成对变量的等级差级。

比如:

相关分析——斯皮尔曼等级相关Python实现_第2张图片

 这里斯皮尔曼等级相关的显著性显然高于皮尔森相关。因为虽然两个基因的表达量是非线性关系,但两个基因表达量在所有样本中的排列顺序是完全相同的。

(2)代码:

x=[10.35,6.24,3.18,8.46,3.21,7.65,4.32,8.66,9.12,10.31]
y=[5.1,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.stats.stats.rankdata(y)
print(x,y)
correlation,pvalue=stats.stats.spearmanr(x,y)
print('correlation:',correlation)
print('pvalue:',pvalue)

先计算等级在斯皮尔曼(这个函数里其实也包含了排列顺序,但我们也可以掉函数排序(如上图)

结果:

三、斯皮尔曼实例

 10名高三学生学习潜在能力测验与自学能力测验成绩如下,问两者相关情况如何?

相关分析——斯皮尔曼等级相关Python实现_第3张图片

解答过程:

第一步先计算相关系数:相关分析——斯皮尔曼等级相关Python实现_第4张图片

 第二步t显著性检验:相关分析——斯皮尔曼等级相关Python实现_第5张图片

相关分析——斯皮尔曼等级相关Python实现_第6张图片

你可能感兴趣的:(python,python,数据分析)