这是我的数据框:
library(zoo)
library(dplyr)
df <- data.frame(
id = rep(1:4, each = 4),
status = c(
NA, "a", "c", "a",
NA, "c", "c", "c",
NA, NA, "a", "c",
NA, NA, "c", "c"),
otherVar = letters[1:16],
stringsAsFactors = FALSE)
对于变量状态,我希望在组 (id) 中向后进行下一个观察。
df %>% group_by(id) %>% na.locf(fromLast = TRUE) %>% ungroup
但是,我只希望我的 "c" 向后携带,而不是 "a" 。
从变量状态:
不适用 “a” “c” “a” 不适用 “c” “c” “c” 不适用 不适用 “a” “c” 不适用 不适用 “c” “c”
我想得到:
不适用“a”“c”“a”“c”“c”“c”“c”不适用“a”“c”“c”“c”“c”“c”
分别:
data.frame(
id = rep(1:4, each = 4),
status = c(
NA, "a", "c", "a",
"c", "c", "c", "c",
NA, NA, "a", "c",
"c", "c", "c", "c"),
otherVar = letters[1:16],
stringsAsFactors = FALSE)
有没有办法做到这一点?