【问题标题】:how to convert the num to date in R? [duplicate]如何将数字转换为R中的日期? [复制]
【发布时间】:2012-07-21 09:47:21
【问题描述】:

我有以下数据框:

id<-c(1,2,3,4)
date<-c(19970807,19970902,19971010,19970715)
df<-data.frame(id,date)

其中日期列中的值的类型是'num'。现在我需要将日期列中的值转换为“日期”类型为“yyyy-mm-dd”。我在加载 'zoo' 库后尝试了 as.date,但它导致了一些不可接受的结果。 如果有人可以帮助我,将不胜感激。

【问题讨论】:

    标签: r


    【解决方案1】:

    你可以这样做:

    library(lubridate)
    df <- data.frame(id, ymd(date))
    

    【讨论】:

      【解决方案2】:

      为了完整起见,还有第三种可能性使用strptime

      strptime(date,format="%Y%m%d")
      [1] "1997-08-07" "1997-09-02" "1997-10-10" "1997-07-15"
      

      【讨论】:

        【解决方案3】:

        您可能错过了as.character()。在基础 R 中:

        as.Date(as.character(date), format = "%Y%m%d")
        [1] "1997-08-07" "1997-09-02" "1997-10-10" "1997-07-15"
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-08-09
          • 2019-01-18
          • 1970-01-01
          • 2021-03-21
          • 2022-01-27
          相关资源
          最近更新 更多