【问题标题】:How do I convert a column of dates in integer format to date format in base R? [closed]如何将整数格式的日期列转换为基础 R 中的日期格式? [关闭]
【发布时间】:2021-01-17 08:09:10
【问题描述】:

我正在使用具有一列日期的数据框,所有日期都是 20210117 形式的整数,表示 2021 年 1 月 17 日。

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

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

【问题讨论】:

  • 我无法重现您的问题,它是working for me
  • as.Date("20210117", "%Y%m%d") 工作正常。你到底有什么?下面的答案与您已有的答案有何不同?

标签: r date


【解决方案1】:

调用as.Date时可以使用format选项:

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-07
    • 2014-02-25
    • 2018-07-18
    • 2020-08-04
    • 2014-04-06
    • 2020-08-15
    • 2022-01-24
    • 1970-01-01
    相关资源
    最近更新 更多