Как рассчитать корреляцию по группам в 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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *