将 R 中的字符转换为日期

问题描述 投票:0回答:1
df = data.frame(date = c("Jan-22", "Feb-22", "Mar-23"))

其中

"Jan-22"
表示 2022 年 1 月等

class(df$date)
返回值是字符而不是日期。我已尝试以下更改为
Date

df$date <- as.Date(df$date)

问题

charToDate(x) 中的错误: 字符串不是标准的明确格式 和

library(dplyr)
df$date <- df$date %>% as.character() % as.Date()

也不起作用。

如何将这一列字符转换为

Date

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

尝试

as.yearmon()
包中的
zoo
功能:

> require(zoo)
> as.yearmon(df$date, format = "%b-%y")
[1] "Jan 2022" "Feb 2022" "Mar 2023"

然后你可以将其强制为 Date :

> as.Date.yearmon(as.yearmon(df$date, format = "%b-%y"))
[1] "2022-01-01" "2022-02-01" "2023-03-01"
© www.soinside.com 2019 - 2024. All rights reserved.