如何在r中按组计算相关性
您可以使用以下基本语法在 R 中按组计算两个变量之间的相关性:
library (dplyr)
df %>%
group_by(group_var) %>%
summarize(cor=cor(var1, var2))
此特定语法计算var1和var2之间的相关性,并按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 中执行其他常见操作: