【问题标题】:Replacing NAs in a column with the values of other column用其他列的值替换列中的 NA
【发布时间】:2018-02-18 14:21:34
【问题描述】:

我想知道如何使用dplyr 将列中的NAs 替换为R 中其他列的值。 MWE 在下面。

Letters <- LETTERS[1:5]
Char    <- c("a", "b", NA, "d", NA)
df1 <- data.frame(Letters, Char)
df1

library(dplyr]

df1 %>%
  mutate(Char1 = ifelse(Char != NA, Char, Letters))

     Letters Char Char1
1       A    a    NA
2       B    b    NA
3       C <NA>    NA
4       D    d    NA
5       E <NA>    NA

【问题讨论】:

    标签: r dplyr data-manipulation


    【解决方案1】:

    你可以使用coalesce:

    library(dplyr)
    
    df1 <- data.frame(Letters, Char, stringsAsFactors = F)
    
    df1 %>%
      mutate(Char1 = coalesce(Char, Letters))
    
      Letters Char Char1
    1       A    a     a
    2       B    b     b
    3       C <NA>     C
    4       D    d     d
    5       E <NA>     E
    

    【讨论】:

      猜你喜欢
      • 2021-04-27
      • 1970-01-01
      • 2017-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-22
      相关资源
      最近更新 更多