如何在r中按组计算相关性


您可以使用以下基本语法在 R 中按组计算两个变量之间的相关性:

 library (dplyr)

df %>%
  group_by(group_var) %>%
  summarize(cor=cor(var1, var2))

此特定语法计算var1var2之间的相关性,并按group_var分组。

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

示例:按 R 中的组计算相关性

假设我们有以下数据框,其中包含来自不同球队的篮球运动员的信息:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 points=c(18, 22, 19, 14, 14, 11, 20, 28),
                 assists=c(2, 7, 9, 3, 12, 10, 14, 21))

#view data frame
df

  team points assists
1 to 18 2
2 to 22 7
3 A 19 9
4 A 14 3
5 B 14 12
6 B 11 10
7 B 20 14
8 B 28 21

我们可以使用dplyr包中的以下语法来计算得分助攻之间的相关性(按球队分组):

 library (dplyr)

df %>%
  group_by(team) %>%
  summarize(cor=cor(points, assists))

# A tibble: 2 x 2
  team horn
   
1 A 0.603
2 B 0.982

从结果我们可以看出:

  • A队得分与助攻之间的相关系数为0.603
  • B队得分与助攻之间的相关系数为0.982

由于相关系数均为正,这表明两支球队的得分和助攻之间存在正相关关系。

相关:什么被认为是“强”相关性?

其他资源

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

如何在R中按组计算唯一值
如何在R中按组计算总和
如何计算R中每组的平均值
如何在R中按组计算汇总统计数据

添加评论

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