You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用lubridate的parse_date_time函数mdy格式解析日期失败求助

嘿,我来帮你搞定这个日期解析的问题!

你遇到的核心问题是lubridate格式符的对应关系搞混啦:你用的"mdy"里的m对应的是数字形式的月份(比如12),但你的日期字符串里是月份的英文全称(December),两者不匹配,自然解析失败。

解决方法超简单,把格式参数换成"Bdy"就行——这里的B就是lubridate用来识别英文月份全称的专属格式符。试一下这段代码:

date <- "December 21 2016"
date_text <- parse_date_time(date, "Bdy", tz = "UTC")
date_text
#> [1] "2016-12-21 UTC"

如果之后遇到月份缩写的情况(比如Dec 21 2016),就用小写的b,也就是"bdy"作为格式参数就行。

另外,要是你想让函数更灵活,能适配多种月份格式,还可以给orders参数传入多个可能的格式选项,让lubridate自动匹配:

date_text <- parse_date_time(date, c("Bdy", "mdy", "bdy"), tz = "UTC")

这样不管是全称月份、数字月份还是缩写月份,都能轻松解析啦。

内容的提问来源于stack exchange,提问作者Hendrik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:45:06