自动将零值归类为NA值

时间:2012-11-26 04:00:01

标签: r dataframe

我想将数据框中数字列中的所有NA值替换为0.我应该怎么做?

我得到的NA数值列表如下(我确定它不是最优的):

iris[3,4] <- NA
missingVars <- iris[colSums(is.na(iris)) > 0] 
missingNumVars <- missingVars[sapply(missingVars, is.numeric)]

2 个答案:

答案 0 :(得分:9)

这应该对你有用

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

答案 1 :(得分:5)

这样的东西会起作用并避免重复相同大小的iris对象(由is.na(iris)创建)

as.data.frame(lapply(iris, function(x) 
if(is.numeric(x)) {return(replace(x, is.na(x),0))} 
  else {return(x)}) )