On 04/13/2015 11:32 PM, Martin Maechler 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:
I think you mean the "former", a bug.
and I agree entirely, see the following " 2 x 2 " comparison :
> N <- 5000000000000 * 8^-(0:7)
> as.integer(N)
[1] NA NA NA NA 1220703125 152587890
19073486 2384185
Warning message:
NAs introduced by coercion
> as.integer(-N)
[1] NA NA NA NA -1220703125 -152587890
-19073486
[8] -2384185
Warning message:
NAs introduced by coercion
> as.integer(as.character(N))
[1] 2147483647 2147483647 2147483647 2147483647 1220703125 152587890
19073486 2384185
Warning message:
inaccurate integer conversion in coercion
> as.integer(as.character(-N))
[1] NA NA NA NA -1220703125 -152587890
-19073486
[8] -2384185
Warning message:
inaccurate integer conversion in coercion
‘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.
Yes.
The message is less a problem than the bug, but I agree we
should try to improve it.
Sounds good. Thanks Martin,
H.
Martin
--
Hervé Pagès
...................
--
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