首页 > 解决方案 > 如何将整数格式的日期列转换为基础 R 中的日期格式?

问题描述

我正在使用一个包含一列日期的数据框,所有这些日期都是202101172021 年 1 月 17 日形式的整数。

我试着跑 data$DATE <- as.Date(as.character(data$DATE), "%Y%m%d")

但这将我所有的日期都变成了 NA。我做错了什么,有没有办法在不导入库的情况下在基础 R 中解决这个问题?

标签: rdate

解决方案


您可以format在调用时使用该选项as.Date

dates <- as.character(data$YearMonthDay)
data$newVar = as.Date(dates, format="%Y%m%d")

请注意,您不需要在origin此处使用参数,因为即使您传递的是数字数据,它也是实际文本日期的形式。origin在传入一个纪元以来的天数时使用。

通常不建议朝这个方向前进,并且无论如何,基准 R 日期必须具有年份部分。因此,包括年份组件,如果您不想使用它,请不要使用它。


推荐阅读