Как использовать ungroup() в dplyr (с примерами)
Вы можете использовать функцию ungroup() в dplyr, чтобы разгруппировать строки после использования функции group_by() для суммирования одной переменной в группе.
В следующем примере показано, как использовать эту функцию на практике.
Пример: как использовать ungroup() в dplyr
Предположим, у нас есть следующий кадр данных в R:
#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
dots=c(14, 18, 22, 26, 36, 34),
assists=c(5, 4, 4, 8, 7, 3))
#view data frame
df
team points assists
1 to 14 5
2 to 18 4
3 to 22 4
4 B 26 8
5 B 36 7
6 B 34 3
Теперь предположим, что мы используем следующий код для расчета среднего значения очков , сгруппированного по командам :
library (dplyr)
#calculate mean of points, grouped by team
df_new <- df %>%
group_by(team) %>%
summarize(mean_points = mean(points)) %>%
A group()
#view results
df_new
# A tibble: 2 x 2
team mean_points
1 to 18
2 B 32
Используя этот синтаксис, мы можем вычислить среднее значение очков , сгруппированных по командам , но мы потеряли столбец передач .
Чтобы сохранить столбец помощников , мы можем использовать mutate() вместо summary() и по-прежнему использовать ungroup() в конце:
library (dplyr)
#calculate mean of points, grouped by team
df_new <- df %>%
group_by(team) %>%
mutate(mean_points = mean(points)) %>%
A group()
#view results
df_new
# A tibble: 6 x 4
team points assists mean_points
1 A 14 5 18
2 A 18 4 18
3 A 22 4 18
4 B 26 8 32
5 B 36 7 32
6 B 34 3 32
На этот раз мы можем сохранить столбец передач и с помощью функции mutate() просто добавили новый столбец под названием Mean_points , который отображает среднее значение очков для каждой команды.
Поскольку мы также использовали функцию ungroup() , мы можем выполнять вычисления в этом новом фрейме данных, не беспокоясь о вычислениях, на которые влияют сгруппированные переменные.
Если бы мы не использовали функцию ungroup() , строки в фрейме данных все равно были бы сгруппированы вместе, что могло бы иметь непредвиденные последствия, когда мы позже будем выполнять другие вычисления.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:
Как фильтровать уникальные значения с помощью dplyr
Как фильтровать по нескольким условиям с помощью dplyr
Как подсчитать количество вхождений в столбцах в R