用另一列的信息填充 NA

  • 本文关键字:信息 填充 NA 一列 r
  • 更新时间 :
  • 英文 :

tablenew <- table %>%
  mutate (i_a_i = case_when (
    INaam != 'NA' ~ INaam[],
    INaam == 'NA' ~ ANaam[],
    ANaam  == 'NA' & INaam == 'NA' ~ InNaam[]
    ))

我基本上想要的是,如果 INaam 缺少数据,它将使用 Anaam 列中的名称,如果这两个都缺少 NA,则使用 InNaam。它并没有完全按照我的意愿去做。你能帮帮我吗?

您可以使用is.na检查NA值,我认为这也可以简化为两个条件

library(dplyr)
table %>%
   mutate(i_a_i = case_when(
                     is.na(INaam) ~ Anaam,
                     TRUE ~ INaam))

如果INaam中存在缺失值,则要使用Anaam值,对于非缺失值,请使用INaam

或者只是使用ifelse

table$i_a_i <- with(table, ifelse(is.na(INaam), Anaam, INaam))

最新更新