R中as.Date的代码说明

时间:2016-04-26 15:35:52

标签: r

考虑以下代码:

test_date<-"01-Jan-64"  
as.Date(test_date,"%d-%b-%y")
## [1] "2064-01-01"     
test_date<-"01-Jan-69"  
as.Date(test_date,"%d-%b-%y")  
## [1] "1969-01-01"

为什么64被读为2064,69为1969?

1 个答案:

答案 0 :(得分:5)

来自?strptime

  

%Y   没有世纪的年份(00-99)。在输入时,值00到68的前缀为20和69到99乘以19 - 这是2004和2008 POSIX标准指定的行为......

如果存在歧义风险,基本上不要使用两位数年份。