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

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

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

课程地址: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

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

相关文章
|
9月前
|
传感器 人工智能 物联网
健康监测设备的技术革命:AI+物联网如何让你随时掌握健康数据?
健康监测设备的技术革命:AI+物联网如何让你随时掌握健康数据?
1181 19
|
6月前
|
人工智能 关系型数据库 数据库
在仓颉开发语言中使用数据库
本文介绍了在仓颉开发语言中操作关系型数据库的流程,包括获取数据库、建表、增删改查等操作,并提供了详细的代码示例,帮助开发者快速掌握HarmonyOS下数据库的应用。
|
6月前
|
机器学习/深度学习 敏捷开发 人工智能
2025产品需求管理最佳实践:从流程优化到工具选型 详解项目需求管理实战
本文深入探讨产品需求管理的核心概念与全流程优化方法,涵盖需求采集、分析、优先级排序及落地实现等关键环节。通过多维度需求采集、科学评估与敏捷迭代,结合团队角色分工,确保需求价值最大化。同时对比评测板栗看板、Jira、Axosoft等管理工具,并展望AI赋能下的智能生成、预测性分析与自动化流程新趋势,助力企业精准把握市场动态,打造爆款产品。掌握需求管理精髓,是产品成功的关键驱动力。
|
10月前
|
机器学习/深度学习 人工智能 测试技术
MoBA:LLM长文本救星!月之暗面开源新一代注意力机制:处理1000万token能快16倍,已在Kimi上进行验证
MoBA 是一种新型注意力机制,通过块稀疏注意力和无参数门控机制,显著提升大型语言模型在长上下文任务中的效率。
610 3
|
人工智能 自然语言处理
FBI-LLM低比特基础大语言模型来了,首个完全从头训练的二值化语言模型
【8月更文挑战第22天】《FBI-LLM:通过自回归蒸馏从头开始扩展全二值化大语言模型》由Ma等学者发布于arXiv。该研究呈现了首个完全从头训练的全二值化大语言模型FBI-LLM,在不牺牲性能的前提下大幅降低计算资源需求。通过自回归蒸馏技术,FBI-LLM在多种任务上展现出与高精度模型相当的表现,为二值化模型的发展开辟新路径,并有望推动专用硬件的进步。研究者公开了所有相关资源以促进领域内的进一步探索。
237 10
|
存储 运维 分布式计算
HDFS 如何容错?
【8月更文挑战第31天】
662 0
|
存储 编译器 程序员
C语言数据类型详解
C语言数据类型详解
echarts的xAxis和yAxis——x轴y轴以及网格线的详细配置
echarts的xAxis和yAxis——x轴y轴以及网格线的详细配置
6097 0
|
Ubuntu 关系型数据库 分布式数据库
开源PolarDB -X 部署安装
本文记录了在Ubuntu 20.04上部署阿里云分布式数据库PolarDB-X的步骤,包括环境准备、安装依赖、下载源码、编译安装、配置启动,并分享了遇到的配置错误、依赖冲突和日志不清等问题。作者建议官方改进文档细节、优化代码质量和建立开发者社区。安装历史记录显示了相关命令行操作。尽管过程有挑战,但作者期待产品体验的提升。
1895 6
|
数据采集 自然语言处理 数据可视化
ECharts 词云案例四—电影《千与千寻》部分短评
**使用ECharts和电影《千与千寻》短评创建的词云案例展示了数据可视化的力量。通过Python处理评论,提取关键词并计算频率,利用jieba和WordCloud生成词云,ECharts进一步增强了视觉效果。词云突出了角色如“千寻”、“无脸男”及关键词“勇气”、“成长”,揭示了观众的情感共鸣。示例代码和资源可在链接中获取。**
278 0
 ECharts 词云案例四—电影《千与千寻》部分短评