【发布时间】:2019-01-17 20:22:34
【问题描述】:
我正在尝试获取最近 N 个值的汇总统计信息(此处为总和和最大值)。
起始数据:
dt = data.table(id = c('a','a','a','a','b','b','b','b'),
week = c(1,2,3,4,1,2,3,4),
value = c(2, 3, 1, 0, 5, 7,3,2))
期望的结果:
dt = data.table(id = c('a','a','a','a','b','b','b','b'),
week = c(1,2,3,4,1,2,3,4),
value = c(2, 3, 1, 0, 5, 7,3,2),
sum_recent2week = c(NA, NA, 5, 4, NA, NA, 12, 10),
max_recent2week = c(NA, NA, 3, 3, NA, NA, 7, 7))
对于这些数据,我希望按 id 为每行获取 2 个 (N=2) 最近值的总和和最大值。第 4(sum_recent2week)和第 5(max_recent2week)列是我想要的列
【问题讨论】: