65

Rのデフォルトのタイムゾーンを変更するにはどうすればよいですか?私は時系列で作業しています。私の時系列はすべてUTCタイムゾーンで定義されていますが、日付を印刷する場合は常にCET/CESTタイムゾーンで行われます。

4

4 に答える 4

94

コンピューターの時刻全体を変更せずにそれを行う別の方法は、次のように setenv コマンドを使用することです。Sys.setenv(TZ='GMT')

于 2011-06-20T07:31:48.117 に答える
13

R でのタイム ゾーンの変更に関する次の優れた記事を参照してください。

http://blog.revolutionanalytics.com/2009/06/converting-time-zones.html

まもなく (リンクが将来利用できなくなる場合に備えて):

# your time string
pb.txt <- "2009-06-03 19:30"
# convert it to R object for London time zone
pb.date <- as.POSIXct(pb.txt, tz="Europe/London")
# convert it to PDT time zone
format(pb.date, tz="America/Los_Angeles",usetz=TRUE)
[1] "2009-06-03 11:30:00 PDT"

# can be also done for many date at once
d <- c("2009-03-07 12:00", "2009-03-08 12:00", "2009-03-28 12:00", "2009-03-29 12:00", "2009-10-24 12:00", "2009-10-25 12:00", "2009-10-31 12:00", "2009-11-01 12:00")
t1 <- as.POSIXct(d,"America/Los_Angeles")
cbind(US=format(t1),UK=format(t1,tz="Europe/London"))

     US                    UK                   
[1,] "2009-03-07 12:00:00" "2009-03-07 20:00:00"
[2,] "2009-03-08 12:00:00" "2009-03-08 19:00:00"
[3,] "2009-03-28 12:00:00" "2009-03-28 19:00:00"
[4,] "2009-03-29 12:00:00" "2009-03-29 20:00:00"
[5,] "2009-10-24 12:00:00" "2009-10-24 20:00:00"
[6,] "2009-10-25 12:00:00" "2009-10-25 19:00:00"
[7,] "2009-10-31 12:00:00" "2009-10-31 19:00:00"
[8,] "2009-11-01 12:00:00" "2009-11-01 20:00:00"
于 2011-06-16T16:09:26.150 に答える
10

どのオペレーティングシステムですか?

一般に、サイト全体のバリアントhelp(Startup)を介して値を設定できるため、を参照してください。.Renviron

ただし、おそらくこれをマシン全体に設定する必要があります。これは、Linuxではファイルが変更される可能性が/etc/timezoneあり、Windowsではシステム全体の環境変数を設定しますTZ

最後に、フォーマットされた日付と時刻の表示にCET / CESTが表示されている場合、これはすでにシステムのデフォルトとして設定されている可能性があります。問題は、RオブジェクトでUTC時刻を正しく設定する方法です。

于 2011-06-16T15:59:07.630 に答える