是否可以根据另外两列中的条件“填充”NA值?
这里有一个类似的答案: Replace missing values (NA) with most recent non-NA by group
这个问题不同,因为我需要根据另一列的值和所述列中值的值来填充。以下说明。
我有一个数据框,我需要看一下上面的值和旁边的值以及要评估的值。这个过程应该是这样的: x =非空的值。
如果x以上的值为null且
x旁边的值与x值
之上的值相同填满。
以下是mtcars
mtcars1 <- as_tibble(mtcars)
mtcars1 <- mtcars1 %>%
select(cyl, mpg, disp, hp) %>%
group_by(cyl) %>%
arrange(cyl, disp)
ex <- rep("NA", length(mtcars1$cyl))
mtcars1$ex=ex
mtcars1$ex <- if_else(mtcars$cyl = 4 & mtcars$disp > 100, ex==31.4, ex)
mtcars1$ex <- sapply(mtcars1, function(x) ifelse((mtcars1$cyl <= 4 &&
mtcars$disp > 100), 23.5, "NA"))
见下图。我希望23.5
填满,直到“cyl”列中的值发生变化。所以,
如果上面的值是NULL()
和cyl value = cyl值,
填写。
这可能在R?