1
我想問將R宗師以下的評論:POSIXct R中的奇怪行爲
as.POSIXct( 「1998年5月11日09:35」,「%M /%d/%Y%H:%M」,TZ = 「EST」) - as.POSIXct( 「的1小時
1998年5月11日9時35分00秒EST」) 時差
應該不是它因爲日期是一樣的,所以是零?
謝謝。
我想問將R宗師以下的評論:POSIXct R中的奇怪行爲
as.POSIXct( 「1998年5月11日09:35」,「%M /%d/%Y%H:%M」,TZ = 「EST」) - as.POSIXct( 「的1小時
1998年5月11日9時35分00秒EST」) 時差
應該不是它因爲日期是一樣的,所以是零?
謝謝。
根據?strptime
(其?as.POSIXct
指向)的format=
參數應該是
的字符串。如果任何元素的時間分量爲 (非午夜),''%Y-%m-%d%H:%M:%S''格式'方法的缺省值爲 ' m-%d「',否則。如果設置了 '選項(「digits.secs」),則最多可以打印指定的數字 數秒。
時間"1998-05-11 09:35:00 EST"
的格式爲"%Y-%m-%d %H:%M:%S %Z"
。然而%Z
只能用於輸出(見?strptime
)
如果您提供的tz=
參數的第二個電話,它會如預期
> as.POSIXct("05/11/1998 09:35", "%m/%d/%Y %H:%M",tz="EST") - as.POSIXct("1998-05-11 09:35:00 EST", tz="EST")
Time difference of 0 secs
值得注意的是
'EST' is a time zone used in Canada _without_ daylight saving time, and not ‘EST5EDT’ nor (Australian) Eastern Standard Time.)
(參見?timezone
)
不在我的系統上:'as.POSixct(「05/11/1998 09:35」,「%m /%d /%Y%H:%M」,tz =「EST」) - as.POSixct 「1998-05-11 09:35:00 EST」)' '0秒的時差' – 2014-09-06 01:54:45
@MatthewLundberg先嚐試'Sys.setenv(TZ =「UTC」)''。問題是在第二次調用中不提供'tz',並且OP期望「EST」自動被識別爲時區的值(並且可能也預計它與America/New_York相同) – GSee 2014-09-06 02:00:57
You是正確的。我的時區是CST6CDT,因此現在是UTC-5。 – 2014-09-06 02:13:02