Як обчислити кореляцію за групою в 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
З результату ми бачимо:
- Коефіцієнт кореляції між очками та передачами для команди А становить 0,603 .
- Коефіцієнт кореляції між очками та передачами для команди Б становить 0,982 .
Оскільки обидва коефіцієнти кореляції позитивні, це говорить нам про те, що співвідношення між очками та передачами для обох команд позитивне.
За темою: що вважається «сильною» кореляцією?
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові операції в R:
Як підрахувати унікальні значення по групі в R
Як обчислити суму за групою в R
Як обчислити середнє значення на групу в R
Як розрахувати підсумкову статистику по групах у R