Bizzare as.POSIXct行为的时间戳与时间部分下降

mlt*_*mlt 5 r posixct

我正在努力使用包含POSIXct的colClasses的read.csv将整个时间戳列向下舍入到最新的时间部分.我遇到了一个类似的问题,暗示我有一些约会可能会错过时间.情况并非如此.然而,在将我的矢量平分后,我注意到一些特定的时间戳应该受到指责.这是一个片段.

as.POSIXct(c("2016-03-13 01:00:00", "2016-03-13 02:00:00", "2016-03-13 03:00:00"))
Run Code Online (Sandbox Code Playgroud)

这让我感到满意

[1] "2016-03-13 CST" "2016-03-13 CST" "2016-03-13 CST"
Run Code Online (Sandbox Code Playgroud)

它是在DST过渡期,但不过时间部分在哪里?这是一个错误吗?

> version
               _                           
platform       i386-w64-mingw32            
arch           i386                        
os             mingw32                     
system         i386, mingw32               
status                                     
major          3                           
minor          3.0                         
year           2016                        
month          05                          
day            03                          
svn rev        70573                       
language       R                           
version.string R version 3.3.0 (2016-05-03)
nickname       Supposedly Educational      
Run Code Online (Sandbox Code Playgroud)

更新

全局设置时区时,似乎克服了这个问题,它对我来说仍然看起来像个错误.

更新2

我确认行为是特定于Windows的(特定于平台的错误?)这里是Ubuntu上R 3.2.3的输出

[1] "2016-03-13 01:00:00 CST" "2016-03-13 01:00:00 CST"
[3] "2016-03-13 03:00:00 CDT"
Run Code Online (Sandbox Code Playgroud)

更新3

有一个已知的未经证实的错误#16852.

更新4

除非我遗漏了某些内容,否则我在%S和%OS之间的情况没有差异,如评论中所述.

> strptime(c("2016-03-13 01:00:00", "2016-03-13 02:00:00", "2016-03-13 03:00:00"), "%Y-%m-%d %H:%M:%S")
[1] "2016-03-13 01:00:00 CST" "2016-03-13 02:00:00"     "2016-03-13 03:00:00 CDT"
> strptime(c("2016-03-13 01:00:00", "2016-03-13 02:00:00", "2016-03-13 03:00:00"), "%Y-%m-%d %H:%M:%OS")
[1] "2016-03-13 01:00:00 CST" "2016-03-13 02:00:00"     "2016-03-13 03:00:00 CDT"
Run Code Online (Sandbox Code Playgroud)

PS我还没有深入研究代码......:/