Як обчислити підсумкову статистику в r за допомогою dplyr
Ви можете використовувати такий синтаксис для обчислення підсумкової статистики для всіх числових змінних у кадрі даних у R за допомогою функцій у пакеті dplyr :
library (dplyr) library (tidyr) df %>% summarise(across(where(is. numeric ), .fns = list(min = min, median = median, mean = mean, stdev = sd, q25 = ~quantile(., 0.25 ), q75 = ~quantile(., 0.75 ), max = max))) %>% pivot_longer(everything(), names_sep=' _ ', names_to=c(' variable ', ' .value '))
Функція summarise() походить із пакета dplyr і використовується для обчислення підсумкової статистики для змінних.
Функція pivot_longer() походить із пакету Tidyr і використовується для форматування виводу, щоб полегшити його читання.
Цей конкретний синтаксис обчислює наступну зведену статистику для кожної числової змінної у кадрі даних:
- Мінімальна вартість
- Середнє значення
- Середнє значення
- Стандартне відхилення
- 25 процентиль
- 75-й процентиль
- Максимальне значення
У наступному прикладі показано, як використовувати цю функцію на практиці.
Приклад: обчисліть підсумкову статистику в R за допомогою dplyr
Припустимо, у R є наступний кадр даних, який містить інформацію про різних баскетболістів:
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'), points=c(12, 15, 19, 14, 24, 25, 39, 34), assists=c(6, 8, 8, 9, 12, 6, 8, 10), rebounds=c(9, 9, 8, 10, 8, 4, 3, 3)) #view data frame df team points assists rebounds 1 to 12 6 9 2 A 15 8 9 3 A 19 8 8 4 A 14 9 10 5 B 24 12 8 6 B 25 6 4 7 B 39 8 3 8 B 34 10 3
Ми можемо використовувати наступний синтаксис для обчислення підсумкової статистики для кожної числової змінної у кадрі даних:
library (dplyr) library (tidyr) #calculate summary statistics for each numeric variable in data frame df %>% summarise(across(where(is. numeric ), .fns = list(min = min, median = median, mean = mean, stdev = sd, q25 = ~quantile(., 0.25 ), q75 = ~quantile(., 0.75 ), max = max))) %>% pivot_longer(everything(), names_sep=' _ ', names_to=c(' variable ', ' .value ')) # A tibble: 3 x 8 variable min median mean stdev q25 q75 max 1 points 12 21.5 22.8 9.74 14.8 27.2 39 2 assists 6 8 8.38 2.00 7.5 9.25 12 3 rebounds 3 8 6.75 2.92 3.75 9 10
З результату ми бачимо:
- Мінімальне значення в колонці балів – 12 .
- Середнє значення в колонці балів становить 21,5 .
- Середнє значення в колонці балів 22,8 .
І так далі.
Примітка : у цьому прикладі ми використали функцію dplyr cross() . Ви можете знайти повну документацію для цієї функції тут .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші поширені функції за допомогою dplyr:
Як узагальнити дані, але зберегти всі стовпці за допомогою dplyr
Як підсумувати кілька стовпців за допомогою dplyr
Як обчислити стандартне відхилення за допомогою dplyr