【问题标题】:How to replace a value with NA across an entire dataframe替换 R 中 NA 的值 - 整个数据帧
【发布时间】:2021-06-27 15:58:33
【问题描述】:

有什么方法可以将数据框中可能存在的所有“-95”替换为所有列中的 NA?

谢谢

【问题讨论】:

    标签: if-statement replace na missing-data


    【解决方案1】:

    这就是答案:)

    df[df=="-95"]<-NA
    

    【讨论】:

      【解决方案2】:

      您自己已经找到了解决方案,太好了。

      如果你有更复杂的情况,你有多个值需要转换成 NA,也许根据一些特定的条件,naniar 包会很有帮助。有以下功能:

      naniar::replace_with_na()
      naniar::replace_with_na_if()
      naniar::replace_with_na_at()
      

      这些非常有用,而且非常强大。最好的介绍可能是查看这些函数的documentation

      这是一个小例子,如果您有一个带有 xz 变量的数据框,并且对于您的 x,您希望将 -99 和 -98 编码为 NA,而对于您的 z 变量您希望将 -99 和 -97 编码为 NA。

      library(naniar)
      df %>%
        replace_with_na(replace = list(x = c(-99,-98),
                                   z = c(-99, -97)))
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-10-26
        • 1970-01-01
        • 2017-01-30
        • 1970-01-01
        • 1970-01-01
        • 2021-11-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多