Как я где-то видел, когда имеется несколько слоев group_by(), одно суммирование() отслаивается от слоя группировки. В sql есть «группа для всех». Интересно, есть ли способ, чтобы отменить все группировки в dplyr (так что, например, мы можем получить максимум из всех, а не из каждой группы)Dplyr: как group_by (все)
Пример:
library(dplyr)
library(car)
mtcars %>%
select(cyl, gear, carb) %>%
group_by(cyl, gear) %>%
summarise(count = n()) %>%
arrange(desc(count))
Выход:
Source: local data frame [8 x 3]
Groups: cyl
cyl gear count
1 4 4 8
2 4 5 2
3 4 3 1
4 6 4 4
5 6 3 2
6 6 5 1
7 8 3 12
8 8 5 2
Таким образом, данные были group_by (cyl, gear): два слоя группировки. Сумматор() подсчитал, сколько автомобилей в каждой группе (цил, шестерня), а затем снимает слой group_by (gear). Теперь данные group_by (cyl). Как вы можете видеть, порядок спуска работает только для каждого цил. (Спуск в строке 1-3 для цил == 4, спуск в линии 4-6 для cyl == 6, ...). Как мы можем получить спуск всех 8 линий? (Линия 7 должна быть первой линией.)
Другим примером того, как итог() кожица группировки:
mtcars %>%
select(cyl, gear, carb) %>%
group_by(cyl, gear) %>%
summarise(count = n())
Output:
Source: local data frame [8 x 3]
Groups: cyl
cyl gear count
1 4 3 1
2 4 4 8
3 4 5 2
4 6 3 2
5 6 4 4
6 6 5 1
7 8 3 12
8 8 5 2
---
mtcars %>%
select(cyl, gear, carb) %>%
group_by(cyl, gear) %>%
summarise(count = n()) %>%
summarise(count1 = max(count))
Output:
Source: local data frame [3 x 2]
cyl count1
1 4 8
2 6 4
3 8 12
---
mtcars %>%
select(cyl, gear, carb) %>%
group_by(cyl, gear) %>%
summarise(count = n()) %>%
summarise(count1 = max(count)) %>%
summarise(max(count1))
Output:
Source: local data frame [1 x 1]
max(count1)
1 12
Вы ищете 'ungroup'? Как в 'mtcars%>% select (cyl, gear, carb)%>% group_by (cyl, gear)%>% summary (count = n())%>% ungroup()%>% аранжировать (desc (count)) '? Кроме того, для чего вы используете 'fix'? Вы слышали о «Просмотр»? –
'Просмотр' только для RStudio, нет? OP не упоминает RStudio, поэтому они могут и не использовать его (OP - стоит попробовать, вкладка-завершение в RStudio - это огромная экономия времени, это всего лишь один из многих удобств) – Ben
@Ben также существует в базе R –