Используя dput
, я предоставляю данные.
df <-
structure(list(Goods = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L),
.Label = c("IceScream", "Kex"), class = "factor"),
date = structure(c(1L, 1L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L,
3L, 4L, 4L, 1L, 1L, 2L, 2L, 2L, 3L, 3L, 3L,
3L, 3L, 3L, 3L, 4L, 4L),
.Label = c("12.01.2015", "13.01.2015",
"14.01.2015", "15.01.2015"), class = "factor"),
Y = c(200L, 50L, 100L, 50L, 200L, 200L, 50L, 200L, 100L, 1000L,
1000L, 50L, 50L, 100L, 200L, 50L, 23L, 50L, 200L, 200L,
45L, 200L, 100L, 6L, 23L, 50L, 50L, 436L)),
.Names = c("Goods", "date", "Y"), class = "data.frame",
row.names = c(NA, -28L))
Я хочу агрегировать по месяцам.
library(dplyr)
library(lubridate)
library(zoo)
df <- df %>%
group_by(yearMon = as.yearmon(dmy(date))) %>%
summarise(new = sum(new))
Но у меня есть группа товаров (мороженое и кекс).
Как получить агрегацию по месяцам для каждой группы?
как то так
Goods date Y
IceScream jan-2015 3350
Kex jan-2015 1633