Як обчислити режим за групою в r (з прикладами)
Режим набору даних представляє найбільш часте значення.
Статистичне програмне забезпечення R не має вбудованої функції для обчислення режиму набору даних, але ви можете використовувати таку функцію для обчислення режиму:
find_mode <- function (x) { u <- unique(x) tab <- tabulate(match(x, u)) u[tab == max(tab)] }
У наступних прикладах показано, як використовувати цю функцію для обчислення режиму за групою в R.
Приклад 1: розрахувати режим за групою в R (один режим)
Припустимо, що ми маємо наступний кадр даних у R, який показує очки, набрані баскетболістами з різних команд:
#define data frame df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'), points=c(5, 7, 7, 9, 12, 12, 10, 14)) #view data frame df team points 1 to 5 2 to 7 3 to 7 4 to 9 5 B 12 6 B 12 7 B 10 8 B 14
Ми можемо використати наступний код для обчислення режиму точок , згрупованих за командами :
library (dplyr)
#define function to calculate mode
find_mode <- function (x) {
u <- unique(x)
tab <- tabulate(match(x, u))
u[tab == max(tab)]
}
#calculate mode of 'points' by 'team'
df %>%
group_by(team) %>%
summarize(mode_points = find_mode(points))
# A tibble: 2 x 2
team mode_points
1 to 7
2 B 12
З результатів ми бачимо:
- Режим очок для команди A становить 7 .
- Режим очок для команди B становить 12 .
Приклад 2: обчислення режиму за групою в R (кілька режимів)
Припустимо, що ми маємо наступний кадр даних у R:
#define data frame df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'), points=c(5, 7, 7, 9, 12, 12, 10, 10)) #view data frame df team points 1 to 5 2 to 7 3 to 7 4 to 9 5 B 12 6 B 12 7 B 10 8 B 10
Ми можемо використати наступний код для обчислення режиму точок , згрупованих за командами :
library (dplyr)
#define function to calculate mode
find_mode <- function (x) {
u <- unique(x)
tab <- tabulate(match(x, u))
u[tab == max(tab)]
}
#calculate mode of 'points' by 'team'
df %>%
group_by(team) %>%
summarize(mode_points = find_mode(points))
# A tibble: 3 x 2
# Groups: team [2]
team mode_points
1 to 7
2 B 12
3 B 10
З результатів ми бачимо:
- Режим очок для команди A становить 7 .
- Метод підрахунку очок для команди B — 12 і 10 .
У цьому прикладі два значення балів зустрічаються найчастіше для команди B. Тому кожне з цих значень режиму повертається в окремому рядку для команди B у вихідних даних.
Додаткові ресурси
У наступних посібниках пояснюється, як обчислити іншу описову статистику в R:
Як обчислити підсумок п’яти чисел у R
Як створити зведені таблиці в R
Як використовувати функцію Mean() у R