如何在 r 中计算偏相关


在统计学中,我们经常使用皮尔逊相关系数来衡量两个变量之间的线性关系。

然而,有时我们想在控制第三个变量的同时了解两个变量之间的关系。

例如,假设我们想要衡量学生的学习时数与期末考试成绩之间的关联,同时控制学生在班级中的当前成绩。

在这种情况下,我们可以使用偏相关来衡量学习时间和期末考试成绩之间的关系。

本教程介绍如何在 R 中计算偏相关。

示例:R 中的偏相关

假设我们有以下数据框,显示 10 名学生的当前成绩、学习总时数和期末考试成绩:

 #create data frame
df <- data. frame (currentGrade = c(82, 88, 75, 74, 93, 97, 83, 90, 90, 80),
                 hours = c(4, 3, 6, 5, 4, 5, 8, 7, 4, 6),
                 examScore = c(88, 85, 76, 70, 92, 94, 89, 85, 90, 93))

#view data frame
df

   currentGrade hours examScore
1 82 4 88
2 88 3 85
3 75 6 76
4 74 5 70
5 93 4 92
6 97 5 94
7 83 8 89
8 90 7 85
9 90 4 90
10 80 6 93

为了计算数据框中变量的每个成对组合之间的部分相关性,我们可以使用ppcor 库中的pcor()函数:

 library (ppcor)

#calculate partial correlations
pcor(df)

$estimate
             currentGrade hours examScore
currentGrade 1.0000000 -0.3112341 0.7355673
hours -0.3112341 1.0000000 0.1906258
examScore 0.7355673 0.1906258 1.0000000

$p.value
             currentGrade hours examScore
currentGrade 0.00000000 0.4149353 0.02389896
hours 0.41493532 0.0000000 0.62322848
examScore 0.02389896 0.6232285 0.00000000

$statistic
             currentGrade hours examScore
currentGrade 0.0000000 -0.8664833 2.8727185
hours -0.8664833 0.0000000 0.5137696
examScore 2.8727185 0.5137696 0.0000000

$n
[1] 10

$gp
[1] 1

$method
[1] "pearson"

以下是如何解释结果:

学习时间和期末考试成绩之间的部分相关性:

学习时间和期末考试成绩之间的偏相关为0.191 ,呈现较小的正相关。随着学习时间的增加,假设当前成绩保持不变,考试成绩也往往会增加。

此偏相关的 p 值为0.623 ,在 α = 0.05 时不具有统计显着性。

当前成绩和期末考试成绩之间的部分相关性:

当前成绩与期末考试成绩之间的偏相关性为0.736 ,呈现很强的正相关性。随着当前成绩的提高,假设学习时数保持不变,考试成绩也往往会增加。

此偏相关的 p 值为0.024 ,在 α = 0.05 时具有统计显着性。

当前年级和学习时间之间的偏相关:

当前成绩、学习时间和期末考试成绩之间的偏相关为-0.311 ,表示轻微的负相关。随着当前成绩的增加,期末考试成绩往往会下降,假设期末考试成绩保持不变。

此偏相关的p 值为0.415 ,在 α = 0.05 时不具有统计显着性。

结果还告诉我们,计算偏相关的方法是“Pearson”。

pcor()函数中,我们还可以指定“kendall”或“pearson”作为计算相关性的替代方法。

其他资源

以下教程解释了如何在 R 中执行其他常见任务:

如何在 R 中计算 Spearman 等级相关
如何计算 R 中的互相关
如何计算R中的滑动相关性
如何计算 R 中的点双列相关性

添加评论

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