我正在尝试用另一列的同一行中的值填充一列,其中我缺少值。我正在尝试使用dplyr和ifelse进行此操作。
当我执行以下代码时,整列变为NA。
df
animals isanimal
1 cat animal
2 cat animal
3 dog NA
4 dog NA
5 mouse animal
我尝试过的代码:
df <- df %>% mutate(isanimal = ifelse (df$isanimal == NA, df$isanimal ==
as.character(df$animals), df$isanimal == as.character(df$isanimal)))
我从这段代码中得到什么:
> df
animals isanimal
1 cat animal
2 cat animal
3 dog NA
4 dog NA
5 mouse animal
> df2
animals isanimal
1 cat NA
2 cat NA
3 dog NA
4 dog NA
5 mouse NA
任何帮助将不胜感激(包括帮助您理解为什么它不起作用)。谢谢!
答案 0 :(得分:0)
尝试一下:
df %>%
mutate(isanimal = ifelse (is.na(isanimal),
as.character(animals), as.character(isanimal)
)
)