[R] problem setting default timezone

Bos, Roger roger.bos at rothschild.com
Thu Apr 23 15:01:05 CEST 2015

Dear All,

I would like to learn the proper way to set the default time zone so I get the correct date for my files.  The code below is non-reproducible (sorry) because it is based on a file on my system, but I hope someone will be able to help me anyway.

I have a file that was last modified on 4/21/2015:

> file.info("E:/snap/q/snap_q_q1_" %+% endPeriod %+% ".txt")$mtime
[1] "2015-04-21 20:26:33 EDT"

When I convert that to a date, I gives me 2015-04-22.  I read about timezones and saw that there are two possible places to set the default values: One as a system variable and one as an option.  To be safe I set both:

>     Sys.setenv(TZ='America/New_York')
>     Sys.getenv("TZ")
[1] "America/New_York"
>     options(tz='America/New_York')
>     getOption("tz")
[1] "America/New_York"
>     as.Date(file.info("E:/snap/q/snap_q_q1_" %+% endPeriod %+% ".txt")$mtime)
[1] "2015-04-22"

But as you can see R still gives me the wrong date.  I can get the correct date as follows:

>     as.Date(file.info("E:/snap/q/snap_q_q1_" %+% endPeriod %+% ".txt")$mtime, tz='America/New_York')
[1] "2015-04-21"

But my question is why is the as.Date function not using the timezone I have set?

Thank you in advance,

This message and any attachments are for the named person's use only.
This message may contain confidential, proprietary or legally privileged
information. No right to confidential or privileged treatment
of this message is waived or lost by an error in transmission.
If you have received this message in error, please immediately
notify the sender by e-mail, delete the message, any attachments and all
copies from your system and destroy any hard copies. You must
not, directly or indirectly, use, disclose, distribute,
print or copy any part of this message or any attachments if you are not
the intended recipient.

More information about the R-help mailing list