我的数据帧 d 带有一个 bool 变量事件,指示某个事件是否发生在给定日期。我想创建一个新变量,指示距离最近的事件有多少观察(天)。
d=structure(list(date = structure(c(-365, -364, -363, -362, -361,
-360, -359, -358, -357, -356, -355, -354, -353, -352, -351, -350,
-349, -348, -347, -346), class = "Date"), event = c(TRUE,
FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE,
FALSE, FALSE, FALSE, FALSE, TRUE, FALSE, FALSE, FALSE, FALSE,
FALSE)), .Names = c("date", "event"), row.names = c(NA, 20L
), class = "data.frame")
有没有一个功能可以做到这一点?
最佳答案
就像是
apply(abs( sapply( which(d$event), "-", 1:nrow(d) )),1,min)
将概括@DWin 的回答超过 2
TRUE
值。
关于r - 如何创建一个列来指示 R 中另一个观察的观察滞后?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13241212/