[R] RODBC & POSIX & Daylight Saving blues
Bernie McConnell
bm8 at st-andrews.ac.uk
Thu Nov 11 11:58:46 CET 2004
Dear All,
The recent improvement in RODBC to recognize datetimes in tables has
exposed my ongoing confusion.
All my data are obtained from a satellite system (Argos) which tags events
in the GMT time zone. Daylight saving is ignored. To my way of thinking
this means that
1. twelve-o-clock means halfway through the day regardless of season, and
2. the difftime of any two dates where the time is set to
twelve-o-clock should be an integer, regardless of which season each of the
dates are in.
I illustrate my confusion with a two-line table in an Access 2000 database
table where the single field called 'theDate' contains the two values:
30/07/04 12:00:00
30/11/04 12:00:00
then I bring the datetimes into R with the following code:
> library (RODBC)
> theChannel <- odbcConnect("phonetagcopy", "", "")
> pp <- sqlFetch(theChannel, "DateTest")
> odbcClose(theChannel)
> pp$theDate
[1] "2004-07-30 12:00:00 GMT Daylight Time"
[2] "2004-11-30 12:00:00 GMT Standard Time"
>
> unclass(pp$theDate) / 86400
[1] 12629.46 12752.50
attr(,"tzone")
[1] ""
>
> difftime (pp$theDate[1], pp$theDate[2])
Time difference of -123.0417 days
It appears that sqlFetch has (in this case wrongly) assumed that my
datetimes are corrected for Daylight Saving. How can I persuade it to
accept that all my datetimes are in straight GMT?
OS:Win2000
R 2.0.0
RODBC version 1.1-2
Sys.getlocale()
[1] "LC_COLLATE=English_United Kingdom.1252;LC_CTYPE=English_United
Kingdom.1252;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=English_United Kingdom.1252"
>
Many thanks
Bernie McConnell
Sea Mammal Research Unit
University of St Andrews
More information about the R-help
mailing list