将字符日期转换为R中的日期

将字符日期转换为R中的日期,r,date,character,R,Date,Character,这是我的数据集概述。 我想将monthformat=字符转换为R中的formate:date 我已尝试使用as.Date as.Datedf$month,%Y-%m,但转换失败。 我使用了anytime和as.POSIXct 我想要转换日期的原因是我需要通过变量rime左键连接其他数据集 crime_type month n rate <chr> <chr> <int> <dbl> 1 Bi

这是我的数据集概述。 我想将monthformat=字符转换为R中的formate:date

我已尝试使用as.Date as.Datedf$month,%Y-%m,但转换失败。 我使用了anytime和as.POSIXct

我想要转换日期的原因是我需要通过变量rime左键连接其他数据集

   crime_type    month       n   rate
   <chr>         <chr>   <int>  <dbl>
 1 Bicycle theft 2017-04    33 NA    
 2 Bicycle theft 2017-05    32  1.03 
 3 Bicycle theft 2017-06    36  0.889
 4 Bicycle theft 2017-07    39  0.923
 5 Bicycle theft 2017-08    52  0.75 
 6 Bicycle theft 2017-09    36  1.44 
另一个数据集在这里

 ym      unemploy_rate
   <chr>           <dbl>
 1 2017-1            4.6
 2 2017-2            4.6
 3 2017-3            4.5
 4 2017-4            4.4
 5 2017-5            4.4
 6 2017-6            4.3
 7 2017-7            4.3
我们可以粘贴一天并用作.Date

使现代化 如果目标是左联合其他数据集,其中“ym”列在-之后没有0,我们可以插入该数据集,而不是对第一个数据进行格式更改

df2$ym <- sub("-(\\d)$", "-0\\1", df2$ym)

谢谢你的回答。我对数据集使用了as.yearmon,但它会产生不希望的结果。我希望日期是2017年-01@JamesHuang从你的例子来看,你的数据集已经是YYYY-MM类了,不清楚你为什么需要转换才能再次得到它?@JamesHuang我更新了帖子,但你的条件不清楚YY-MM类中有,但不是日期格式。我会试试的,谢谢you@JamesHuang那么in应该可以工作,因为我使用了%Y-%m,然后在粘贴日期后,它是%Y-%m-%d
library(zoo)
df$month <- as.Date(as.yearmon(df$month))
df2$ym <- sub("-(\\d)$", "-0\\1", df2$ym)