我目前有这样的数据:数据
我希望将"日期"列更改为日期类型。(它现在符合性格(。
我试过下面的代码,但结果是"NA"。
as.Date(data$Date, format = "%a %d-%m-%Y %I:%M %p")
我在格式化日期以适应数据格式的方式上犯了错误吗?
不幸的是,我们没有您的数据(我们有您数据的图片,但唯一的使用方法是手动转录-最好将数据作为文本包含在您的问题中(。
无论如何,使用相同格式的简短示例:
dates <- c("Wed 25-Apr-2018 3:20 PM", "Thu 10-Mar-2022 10:53 AM")
我们可以通过以下操作获取日期:
as.Date(dates, "%a %d-%b-%Y %I:%M %p")
#> [1] "2018-04-25" "2022-03-10"
但请注意,这并不能保留时间,为此,您可能需要使用内置日期-时间格式POSIXct
的R。我们可以通过以下方式获得:
strptime(dates, "%a %d-%b-%Y %I:%M %p")
#> [1] "2018-04-25 15:20:00 BST" "2022-03-10 10:53:00 GMT"
我认为主要的问题是您使用%m
表示月份,但这只解析十进制格式的月份。月份的文本缩写需要%b
。