将字符串转换为数字日期格式的问题 R

Issues converting strings to numeric date formats R

我想将具有以下格式 21 Septiembre 2019 的日期列转换为 21/09/2019 我已经使用 parse_date_time 但我一直收到错误。

我正在使用的代码

这是包含日期的对象 STM_silla_2$date

STM_silla_2$date <- parse_date_time(x=STM_silla_2$date, orders = c("dBY", "dBy")) ```

我收到以下错误。可能是因为包裹无法识别西班牙语中的月份?

All formats failed to parse. No formats found

这是一些数据样本

dput(STM_silla_2$date[1:5])

c(" 26 Septiembre 2016 ", " 06 Septiembre 2012 ", " 25 Octubre 2013 ", " 07 Septiembre 2015"," 19 Noviembre 2014 ")

我也试过 dmy():lubridate 没有结果。

将您的区域设置为西班牙语,然后转换为 Date

Sys.setlocale("LC_ALL","es_ES")
as.Date("21 Septiembre 2019", "%d %B %Y")
#[1] "2019-09-21"

之后 lubridate::dmy 也可以工作

lubridate::dmy("21 Septiembre 2019")
#[1] "2019-09-21"

library(readr) 
parse_date(" 26  Septiembre  2016 ","%d %B %Y",locale=locale("es"))
#[1] "2016-09-26"

添加语言代码 locale=locale("es")