On Tue, Apr 14, 2015 at 1:19 AM, Hervé Pagès <hpa...@fredhutch.org> wrote: > Hi, > > > as.integer("5000000000") > [1] 2147483647 > Warning message: > inaccurate integer conversion in coercion > > > as.integer("-5000000000") > [1] NA > Warning message: > inaccurate integer conversion in coercion > > Is this a bug or a feature? The man page suggests it's the latter:
Hello, Hervé Per help("as.integer"): "Note that current implementations of R use 32-bit integers for integer vectors, so the range of representable integers is restricted to about +/-2*10^9: doubles can hold much larger integers." 5000000000 ~ 2^32.2 > 2^32 > 2*10^9 Avi > > ‘as.integer’ attempts to coerce its argument to be of integer > type. The answer will be ‘NA’ unless the coercion succeeds. > > even though someone could always argue that coercion of "5000000000" > succeeded (for some definition of "succeed"). > > Also is there any reason why the warning message is different than > with: > > > as.integer(-5000000000) > [1] NA > Warning message: > NAs introduced by coercion > > In the case of as.integer("-5000000000"), it's not really that the > conversion was "inaccurate", it's a little bit worse than that. And > knowing that NAs where introduced by coercion is important. > > Thanks, > H. > > -- > Hervé Pagès > > Program in Computational Biology > Division of Public Health Sciences > Fred Hutchinson Cancer Research Center > 1100 Fairview Ave. N, M1-B514 > P.O. Box 19024 > Seattle, WA 98109-1024 > > E-mail: hpa...@fredhutch.org > Phone: (206) 667-5791 > Fax: (206) 667-1319 > > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel