使用 parse_date_time 解析日期:为什么“2004-04-04 02:00”会失败?
Parsing dates with parse_date_time: Why does "2004-04-04 02:00" fail?
我正在用 lubridate::parse_date_time
解析日期,但有些日期不起作用。例如,为什么 2004-04-04 02:00
return NA
但 2004-04-04 01:00
和 2004-04-04 03:00
有效?
library("lubridate")
"2004-04-04 01:00" %>% parse_date_time(c("Ymd HM"), tz = "America/New_York")
"2004-04-04 02:00" %>% parse_date_time(c("Ymd HM"), tz = "America/New_York")
"2004-04-04 03:00" %>% parse_date_time(c("Ymd HM"), tz = "America/New_York")
这里有另外两个例子 return NA
:
"20110313 0240" %>% parse_date_time(c("Ymd HM"), tz = "America/New_York")
"20130310 0255" %>% parse_date_time(c("Ymd HM"), tz = "America/New_York")
我正在使用 lubridate 版本 1.6.0。
America/New_York
中没有 2004-04-04 02:00
。在 2004-04-04 01:59:59 EST
之后,时钟快进到 2004-04-04 03:00:00 EDT
,开始夏令时。
您的时间戳可能存储在 EST5
而不是 America/New_York
。
> "2004-04-04 01:00" %>% parse_date_time(c("Ymd HM"), tz = "EST5") %>% with_tz("America/New_York")
[1] "2004-04-04 01:00:00 EST"
> "2004-04-04 02:00" %>% parse_date_time(c("Ymd HM"), tz = "EST5") %>% with_tz("America/New_York")
[1] "2004-04-04 03:00:00 EDT"
我正在用 lubridate::parse_date_time
解析日期,但有些日期不起作用。例如,为什么 2004-04-04 02:00
return NA
但 2004-04-04 01:00
和 2004-04-04 03:00
有效?
library("lubridate")
"2004-04-04 01:00" %>% parse_date_time(c("Ymd HM"), tz = "America/New_York")
"2004-04-04 02:00" %>% parse_date_time(c("Ymd HM"), tz = "America/New_York")
"2004-04-04 03:00" %>% parse_date_time(c("Ymd HM"), tz = "America/New_York")
这里有另外两个例子 return NA
:
"20110313 0240" %>% parse_date_time(c("Ymd HM"), tz = "America/New_York")
"20130310 0255" %>% parse_date_time(c("Ymd HM"), tz = "America/New_York")
我正在使用 lubridate 版本 1.6.0。
America/New_York
中没有 2004-04-04 02:00
。在 2004-04-04 01:59:59 EST
之后,时钟快进到 2004-04-04 03:00:00 EDT
,开始夏令时。
您的时间戳可能存储在 EST5
而不是 America/New_York
。
> "2004-04-04 01:00" %>% parse_date_time(c("Ymd HM"), tz = "EST5") %>% with_tz("America/New_York")
[1] "2004-04-04 01:00:00 EST"
> "2004-04-04 02:00" %>% parse_date_time(c("Ymd HM"), tz = "EST5") %>% with_tz("America/New_York")
[1] "2004-04-04 03:00:00 EDT"