Я вычисляю сводные статистики для многих переменных в большом фрейме данных (он имеет 130 переменных). Я использую sh для вычисления сводной статистики за десятилетие и для всех моих данных. Я бы не хотел писать резюме дважды: один раз для группировки и один раз для полных данных. Я также использую summarise_at, поэтому мой вопрос также относится к summarise_at.
Вот минимальный пример, где summarise_at () кажется немного чрезмерным, но не так для моих реальных данных:
my.data <- data.frame(Date = as.Date(c('1981-04-09', '1983-02-01', '1992-10-19', '1996-11-22', '1987-05-15')),
decade = c('Eighties', 'Eighties', 'Nineties', 'Nineties', 'Eighties'),
price = c(10, 11, 17, 34, 12),
d.sector.Oil = c(0,0,1,1,1),
d.sector.Mines = c(1,1,0,0,0)) # An example dataframe
# Calculate summary statistics for each decade and each variable:
sumst.decades<- my.data %>% group_by(decade) %>% summarise(mean.price = mean(price))
sumd.decades<- my.data %>% group_by(decade) %>% summarise_at(vars(starts_with('d.sector.')), sum)
Мне нужны те же сводки для моих полных данных. Для этого я бы повторил приведенные выше командные строки, но без "group_by":
sumst<- summarise(my.data, mean.price = mean(price))
sumd<- summarise_at(my.data, vars(starts_with('d.sector.')), sum)
I wi sh, чтобы не писать последние две строки, но каким-то образом dplyr дал мне глобальную сводку в дополнение к групповым сводкам. Например, если есть функция group_by *, которая создает группы по мере необходимости, а также создает глобальную группу. Что-то подобное существует? Надеюсь, мой вопрос ясен. Заранее спасибо.