【问题标题】:Converting YYYYMMDDHHMMSS to a date and time class in r将 YYYYMMDDHHMMSS 转换为 r 中的日期和时间类
【发布时间】:2021-11-08 08:09:27
【问题描述】:

我的数据集包含以下格式的日期和时间:

datetime<- c(20210830102055, 20210830102312, 20210830102335)
cycle <- c(25, 30, 35)
df <- data.frame(datetime, cycle)
df 
     datetime cycle
1 2.021083e+13    25
2 2.021083e+13    30
3 2.021083e+13    35

我正在尝试将日期时间列转换为

datetime2<- c("2021-08-30 10:20:55", "2021-08-30 10:23:12", "2021-08-30 10:23:35")
df <- data.frame(datetime2, cycle)
df

            datetime2 cycle
1 2021-08-30 10:20:55    25
2 2021-08-30 10:23:12    30
3 2021-08-30 10:23:35    35

有什么有效的方法吗?

谢谢

【问题讨论】:

    标签: r lubridate as.date


    【解决方案1】:

    您可以在lubridate 包中使用ymd_hms()

    datetime<- c(20210830102055, 20210830102312, 20210830102335)
    cycle <- c(25, 30, 35)
    df <- data.frame(datetime = ymd_hms(datetime), cycle)
    

    【讨论】:

      【解决方案2】:

      基础 R:

      data.frame(datetime2=as.POSIXct(as.character(df$datetime),
                                      format="%Y%m%d%H%M%S"), 
                 cycle)
      

      输出:

                  datetime2 cycle
      1 2021-08-30 10:20:55    25
      2 2021-08-30 10:23:12    30
      3 2021-08-30 10:23:35    35
      

      这里的关键是as.POSIXctformat

      > as.POSIXct(as.character(df$datetime), format="%Y%m%d%H%M%S")
      [1] "2021-08-30 10:20:55 CST" "2021-08-30 10:23:12 CST" "2021-08-30 10:23:35 CST"
      >
      

      【讨论】:

        【解决方案3】:
        datetime<- c(20210830102055, 20210830102312, 20210830102335)
        cycle <- c(25, 30, 35)
        df <- data.frame(datetime, cycle)
        
        # METHOD 1
        df$datetime <- as.POSIXct(as.character(df$datetime) , format = "%Y%m%d%H%M%S")
        
        # METHOD 2
        
        library(lubridate)
        df$datetime <- ymd_hms(df$datetime)
        

        【讨论】:

        • 请写几句话来说明您的答案以及解决问题的原因。
        猜你喜欢
        • 2013-10-30
        • 2018-09-29
        • 2014-06-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-17
        相关资源
        最近更新 更多