[R] Question regarding to replace <NA>

Joshua Wiley jwiley.psych at gmail.com
Tue Nov 9 18:39:05 CET 2010


Hi Kate,

is.na() does not work on entire data frames.  You just need to specify
the column, for example:

data[is.na(data[, 8]), 8] <- 0

if the NAs were in column 8.

Best regards,

Josh


On Tue, Nov 9, 2010 at 9:33 AM, Kate Hsu <yhsu.rhelp at gmail.com> wrote:
> Dear r-users,
>
> Basically, I have a data as follows,
>
>> data
>       S s1 s2 s3 s4 s5      prob obs num.strata
> 1  NNNNN  N  N  N  N  N 0.0000108  32       <NA>
> 2  NNNNY  N  N  N  N  Y 0.0005292  16       <NA>
> 3  NNNYN  N  N  N  Y  N 0.0005292  24       <NA>
> 4  NNNYY  N  N  N  Y  Y 0.0259308   8          1
> ....
>
> I want to replace <NA> by 0, when I tried the following command, I get som
> error message.
> data[is.na(data)]<-0
>
> Warning message:
> In `[<-.factor`(`*tmp*`, thisvar, value = 0) :
>  invalid factor level, NAs generated
>
> Anyone knows how to deal with this?
>
> Thanks,
>
> Kate
>
>        [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at 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.
>



-- 
Joshua Wiley
Ph.D. Student, Health Psychology
University of California, Los Angeles
http://www.joshuawiley.com/



More information about the R-help mailing list