[R] 2 small problems: integer division and the nature of NA

Uwe Ligges ligges at statistik.uni-dortmund.de
Fri Feb 4 17:40:06 CET 2005


Denis Chabot wrote:

> Hi,
> 
> I'm wondering why
> 
> 48 %/% 2 gives 24
> but
> 4.8 %/% 0.2 gives 23...
> I'm not trying to round up here, but to find out how many times 
> something fits into something else, and the answer should have been the 
> same for both examples, no?

No. Not from the perspective of a digital computer who cannot represent 
all real numbers exactly (well, only a very small subset, since we are 
using floating point arithmetics) ...


> On a different topic, I like the behavior of NAs better in R than in SAS 
> (at least they are not considered the smallest value for a variable), 
> but at the same time I am surprised that the sum of NAs is 0 instead of NA.

It *is* NA:
   sum(c(NA, NA)) # [1] NA
   sum(c(NA, 1))  # [1] NA

> The sum of a vector having at least one NA but also valid data gives NA 
> if we do not specify na.rm=T. But with na.rm=T, we are telling sum to 
> give the sum of valid data, ignoring NAs that do not tell us anything 
> about the value of a variable. I found out while getting the sum of 
> small subsets of my data (such as when subsetting by several variables), 
> sometimes a "cell" only contained NAs for my response variable. I would 
> have expected the sum to be NA in such cases, as I do not have a single 
> data point telling me the value of my response here. But R tells me the 
> sum was zero in that cell! Was this behavior considered "desirable" when 
> sum was built? If not, any hope it will be fixed?

???? I don't get your point!
If you *remove* NAs as in
   sum(c(NA, NA), na.rm=TRUE) # [1] 0
   sum(c(NA, 1), na.rm=TRUE)  # [1] 1
you are summing up not that much.... so what do you expect in the cases 
above?

Please read the docs on NA handling.

Uwe Ligges



> Sincerely,
> 
> Denis Chabot
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! 
> http://www.R-project.org/posting-guide.html




More information about the R-help mailing list