斯皮尔曼等级相关 | 学习笔记

简介: 快速学习斯皮尔曼等级相关

开发者学堂课程【人工智能必备基础:概率论与数理统计:斯皮尔曼等级相关】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/545/detail/7457


斯皮尔曼等级相关

内容介绍

一.画出上节课中的图像

二.等级变量的相关分析

三.斯皮尔曼等级相关

 

一.画出上节课中的图像

import matplotlib.pyplot as plt

plt.scatter(x,y)

plt.show()

image.png

 

二.等级变量的相关分析

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

先来看一个小实验,两个基因 A、B,他们的表达量关系是 B=2A,在 8 个样本中的表达量值如下:

image.png

image.png

计算得出,他们的皮尔森相关系数 r=1,P-vlaue0,从以上可以直观看出,如果两个基因的表达量呈线性关系,则具有显著的皮尔森相关性。

以上是两个基因呈线性关系的结果。如果两者呈非线性关系,例如暴函数关系(曲线关系),那又如何呢?我们再试试。

两个基因 A、D,他们的关系是 D=A^10,在 8 个样本中的表达量值如下:

image.png

image.png

输入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 等级相关。

简单点说,就是无论两个变量的数据如何变化,符合什么样的分布,我们只关心每个数值在变量内的排列顺序。如果两个变量的对应值,在各组内的排序顺位是相同或类似的,则具有显著的相关性。

image.png

n 为等级个数

d 为二列成对变量的等级差数

(d 越大最终数值越小)

2.例题

将上表转换成排序等级

image.png

利用斯皮尔曼等级相关计算 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 名高三学生学习潜在能力测验与自学能力测验成绩如下表所示,问两者相关情况如何?

image.png

计算等级相关系数

image.png

等级相关系数的显著性检验

与积差相关系数检验的方法相同

10 个学生学习潜在能力与自学能力测验成绩相关系数为 0.891,问从总体上说,两者是否存在相关?

计算检验统计量的值:

image.png

所以学生的学习潜在能力与自学能力之间存在着较高的正相关。

相关文章
|
11月前
|
存储 云安全 运维
什么是等级保护, 等保2.0详解(中
什么是等级保护, 等保2.0详解
|
3月前
|
监控 安全 数据安全/隐私保护
等级保护 —— 安全控制点,安全要求
等级保护 —— 安全控制点,安全要求
48 0
|
7月前
|
安全
等级保护与分级保护的关系和区别
等级保护与分级保护既有联系又有区别:等级保护与分级保护本质的区别是等级保护适用的对象为非涉密信息系统,分级保护适用的对象为涉密信息系统。
83 0
|
8月前
|
云安全 人工智能 Cloud Native
阿里云的认证有什么方向?几个等级?
通过阿里云认证就可获得入职阿里云的机会,还有可能被阿里云的合作企业录取。
|
10月前
|
Python
学生成绩及等级
学生成绩及等级
60 0
|
10月前
|
存储 云安全 运维
什么是等级保护, 等保2.0详解
什么是等级保护, 等保2.0详解
1109 0
|
11月前
|
存储 监控 安全
什么是等级保护, 等保2.0详解(下)
什么是等级保护, 等保2.0详解
|
11月前
|
人工智能 运维 监控
什么是等级保护, 等保2.0详解(上)
什么是等级保护, 等保2.0详解
面试中一个暴露能力等级的问题
背景 通常我写在文章发表出来之前我问的一些面试题都是我要下架的面试题。就是说我有一个面试题库,我会经常更新,淘汰一些。一般淘汰的问题我才敢拿出来全面分析,避免造成面试时候的不公平。但是有一道题,我面试时必问,我也建议其他的面试官考察这道题。如果面试者能提前准备,回答的很漂亮,再好不过。但是这道题就像自我介绍一样,是个引子。回答的好,会引出下面很多问题。回答的不好,直接决定能力等级的打分。这道题就是:请介绍你遇到的印象最深的一个问题或者故障,请介绍你是怎么发现、处理、分析和解决的。
|
架构师 云计算
阿里云的认证有几个等级?适合什么人考?
为什么在这样的大环境下,还有一部分人能挣钱,因为此消彼长,实体经济收到冲击的情况下,虚拟经济必然要大幅增长,这样一来市场就需要大量的人才来满足需求。
阿里云的认证有几个等级?适合什么人考?