将“xx-xxx-xxxx”转换为 R 中的日期

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

我想将

"19-SEP-2022"
等字符串转换为日期。 R中有什么可用的函数吗?谢谢。

r date
4个回答
3
投票

为了完成我想添加 lubridate 包中的

parse_date_time
功能。毫无疑问,这里的首选答案是@Marco Sandri:

library(lubridate)

x <- "19-SEP-2022"

x <- parse_date_time(x, "dmy")
class(x)

[1] "2022-09-19 UTC"
> class(x)
[1] "POSIXct" "POSIXt" 

3
投票

是的,

strptime
可用于将字符串解析为日期。

你可以做类似

strptime("19-SEP-2022", "%d-%b-%Y")
的事情。

如果您的日期不是零填充,请使用

%e
而不是
%d


3
投票

大约十年前,我开始编写anytime包,因为我坚信对于显而易见的日期(时间)模式,我们不需要指定模式或学习语法。

我仍然每天使用它,其他一些 CRAN 用户也是如此。

> anytime::anydate("19-SEP-2022")
[1] "2022-09-19"
>

所以在这里我们exaxtly做你所要求的:提供字符串,返回一个日期对象。


0
投票

这是一个使用基本 R 函数的解决方案

as.Date
:

as.Date("19-SEP-2022","%d-%b-%Y")
© www.soinside.com 2019 - 2024. All rights reserved.