У меня есть фрейм данных, подобный следующему:
library(data.table)
test <- data.table(data.frame("value" = c(5,NA,8,NA,NA,8,6,NA,NA,10),
"locf_N" = c(1,NA,1,NA,NA,1,2,NA,NA,2)) )
В этом фрейме данных у меня есть переменная, которая указывает, сколько раз я мог перенести последнее наблюдение (locf_N).Это не фиксированное число для всех наблюдений.Я попытался использовать параметр maxgap в функции na.locf для этой цели, но на самом деле это не то, что я ищу.
require(zoo)
test[,value := na.locf(value, na.rm = FALSE, maxgap = 1)]
test[,value := na.locf(value, na.rm = FALSE, maxgap = locf_N)]
Есть ли какой-либо параметр, чтобы установить, сколько раз может быть перенесено последнее наблюдение?Любые идеи приветствуются.
Желаемый результат:
output <- data.table(data.frame("value" = c(5,5,8,8,NA,8,6,6,6,10),
"locf_N" = c(1,NA,1,NA,NA,1,2,NA,NA,2)) )