我在Mac OS X Mountain Lion上運行R 2.15.1。我試圖用lubridate
包(v 1.1.0)在2011年的美國東部時區以15分鐘的時間間隔生成一系列時間。下面好像它應該工作:日光節約時間在lubridate
d0 <- mdy_hms("1/1/2011 5:00:00", tz="UTC")
dspan <- d0 + c(0:35039) * minutes(15)
espan <- with_tz(dspan,tz="America/New_york")
現在,在2011年夏令時開始在凌晨2點3月13日ESPAN在該日期前16個值:
espan[(month(espan)==3)&(day(espan)==13)][1:16]
[1] "00:00:00 EST" "00:15:00 EST" "00:30:00 EST" "00:45:00 EST"
[5] "01:00:00 EST" "01:15:00 EST" "01:30:00 EST" "01:45:00 EST"
[9] "03:00:00 EDT" "03:15:00 EDT" "03:30:00 EDT" "03:45:00 EDT"
[13] "04:00:00 EDT" "04:15:00 EDT" "04:30:00 EDT" "04:45:00 EDT"
在上面的輸出我刪除了日期以使它適合在這裏。但它給了我所期望的。美國東部標準時間上午1點後的時間是美國東部時間上午3點但是,夏令時在11月6日結束,這裏是該日的前16個值:
espan[(month(espan)==11)&(day(espan)==6)][1:16]
[1] "00:00:00 EDT" "00:15:00 EDT" "00:30:00 EDT" "00:45:00 EDT"
[5] "01:00:00 EDT" "01:15:00 EDT" "01:30:00 EDT" "01:45:00 EDT"
[9] "01:00:00 EDT" "01:15:00 EDT" "01:30:00 EDT" "01:45:00 EDT"
[13] "02:00:00 EST" "02:15:00 EST" "02:30:00 EST" "02:45:00 EST"
爲什麼1 AM EDT出現兩次?美國東部時間凌晨1點以後的一小時不應該是美國東部時間上午1點?這是lubridate
的問題,還是操作系統的一些怪癖?
只是說明這個錯誤似乎已被修復。 –