如何在 r 中计算 spearman 等级相关


在统计学中,相关性是指两个变量之间关系的强度和方向。相关系数的值范围为 -1 到 1,具有以下解释:

  • -1:两个变量之间完美的负关系
  • 0:两个变量之间没有关系
  • 1:两个变量之间完美的正相关关系

一种特殊类型的相关性称为Spearman 等级相关性,用于衡量两个排名变量之间的相关性。 (例如,学生的数学考试成绩相对于其在班级中的科学考试成绩的排名)。

要计算 R 中两个变量之间的斯皮尔曼等级相关性,我们可以使用以下基本语法:

 corr <- cor. test (x, y, method = ' spearman ')

以下示例展示了如何在实践中使用此功能。

示例 1:向量之间 Spearman 排名的相关性

以下代码显示了如何计算 R 中两个向量之间的斯皮尔曼等级相关性:

 #define data
x <- c(70, 78, 90, 87, 84, 86, 91, 74, 83, 85)
y <- c(90, 94, 79, 86, 84, 83, 88, 92, 76, 75)

#calculate Spearman rank correlation between x and y
horn. test (x, y, method = ' spearman ')

	Spearman's rank correlation rho

data: x and y
S = 234, p-value = 0.2324
alternative hypothesis: true rho is not equal to 0
sample estimates:
       rho 
-0.4181818

从结果中,我们可以看到 Spearman 等级相关性为-0.41818 ,相应的 p 值为0.2324

这表明两个向量之间存在负相关。

然而,由于相关性的 p 值不小于 0.05,因此相关性在统计上不显着。

示例 2:数据框中各列之间的斯皮尔曼等级相关性

以下代码显示如何计算数据框中两列之间的 Spearman 等级相关性:

 #define data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'),
                 points=c(67, 70, 75, 78, 73, 89, 84, 99, 90, 91),
                 assists=c(22, 27, 30, 23, 25, 31, 38, 35, 34, 32))

#calculate Spearman rank correlation between x and y
horn. test (df$points, df$assists, method = 'spearman')

	Spearman's rank correlation rho

data: df$points and df$assists
S = 36, p-value = 0.01165
alternative hypothesis: true rho is not equal to 0
sample estimates:
      rho 
0.7818182 

从结果中,我们可以看到 Spearman 等级相关性为0.7818 ,相应的 p 值为0.01165

这表明两个向量之间存在很强的正相关性。

由于相关性的 p 值小于 0.05,因此相关性具有统计显着性。

其他资源

如何在 R 中计算偏相关
如何计算 R 中的自相关
如何计算R中的滑动相关性
如何以 APA 格式报告 Spearman 相关性

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注