On Tue, Nov 9, 2010 at 9:43 AM, Joshua Wiley <jwiley.ps...@gmail.com> wrote: > On Tue, Nov 9, 2010 at 9:39 AM, Joshua Wiley <jwiley.ps...@gmail.com> wrote: >> Hi Kate, >> >> is.na() does not work on entire data frames. > > whoops, I did not mean that. is.na() has a data frame method, but > there are assignment issues (as you saw) when you use it that way.
Last correction (I promise). Somehow I tested incorrectly which lead to me to my two erroneous statements before. is.na() works just fine with data frames. It was just the factor issue (as Phil said). > x <- data.frame(a = 1:3, b = c(1, 2, NA), d = c(NA, 2, 3), e = factor(c(NA, > NA, "1"))) > x a b d e 1 1 1 NA <NA> 2 2 2 2 <NA> 3 3 NA 3 1 > x[is.na(x)] <- 0 Warning message: In `[<-.factor`(`*tmp*`, thisvar, value = 0) : invalid factor level, NAs generated > x # other NAs removed, but not the factor ones a b d e 1 1 1 0 <NA> 2 2 2 2 <NA> 3 3 0 3 1 off-to-hide-under-a-rock-Josh ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.