У меня есть несколько пропущенных значений в последующих строках во фрейме данных.Я хочу заменить первое пропущенное значение на не пропущенное значение в его предыдущей строке, умноженное на 3, а затем заполнить следующие значения NA, используя вновь заполненные значения в их предыдущих строках, умноженные на 3. Вот пример данных икоды:
df <- mtcars
df[c(2,3,4,5),1] <-NA
IND <- is.na(df[,1])
df[IND,1] <- df[dplyr::lead(IND,1L, F),1] * 3
Последняя строка вышеуказанных кодов выполняет свою работу, но строка за строкой (я должен выполнить ее 4 раза, чтобы заполнить 4 пропущенных строки).Как я могу сделать это один раз для всех четырех пропущенных строк?
Я хочу:
df[c(2,3,4,5),1] <- c(63,189,567,1701)
, используя один цикл вместо использования вышеуказанного кода четыре раза.