转换为R中的日期格式

时间:2019-05-18 00:39:40

标签: r date-conversion

我一直试图将日期从因子格式转换为日期格式,但每次都遇到错误。数据格式为

Mon/Yr
201701
201602
201506

当前值是因子类型。我想将它们转换为日期格式。我使用了以下代码,但一直在获取NA值

as.character(x$`Mon/Yr`)
as.POSIXct(x$`Mon/Yr`, format = '%y%m')

Output: [1] NA NA NA

我已经跟踪了许多帖子中的示例解决方案,但是无法修复。您能为此提出建议吗?

1 个答案:

答案 0 :(得分:0)

library(lubridate)
library(dplyr)
df <- data.frame("Mon/Yr" = c(201701, 201602, 101506))
df
> df
  Mon.Yr
1 201701
2 201602
3 101506
df2 <- df %>% 
  dplyr::mutate(Mon.Yr = lubridate::parse_date_time(Mon.Yr, '%Y%m'),
                Mon.Yr = base::format(Mon.Yr, "%Y-%m"))
df2
> df2
   Mon.Yr
1 2017-01
2 2016-02
3 1015-06