R 将格式为'09:12 AM-Mon Oct-10-2016'的字符串转换为日期

R 将格式为'09:12 AM-Mon Oct-10-2016'的字符串转换为日期,r,date,parsing,R,Date,Parsing,我在MacOS上。我很难解析如下所示的日期字符串: "09:12 AM - Mon Oct-10-2016" 我尝试生成这样一种格式: Sys.setlocale("LC_TIME", 'en_US.UTF-8') # set locale to EN f <- "%I:%M %p - %a %b-%m-%Y" # define format z <- format(Sys.time(), format=f) # get example

我在MacOS上。我很难解析如下所示的日期字符串:

"09:12 AM - Mon Oct-10-2016"
我尝试生成这样一种格式:

Sys.setlocale("LC_TIME", 'en_US.UTF-8')   # set locale to EN
f <- "%I:%M %p - %a %b-%m-%Y"             # define format
z <- format(Sys.time(), format=f)         # get example
z
> "09:12 AM - Mon Oct-10-2016"
如何解析具有所述格式的字符串?

Sys.setlocale(“LC\u TIME”,“C”)
Sys.setlocale("LC_TIME", 'C')
f <- "%I:%M %p - %a %b-%d-%Y"
strptime("09:12 AM - Mon Oct-10-2016", format = f, tz = "GMT")
#[1] "2016-10-10 09:12:00 GMT"
f
Sys.setlocale(“LC_TIME”,“C”)

f您也可以尝试“润滑”:

require(lubridate)
> parse_date_time("09:12 AM - Mon Oct-10-2016", "HMmdY")
[1] "2016-10-10 09:12:00 UTC"

您也可以尝试“lubridate”:

require(lubridate)
> parse_date_time("09:12 AM - Mon Oct-10-2016", "HMmdY")
[1] "2016-10-10 09:12:00 UTC"

你试过这个吗图书馆(任何时间):anydate(“2016年10月10日星期一上午9:12”)@MFR
anydate(“2016年10月10日星期一上午9:12”)[1]NA
你试过这个吗库(任何时间):anydate(“09:12 AM-Mon Oct-10-2016”)@MFR
anydate(“09:12 AM-Mon Oct-10-2016”)[1]NA
wow,
parse_date\u time
在识别所需信息并丢弃其余信息方面似乎相当聪明……实际上我有一些脏数据,比如
“09:12 AM-Mon Oct-10-2016(此处有一些文本信息)”
。太棒了
parse_date_time
也会处理这个问题,使我的清洗步骤过时。注意,对于AM/PM格式,它应该是
“IMpmdY”
,而不是
“HMmdY”
。哇,
parse_date_time
在识别所需信息并丢弃其余信息方面似乎非常聪明……实际上我有一些脏数据,比如
“2016年10月10日星期一上午9:12(此处有一些文本信息)”
。令人惊讶。
parse_date\u time
也处理了这个问题,使我的清洗步骤过时。请注意,对于AM/PM格式,它应该是
“IMpmdY”
,而不是
“HMmdY”