【发布时间】:2020-12-17 17:08:01
【问题描述】:
我有一张看起来像这样的桌子
dat <- data.frame(id = c(rep(1234, 8)), code = c(20600, 24567, 20600, 25067, 234456, 23456, 20600, 23356),
date = c('04-04-2019','05-05-2019', '04-04-2019', '04-04-2019', '12-26-2019', '04-10-2019',
'04-30-2019', '11-14-2019'), days=c(10,90,10,90,30,23,10,30))
我基本上对只保留 (date - days) 和 (date + days) 窗口内的行特别是 代码 20600 的窗口感兴趣,看起来像这样:
dat1 <- data.frame(id = c(rep(1234, 5)), code = c(20600, 20600, 25067,23456, 20600),
date = c('04-04-2019','04-04-2019', '04-04-2019', '04-10-2019',
'04-30-2019'), days=c(10,10,90,23,10))
有没有办法在 R 中做到这一点?这只是较大数据集上的一个小子集,因此我想找到一种方法来应用一种解决方案,以便在我进行大规模时促进该过程。提前致谢!
【问题讨论】: