ripley@stats.ox.ac.uk
2005-Jul-11 06:59 UTC
[Rd] Sys.timzone() returns NA - problem caused by as.POSIXlt? (PR#8003)
This is not a bug in R: the documentation does say the result is OS-specific. `GMT' is a not a proper timezone on Windows, so NA is a valid answer. (Windows seems to use GMT to refer to the timezone of the UK, e.g.> Sys.time()[1] "2005-07-11 07:49:56 GMT Daylight Time"> Sys.timezone()[1] "GMT Daylight Time" although I am in British Summer Time not GMT.) I'll add yet another workaround for R-patched. On Thu, 7 Jul 2005 mkeller at fam.tuwien.ac.at wrote:> Full_Name: Martin Keller-Ressel > Version: 2.1.1 > OS: Windows 2000 > Submission from: (NULL) (128.130.51.88) > > > Sys.timezone() returns NA although the environment variable TZ is set to GMT > and > Sys.time() returns the correct time and date including the right timezone. > The problem is probably due to as.POSIXlt() which is used by Sys.timezone(). > > The problem has been confirmed by Uwe Ligges for R 2.1.1 on Windows NT 4.0. > See below for a R session outlining the problem: > > >> Sys.getenv("TZ") > TZ > "GMT" >> Sys.time() > [1] "2005-07-07 10:28:11 GMT" >> Sys.timezone() > [1] NA > >> Sys.timezone > function () > { > z <- as.POSIXlt(Sys.time()) > attr(z, "tzone")[2 + z$isdst] > } > <environment: namespace:base> > >> z <- as.POSIXlt(Sys.time()) >> attributes(z) > $names > [1] "sec" "min" "hour" "mday" "mon" "year" "wday" "yday" "isdst" > > $class > [1] "POSIXt" "POSIXlt" > > $tzone > [1] "GMT" > >> attr(z,"tzone") > [1] "GMT" >> z$isdst > [1] 0 >> attr(z,"tzone")[2] > [1] NA-- Brian D. Ripley, ripley at stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595
Reasonably Related Threads
- The presence/absence of `zone` in POSIXlt depending on time zone as a cause of possible inconsistences?
- POSIXlt, POSIXct, strptime, GMT and 1969-12-31 23:59:59
- How to make a vector/list/array of POSIXlt object?
- timezone tests and R-devel
- timezone tests and R-devel