我在2014年3月9日凌晨2点的日期/时间与R中的as.POSXct
函数中出现了一个奇怪的错误。
以下简单示例显示了错误的性质。
凌晨3点工作
> as.POSIXct("2014-Mar-09 03:00", format="%Y-%b-%d %H:%M")
[1] "2014-03-09 03:01:00 MDT"
凌晨2点失败
> as.POSIXct("2014-Mar-09 02:00", format="%Y-%b-%d %H:%M")
[1] NA
凌晨2点之前的任何时间都失败
> as.POSIXct("2014-Mar-09 02:01", format="%Y-%b-%d %H:%M")
[1] NA
> as.POSIXct("2014-Mar-09 02:59", format="%Y-%b-%d %H:%M")
[1] NA
2014年3月10日没事了
> as.POSIXct("2014-Mar-10 02:00", format="%Y-%b-%d %H:%M")
[1] "2014-03-10 02:00:00 PDT"
原始转化次数指定了时区(tz='Canada/Mountain'
),为简洁起见,已将其排除在外。观察到相同的结果。添加不存在的秒数或更改格式(例如%I
12小时)也不起作用。
发生了什么事?这适用于R版本3.2.3(OS X)。