【发布时间】:2021-01-26 15:11:11
【问题描述】:
我的数据表如下所示:
library(data.table)
data <- data.table(time = c(seq(0, 14)),
anom = c(0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0),
gier = c(0, 0, 0, 4, 9, 7, 2, 0, 3, 1, 4, 2, 0, 0, 0))
现在我想用anom 列中的空格(零)填充,这样结果如下所示:
res <- data.table(time = c(seq(0, 14)),
anom = c(0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0),
gier = c(0, 0, 0, 4, 9, 7, 2, 0, 3, 1, 4, 2, 0, 0, 0))
此外,还有一个问题是我想灵活调整间隙大小,以便我可以选择间隙的大小。必须有一种简单的方法来执行类似于 LOCF 的操作,仅用于实际值(可能用行的前一个值填充它,而不仅仅是 1 或 0),而不仅仅是像函数 fill 或 na.locf 这样的 NA。
【问题讨论】:
-
@Ronak Shah,没关系。对我来说,设置间隙大小很重要。在大多数情况下,最终值有很多零。通过设置间隙大小,我可以排除它们。
标签: r time-series data.table lag shift