机器学习数学基础:32.斯皮尔曼等级相关

news/2025/2/26 1:19:42

斯皮尔曼等级相关教程

一、定义与原理

斯皮尔曼等级相关系数(Spearman’s rank - correlation coefficient),常用 ρ \rho ρ表示,是一种非参数统计量,用于衡量两个变量的等级之间的关联程度。它基于变量的秩次(排序后的位置)进行计算,不依赖于数据的分布形态,能有效处理非线性关系和非数值型的有序数据。取值范围在 − 1 -1 1 1 1 1之间, ρ   = 1 \rho \ = 1 ρ =1表示完全正相关,即一个变量的等级增加时,另一个变量的等级也严格增加; ρ   = − 1 \rho \ = - 1 ρ =1表示完全负相关; ρ   = 0 \rho \ = 0 ρ =0表示不存在等级相关关系。

二、适用场景

  • 数据为定序数据:如比赛名次、成绩等级、满意度排序等,例如分析不同餐厅在美食评选中的排名和顾客推荐率排名的关系。
  • 数据分布未知或不满足正态分布:当无法确定数据是否服从正态分布,或者明确知道数据不服从正态分布时,斯皮尔曼等级相关系数是很好的选择。
  • 变量间为非线性关系:只要两个变量之间存在单调变化趋势(不一定是线性),都可以用它来衡量相关性,比如植物生长时间和植株高度的关系(可能是先慢后快再趋于平稳的非线性增长) 。

三、计算步骤

斯皮尔曼等级相关系数计算

  1. 数据排序:分别对两个变量的数据进行排序,确定每个数据在各自变量中的等级。若存在相同数值,通常取平均等级。例如,有三个数据 3 3 3 3 3 3 5 5 5,它们的等级分别为 1.5 1.5 1.5 ( 1 + 2 ) ÷ 2 (1 + 2)\div2 (1+2)÷2), 1.5 1.5 1.5 3 3 3
  2. 计算等级差:对于每一对数据,计算它们的等级差 d i d_{i} di
  3. 计算等级差的平方:得到 d i 2 d_{i}^{2} di2,并对所有的 d i 2 d_{i}^{2} di2求和,得到 ∑ d i 2 \sum d_{i}^{2} di2
  4. 计算相关系数:根据公式 ρ   = 1 − 6 ∑ d i 2 n 3 − n \rho \ = 1-\frac{6\sum d_{i}^{2}}{n^{3}-n} ρ =1n3n6di2 n n n为样本数量)计算斯皮尔曼等级相关系数。

t检验步骤

  1. 建立假设
    • 原假设 H 0 H_0 H0:总体的斯皮尔曼等级相关系数 ρ   = 0 \rho \ = 0 ρ =0,即总体中两个变量之间不存在等级相关关系。
    • 备择假设 H 1 H_1 H1:总体的斯皮尔曼等级相关系数 ρ ≠ 0 \rho\neq 0 ρ=0,即总体中两个变量之间存在等级相关关系。
  2. 计算t统计量:在斯皮尔曼等级相关的t检验中,可使用公式 t   = r R n − 2 1 − r R 2 t\ =\frac{r_{R}\sqrt{n - 2}}{\sqrt{1 - r_{R}^{2}}} t =1rR2 rRn2 (这里 r R r_{R} rR表示计算得到的斯皮尔曼等级相关系数, n n n为样本数量)。此公式与积差相关系数(如Pearson相关系数)检验中t统计量的计算形式相同,这样做是因为在一定条件下,基于等级数据计算出的相关系数的抽样分布近似于t分布。
  3. 确定临界值:根据给定的显著性水平 α \alpha α(常用的有 0.05 0.05 0.05 0.01 0.01 0.01等)和自由度 d f   = n − 2 df \ = n - 2 df =n2,查阅 t t t分布表得到临界值 t α / 2 ( n − 2 ) t_{\alpha/2}(n - 2) tα/2(n2)
  4. 做出决策
    • 如果 ∣ t ∣ > t α / 2 ( n − 2 ) \vert t\vert>t_{\alpha/2}(n - 2) t>tα/2(n2),则拒绝原假设 H 0 H_0 H0,认为总体中两个变量之间存在等级相关关系。
    • 如果 ∣ t ∣ ≤ t α / 2 ( n − 2 ) \vert t\vert\leq t_{\alpha/2}(n - 2) ttα/2(n2),则不能拒绝原假设 H 0 H_0 H0,即没有足够证据表明总体中两个变量之间存在等级相关关系。

四、实例演示

斯皮尔曼等级相关系数计算实例

研究 6 6 6名学生的语文成绩排名和英语成绩排名的相关性,数据如下:

学生编号语文成绩排名 X X X英语成绩排名 Y Y Y d i d_{i} di(等级差) d i 2 d_{i}^{2} di2(等级差的平方)
123-11
24224
31100
434-11
55500
66600

计算 ∑ d i 2   = 1 + 4 + 0 + 1 + 0 + 0   = 6 \sum d_{i}^{2}\ =1 + 4+0 + 1+0 + 0 \ = 6 di2 =1+4+0+1+0+0 =6 n   = 6 n \ = 6 n =6
代入公式可得:
ρ   = 1 − 6 × 6 6 3 − 6   = 1 − 36 216 − 6   = 1 − 36 210 ≈ 0.83 \begin{align*} \rho&\ =1-\frac{6\times6}{6^{3}-6}\\ &\ =1-\frac{36}{216 - 6}\\ &\ =1-\frac{36}{210}\\ &\approx0.83 \end{align*} ρ =16366×6 =1216636 =1210360.83
结果表明,这 6 6 6名学生的语文和英语成绩排名有较强的正相关关系。

t检验实例

针对上述例子,假设显著性水平 α   = 0.05 \alpha \ = 0.05 α =0.05

  1. 已知 r R ≈ 0.83 r_{R} \approx 0.83 rR0.83 n   = 6 n \ = 6 n =6,计算 t t t统计量:
    t   = 0.83 6 − 2 1 − 0.8 3 2   = 0.83 × 2 1 − 0.6889   = 1.66 0.3111 ≈ 2.97 \begin{align*} t&\ =\frac{0.83\sqrt{6 - 2}}{\sqrt{1 - 0.83^{2}}}\\ &\ =\frac{0.83\times2}{\sqrt{1 - 0.6889}}\\ &\ =\frac{1.66}{\sqrt{0.3111}}\\ &\approx2.97 \end{align*} t =10.832 0.8362  =10.6889 0.83×2 =0.3111 1.662.97
  2. 自由度 d f   = n − 2   = 6 − 2   = 4 df \ = n - 2 \ = 6 - 2 \ = 4 df =n2 =62 =4,查 t t t分布表得 t 0.025 ( 4 )   = 2.776 t_{0.025}(4)\ = 2.776 t0.025(4) =2.776
  3. 因为 ∣ 2.97 ∣ > 2.776 \vert 2.97\vert> 2.776 ∣2.97∣>2.776,所以拒绝原假设 H 0 H_0 H0,可以认为在总体中,学生的语文成绩排名和英语成绩排名之间存在等级相关关系。

五、注意事项

  • 只反映等级相关:它衡量的是变量等级之间的关联,并非原始数据值之间的精确关系。
  • 对单调关系敏感:只能检测单调的相关关系,若变量间关系复杂非单调,可能无法准确反映相关性。
  • 样本数量影响:样本数量过少可能导致结果不稳定,一般建议样本量 n ≥ 10 n\geq 10 n10
  • t检验前提:虽然斯皮尔曼等级相关的t检验形式与积差相关类似,但在使用时要注意其基于等级数据的特点,以及样本数据对近似t分布条件的满足程度。当样本量较小时,t检验结果的准确性可能会受到一定影响。

http://www.niftyadmin.cn/n/5867024.html

相关文章

【第五节】C++设计模式(创建型模式)-Prototype(原型)模式

目录 一、问题背景 二、 模式选择 三、讨论总结 一、问题背景 在软件开发中,有时我们需要通过已有对象来创建新对象,而不是从头开始构建。这种需求让我想起了现代制造业中的 3D 打印技术。通过扫描一个现有的物体,3D 打印机可以快速复制出…

SpringSecurity基于注解实现方法级别授权:@PreAuthorize、@PostAuthorize、@Secured

Spring Security 访问权限系列文章: 《SpringSecurity基于配置方法控制访问权限:MVC匹配器、Ant匹配器》 《SpringSecurity基于注解实现方法级别授权:@PreAuthorize、@PostAuthorize、@Secured》 《SpringSecurity设置白名单》 方法调用授权的含义很明确,与 HTTP 端点级别的…

【GESP】C++二级模拟 luogu-b3995, [GESP 二级模拟] 小洛的田字矩阵

GESP二级模拟题,多层循环、分支语句练习,难度★✮☆☆☆。 题目题解详见:https://www.coderli.com/gesp-2-luogu-b3995/ 【GESP】C二级模拟 luogu-b3995, [GESP 二级模拟] 小洛的田字矩阵 | OneCoderGESP二级模拟题,多层循环、分…

Codes 开源免费研发项目管理平台 2025年第一个大版本3.0.0 版本发布及创新的轻IPD实现

Codes 简介 Codes 是国内首款重新定义 SaaS 模式的开源项目管理平台,支持云端认证、本地部署、全部功能开放,并且对 30 人以下团队免费。它通过创新的方式简化研发协同工作,使敏捷开发更易于实施。并提供低成本的敏捷开发解决方案&#xff0…

【RK3588嵌入式图形编程】-SDL2-构建交互式按钮

构建交互式按钮 文章目录 构建交互式按钮1、回顾UI组件2、创建按钮类3、鼠标悬停事件4、处理点击事件5、创建派生按钮6、扩展功能6.1 禁用和启用按钮6.2 鼠标悬停反应7、总结在本文中,将探索构建响应用户输入的UI组件的技术。 在本文中,我们将学习如何使用SDL在C++中构建交互…

大语言模型中的 Token如何理解?

在大语言模型中,Token 是文本处理的基本单元,类似于“文字块”,模型通过将文本分割成Token来理解和生成内容。举一个形象一点的例子,可以理解为 AI 处理文字时的“最小积木块”。就像搭乐高时,每块积木是基础单位一样&…

el-select滚动获取下拉数据;el-select滚动加载

el-select下拉获取数据 1.解决问题2.封装MyScrollSelect组件3.使用MyScrollSelect组件 1.解决问题 场景:下拉数据量过大,后端提供一个分页查询接口;需要每次滚动加载下一页的下拉数据 且单选的状态,需要支持回显,通过n…

unity学习52:UI的最基础组件 rect transform,锚点anchor,支点/轴心点 pivot

目录 1 image 图像:最简单的UI 1.1 图像的基本属性 1.2 rect transform 1.3 image的component: 精灵 → 图片 1.4 修改颜色color 1.5 修改材质 1.6 raycast target 1.7 maskable 可遮罩 1.8 imageType 1.9 native size 原生大小 2 rect transform 2.1 …