Message-ID: <24227.35856.851303.689831@rob.eddelbuettel.com>
Date: 2020-04-25T01:02:08Z
From: Dirk Eddelbuettel
Subject: Timezone conversion on Ubuntu 20.04
In-Reply-To: <e7403960-2773-1279-ab8d-b13bb82311fa@comcast.net>
On 24 April 2020 at 17:46, David Winsemius wrote:
| On 4/24/20 4:02 PM, Jeroen Ooms wrote:
| > I am testing R 4.0 and ran into an issue with timezones on Ubuntu
| > Focal: converting a timestamp to another timezone results in NA:
| >
| > as.POSIXct(as.POSIXlt(Sys.time(), tz = "CET"), tz = "EST")
| >
| > This only happens on Ubuntu Focal, it seems to work fine on Ubuntu
| > Bionic. I am the standard ubuntu docker image icw/ r-base from Dirk's
| > ppa:edd/r-4.0 on both systems.
| >
| > Am I missing a system dependency for tzone data?
Maybe. What does `dpkg -s tzdata` say? Installed? Or not?
The base images are pretty narrow and may simply not have it installed.
| I don't really know but I do know that "EST" is often not a specific
| valid value. It is used by both the USA and Australia. More valid
| designation would probably be "America/New_York"
|
| The vector of valid names is returned by:
|
| OlsonNames(tzdir = NULL)
Excellent point by David.
Also, there are _two_ issues here:
- Does the machine itself have timezone information, ie can you access with
anything other than R? You hinted at that with question about 'tzdata'
- If it does, did R regress? At some point years ago R was less clever
about finding tz info when the /etc/ softlink was not set. I coded up one
smarter heuristic in CRAN package 'gettz'; later R itself carried some of
that same logic. This obviously needs the system info from the previous
question.
Dirk
--
http://dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org