Re: [Rd] is.numeric (NA + NA) is TRUE, should be FALSE (PR#8745)

From: Antonio, Fabio Di Narzo <antonio.fabio_at_gmail.com>
Date: Tue 04 Apr 2006 - 19:52:37 GMT

2006/4/4, cfillekes@gmail.com <cfillekes@gmail.com>:
>
> Full_Name: c fillekes
> Version: Version 2.2.1 (2005-12-20 r36812)
> OS: Gentoo Linux kernel 2.6.12
> Submission from: (NULL) (129.116.71.233)
>
>
>
>
> "Not Available" is of course not a numeric:
> R
>
> > is.numeric (NA)
> [1] FALSE
In the help you can read:
"
 'NA' is a logical constant of length 1 which contains a missing

     value indicator.  'NA' can be freely coerced to any other vector
     type except raw.

"
And in fact:

> storage.mode(NA)

[1] "logical"
> storage.mode(NA+0)

[1] "double"
> storage.mode(as.numeric(NA))

[1] "double"
> storage.mode(as.character(NA))

[1] "character"

So in
NA+NA
the logical is automatically coerced to a numerical value, and is.numericreturns TRUE, as expected.

But for some reason, all arithmetic operations on NA's are
> in fact numeric, even if it's with other NA's.
>
>
> > is.numeric (NA+NA)
> [1] TRUE
> > is.numeric (NA^2)
> [1] TRUE
> > is.numeric (NA-NA)
> [1] TRUE
> > is.numeric (NA*NA)
> [1] TRUE
> > is.numeric (NA/NA)
> [1] TRUE
> >
>
> This is not the expected thing.

I think this is the expected thing.



> R-devel@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>

Antonio, Fabio Di Narzo.

        [[alternative HTML version deleted]]



R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Wed Apr 05 06:17:21 2006

This archive was generated by hypermail 2.1.8 : Wed 05 Apr 2006 - 00:16:56 GMT