Я собираюсь ответить
- Используя data.table
- , так как данные появились изначально, надеюсь, могут быть приняты, если данные есть.разные
Решение
library(data.table)
dt[, value[.N], mth][(.N-2):.N, sum(V1)]
[1] 13
Данные
dt <- structure(list(mth = c("jan", "feb", "feb", "mar", "mar", "mar",
"apr", "apr", "apr", "apr", "may", "may", "may", "may", "may"
), n = c(1L, 2L, 2L, 3L, 3L, 3L, 4L, 4L, 4L, 4L, 5L, 5L, 5L,
5L, 5L), value = c(5L, 1L, 3L, 2L, 8L, 0L, 6L, 0L, 2L, 7L, 2L,
1L, 4L, 2L, 6L)), row.names = c(NA, -15L), class = c("data.table",
"data.frame"))