On 4/4/2006 3:38 PM, [EMAIL PROTECTED] wrote: > 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 > > 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.
But it is the documented thing, so it is not a bug: "'is.numeric' returns 'TRUE' if its argument is of mode '"numeric"' (type '"double"' or type '"integer"') and not a factor, and 'FALSE' otherwise." The value is irrelevant. You probably want to use "is.numeric(x) && all(is.finite(x))" to get the result you're expecting. Duncan Murdoch ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel