【问题标题】:Proper date formatting in RR中的正确日期格式
【发布时间】:2015-10-25 13:49:39
【问题描述】:

我目前正在处理这个数据集。

'data.frame':   2938 obs. of  4 variables:
  $ X                     : int  21562 21603 21618 21620 21659 21990 21996 22024 22592 22665 ...
  $ uuid                  : Factor w/ 2938 levels "0005d695-6bc8-48ad-b323-803499630e43",..: 2396 2910 2372 2008 2582 1405 2114 1447 2348 2503 ...
  $ date                  : Factor w/ 2927 levels "2015-06-06T06:33:14Z",..: 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 ...
  $ type                  : Factor w/ 1 level "productCart": 1 1 1 1 1 1 1 1 1 1 ...

这里有一个变量date,其中日期的格式是这样的:

日期 --> 2015-06-06T06:33:14Z

我想创建一个新变量并将日期更改为更可行的格式,如下所示:

NewDate --> 2015-06-06 06:33:14

你能给我一些建议吗?我正在尝试几种不同的方法,但到目前为止它们都不起作用。

【问题讨论】:

    标签: r date as.date


    【解决方案1】:

    您可以使用as.POSIXct 转换为 'POSIXct' 类

      date1 <- as.POSIXct(date, format='%Y-%m-%dT%H:%M:%SZ')
      date1
      #[1] "2015-06-06 06:33:14 EDT"
    

    或使用lubridate

      library(lubridate)
      ymd_hms(date, tz='EDT')
      #[1] "2015-06-06 06:33:14 EDT"
    

    如果我们要提取小时和分钟部分,可以使用format

     format(date1, '%H:%M')
     #[1] "06:33"
    

    数据

       date <- "2015-06-06T06:33:14Z"
    

    【讨论】:

    • 谢谢!我现在正在创建新变量:工作日、月份,还想提取时间。 NewDate --> 2015-06-06 06:33:14 我想从中提取时间并将其创建为一个新变量,如下所示:时间 --> 06:33(应删除秒)有什么建议吗?
    猜你喜欢
    • 2015-11-19
    • 1970-01-01
    • 2017-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多