[R] bug in as.POSIXct ?
apjaworski@mmm.com
apjaworski at mmm.com
Thu Dec 4 18:20:15 CET 2003
I think that there is a bug in the as.POSIXct function on Windows.
Here is what I get on Win2000, Pentium III machine in R 1.8.1.
> dd1 <- ISOdatetime(2003, 10, 26, 0, 59, 59)
> dd2 <- ISOdatetime(2003, 10, 26, 1, 0, 0)
> dd2 - dd1
Time difference of 1.000278 hours
Now, the 26th of October was the day that change to the standard time
occurred, so I suspect that this has something to do with that. In fact
> dd1
[1] "2003-10-26 00:59:59 Central Daylight Time"
> dd2
[1] "2003-10-26 01:00:00 Central Standard Time"
so it looks like the switch from CDT to CST happens at 1:00 (instead of
2:00 ?).
Since the only thing the difftime function does is unclass the as.POSIXct
values of its two arguments, the error seems to be in the as.POSIXct code.
I looked at the C code of the as.POSIXct function but I do not know enough
about R code and C handling of the time structures to find an error there.
Perhaps, the error is actually in the C library handling of time structures
on Windows machines.
All this seems to work fine in version 1.8.1 patched 11-24 on a Linux
machine, i.e. the above difference is 1second. However, the swicth between
CDT and CSD also accurs at 1:00.
Andy
__________________________________
Andy Jaworski
518-1-01
Process Laboratory
3M Corporate Research Laboratory
-----
E-mail: apjaworski at mmm.com
Tel: (651) 733-6092
Fax: (651) 736-3122
More information about the R-help
mailing list