Я хотел бы сделать последнее наблюдение, перенесенное для переменной, но не более двух наблюдений. То есть, для пробелов в данных 3 или более NA, я бы перенес только последнее наблюдение для следующих 2 наблюдений, а остальные оставил как NA.
Если я делаю это с zoo::na.locf
, параметр maxgap
означает, что если зазор больше 2, NA не заменяется. Даже не последние 2. Есть ли альтернатива?
x <- c(NA,3,4,5,6,NA,NA,NA,7,8)
zoo::na.locf(x, maxgap = 2) # Doesn't replace the first 2 NAs of after the 6 as the gap of NA is 3.
Desired_output <- c(NA,3,4,5,6,6,6,NA,7,8)