as.Date返回带有R的四位数的日期

问题描述 投票:0回答:1

我正在尝试将字符转换为日期格式,但是“日”被4位数字代替。

> mydate="20/3/20"
> mydate=as.Date(mydate)
> mydate
[1] "0020-03-20"

几天前这没有发生,直到现在我重新运行一个旧脚本。我不知道这是否与我最近升级到R版本3.6.3有关。

我试图用gsub删除“ 00”,但是它再次将日期重新设置为字符。

> mydate=gsub("00","",mydate)
> class(mydate)
[1] "character"

有人知道我如何才能将mydate保留为日期,或者为什么会这样吗?

提前谢谢您

r date digits as.date
1个回答
0
投票

Date类的默认格式为"%Y-%m-%d",即4位数字的年份,后跟一个破折号,然后是两位数,然后是一个破折号和两位数。任何其他格式,我们需要在format

中指定as.Date参数
as.Date(mydate, "%d/%m/%y")
#[1] "2020-03-20"

对于两位数的年份,我们需要非常小心,因为它可能导致一些奇怪的输出。最好有4位数字的年份

© www.soinside.com 2019 - 2024. All rights reserved.