【问题标题】:Dates in Character to actual Dates using R使用 R 将字符中的日期转换为实际日期
【发布时间】:2021-09-10 05:05:54
【问题描述】:

我的日期格式为:"5/8/1971 0:00:00" "5/8/1971 0:00:00" "5/8/1971 0:00:00" 。它是字符格式。 我试过 as.Date()、as.numeric(as.character())、as.POSIXct()、as.Date.POSIXct()。我得到两个不同的结果,要么日期被“NAs”替换,要么得到错误“字符串不是标准的明确格式”。一切都是使用 R 完成的 请分享您的想法。

【问题讨论】:

  • 这个月是第一次吗?
  • as.POSIXct("5/8/1971 0:00:00", format = "%m/%d/%Y %H:%M:%S")。这将返回一个日期时间对象,只有日期 as.Date(result)
  • @RuiBarradas 感谢您的指导,这样就可以了。

标签: r date


【解决方案1】:

anytime 包中的anydate() 函数可以提供帮助:

> library(anytime)
> anydate(c("5/8/1971 0:00:00", "5/8/1971 0:00:00", "5/8/1971 0:00:00"))
[1] "1971-05-08" "1971-05-08" "1971-05-08"
> 

如果您更喜欢 POSIXct,anytime() 函数可以创建这些:

> ## also for datetime objects if you want those
> anytime(c("5/8/1971 0:00:00", "5/8/1971 0:00:00", "5/8/1971 0:00:00"))
[1] "1971-05-08 CDT" "1971-05-08 CDT" "1971-05-08 CDT"
> 

【讨论】:

    【解决方案2】:

    我们可以使用

    library(lubridate)
    mdy_hms(dates)
    

    【讨论】:

      猜你喜欢
      • 2014-02-02
      • 2020-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-21
      • 1970-01-01
      相关资源
      最近更新 更多