[R] large integers in R

Duncan Murdoch murdoch at stats.uwo.ca
Tue Jan 26 22:09:10 CET 2010


On 26/01/2010 3:25 PM, Blanford, Glenn wrote:
> Has there been any update on R's handling large integers greater than 10^9 (between 10^9 and 4x10^9) ?
> 
> as.integer() in R 2.9.2 lists this as a restriction but doesnt list the actual limit or cause, nor if anyone was looking at fixing it.

Integers in R are 4 byte signed integers, so the upper limit is 2^31-1. 
  That's not likely to change soon.

The double type in R can hold exact integer values up to around 2^52. 
So for example calculations like this work fine:

 > x <- 2^50
 > y <- x + 1
 > y-x
[1] 1

Just don't ask R to put those values into a 4 byte integer, they won't fit:

 > as.integer(c(x,y))
[1] NA NA
Warning message:
NAs introduced by coercion

Duncan Murdoch

> 
> Glenn D Blanford, PhD
> <mailto:glenn.blanford at us.army.mil>
> Scientific Research Corporation
> gblanford at scires.com<mailto:gblanford at scires.com>
> 
> 
> 	[[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.



More information about the R-help mailing list