我们如何在 R 中设置缺失数据(NA)?

How we can set missing data(NA) in R?

我有两组,训练集和测试集,其中有些值是 NA,我需要 R 语言的代码或指南来设置 NA 的值。 谢谢....

df <- data.frame(a = sample(c(NA, 1:5),10, replace = T))

  a
  5
  5
  3
  2
 NA
  5
  1
 NA
  5
  4

现在用任何值替换 NA。请注意,在这种情况下,我将所有 NA's 替换为 0

df[is.na(df)] <- 0

结果

 a
 5
 5
 3
 2
 0
 5
 1
 0
 5
 4

您在后续评论中询问是否可以将 NA 替换为零以外的值。你可以。一种方法是均值插补(以下代码转载自r博主:

df = data.frame(x = 1:20, y = c(1:10,rep(NA,10)))
df$y[is.na(df$y)] = mean(df$y, na.rm=TRUE)

了解均值插补是否适合您的数据(或任何其他适合该方式的插补)很重要short blog post on problems with mean imputation

谨慎使用。