On May 3, 2013, at 10:24 AM, jpm miao <miao...@gmail.com> wrote:

> I have a program, when I write
> 
> if(num!=NA)
> 
> it yields an error message.
> 
> However, if I write
> 
> if(is.na(num)==FALSE)
> 
> it works.
> 
> Why doesn't the first statement work?
> 
> Thanks,
> 
> Miao


NA is undefined:

> NA == NA
[1] NA

> NA != NA
[1] NA


Therefore the equality you are attempting does not return a TRUE or FALSE 
result, it is unknown and NA is returned. ?is.na was designed specifically to 
test for the presence of an NA value and return a TRUE or FALSE result which 
can then be tested.

See: http://cran.r-project.org/doc/manuals/r-release/R-intro.html#Missing-values


Regards,

Marc Schwartz

______________________________________________
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.

Reply via email to