斯皮尔曼相关(Spearman correlation)系数

一.相关定义

1.什么是秩相关系数

秩相关系数(Coefficient of Rank Correlation),又称等级相关系数,反映的是两个随机变量的的变化趋势方向和强度之间的关联,是将两个随机变量的样本值按数据的大小顺序排列位次,以各要素样本值的位次代替实际数据而求得的一种统计量。它是反映等级相关程度的统计分析指标,常用的等级相关分析方法有Spearman相关系数和Kendall秩相关系数等。

2.Spearman相关系数:也称为Spearman秩相关系数,是一种非参数的秩相关系数,用来衡量两个变量的依赖性。

二.进阶举例

1.基本步骤

  • 将每个变量的观测值转换为等级(秩)。
  • 计算每个变量的等级之间的差异。
  • 根据等级差异计算Spearman相关系数。

2.计算公式

3.数据特点

  • 取值范围 :Spearman相关系数的取值范围是 -1 到 1。
    • ρ=1:完全正相关。
    • ρ=−1:完全负相关。
    • ρ=0:无线性相关。
  • 适用范围:适用于非线性关系的评估,因为它衡量的是单调关系,而不仅仅是线性关系。

三.数据转化为等级

步骤 1: 排序

首先,将每个变量的数据按照数值大小进行排序。如果数值相同,则给它们相同的等级。

步骤 2: 分配等级

接着,给每个数据点分配一个等级。等级通常从1开始,对于相同的数值,可以采用以下两种常见的方法之一来分配等级:

方法 1: 平均等级(Average Rank)

如果两个或多个数值相同,则给它们分配相同的平均等级。例如,如果有两个数据点都排在第三位,则这两个点都被赋予等级3.5。

方法 2: 竞争排名(Competitive Rank)

另一种方法是给相同的数值分配连续的等级,然后取这些等级的平均值。例如,如果有两个数据点都排在第三位,则下一个数据点将排在第五位,前两个数据点则都取(3+4)/2 = 3.5作为等级。

步骤 3: 处理异常值

如果数据集中有缺失值或异常值,可以将其排除在等级分配之外,或者根据具体情况给它们分配最低或最高等级。

下面是一个具体的例子:

假设我们有以下原始数据:

cpp 复制代码
X: 3, 8, 4, 7, 2
步骤 1: 排序

首先,我们将数据按照大小排序:

cpp 复制代码
排序后的X: 2, 3, 4, 7, 8
步骤 2: 分配等级

然后,我们给每个数据点分配一个等级:

cpp 复制代码
等级X: 1, 2, 3, 4, 5

在这个例子中,所有数据都是唯一的,因此每个数据点都有一个唯一的等级。

cpp 复制代码
Y: 5, 10, 9, 6, 1

我们首先按照大小排序:

cpp 复制代码
排序后的Y: 1, 5, 6, 9, 10

然后分配等级:

cpp 复制代码
等级Y: 1, 2, 3, 4, 5

在这个例子中,所有数值也是唯一的,所以每个数值都有自己的等级。

处理相同数值的情况

如果有相同的数值,比如:

cpp 复制代码
Y: 5, 10, 9, 6, 5

排序后仍然是:

cpp 复制代码
排序后的Y: 5, 5, 6, 9, 10

现在我们使用平均等级的方法来分配等级:

cpp 复制代码
等级Y: 1.5, 1.5, 3, 4, 5

这里两个5的数值都得到了等级2,因此它们的平均等级是(1+2)/2 = 1.5。

四.Spss使用举例

如上表,相关系数为-0.712,P值(sig)小于0.05,相关系数有统计学意义,从而表示血红蛋白含量与贫血体征存在相关关系,而且是负相关,即贫血体征越严重,血红蛋白含量越低。

相关推荐
即兴小索奇3 小时前
AI智能金融风控新实践:从信贷秒批到支付防护,筑牢金融安全新屏障
人工智能·ai·商业·ai商业洞察·即兴小索奇
AKAMAI4 小时前
应用平台更新:可定制目录、基于Git的密钥管理与K8s项目自动化管理
人工智能·云原生·云计算
机器之心4 小时前
NeurIPS 2025:高分论文也可能被拒,只为保住那25%左右的接收率?
人工智能·openai
余衫马4 小时前
ModelScope 开发环境配置指南
人工智能
力扣每日一题4 小时前
【LeetCode】19、删除链表的倒数第N个结点
算法·leetcode·链表
aneasystone本尊4 小时前
GraphRAG 索引构建之知识提取(三)
人工智能
悦悦子a啊4 小时前
[Java]PTA:jmu-java-01入门-基本输入
java·开发语言·算法
前端双越老师4 小时前
AI 编程实践 VSCode + Copilot 从 0 开发 Chatbot 页面
人工智能·agent·ai编程
胖墩会武术4 小时前
【PyTorch项目实战】SAM(Segment Anything Model) —— 致力于建立第一个图像分割基础模型
人工智能·pytorch·python·sam
度假的小鱼5 小时前
004 解构 NLP 框架体系:从经典工具到新一代技术方案
人工智能·自然语言处理