このPOSIXct日付のリストを検討してください。
times <- list(as.POSIXct(c("2012-07-26 00:30", "2012-07-26 6:20",
"2012-07-26 10:40", "2012-07-26 15:50")),
as.POSIXct(c("2012-07-26 01:15", "2012-07-26 10:10",
"2012-07-26 15:15", "2012-07-26 18:50")),
as.POSIXct(c("2012-07-26 00:35", "2012-07-26 15:05",
"2012-07-26 19:36", "2012-07-26 22:32")),
as.POSIXct(c("2012-07-26 03:34", "2012-07-26 16:43",
"2012-07-26 21:44", "2012-07-26 23:45")))
私が行った場合:
range(times[[1]])
私は正しく得ます:
[1] "2012-07-26 00:30:00 CEST" "2012-07-26 15:50:00 CEST"
さて、私がそうするなら:
range(times[c(1,3)])
何らかの理由で、RはPOSIXctオブジェクトをタイムスタンプに変換することを決定し、私に
[1] 1343255400 1343334720
次に、次のようにして、それらをPOSIXctに再変換しようとします。
as.POSIXct(range(times[c(1,3)]), origin="1970-01-01 00:00")
そして、奇妙なことに、私は1時間前に範囲を取得します。
[1] "2012-07-25 23:30:00 CEST" "2012-07-26 21:32:00 CEST"
だから私はしなければなりません:
as.POSIXct(range(times[c(1,3)]), origin="1970-01-01 01:00")
正しい範囲を取得するには:
[1] "2012-07-26 00:30:00 CEST" "2012-07-26 22:32:00 CEST"
私は何かが足りないのですか、それともどこかにバグがありますか?