【问题标题】:Convert character time format to excel time format in R在R中将字符时间格式转换为excel时间格式
【发布时间】:2020-06-12 19:56:42
【问题描述】:

我有以下数据框

times <- c("00:12:23","00:45:01", "02:13:43") moretimes <- c("00:12:23","00:44:23", "05:12:34") x <- as.data.frame(times,moretimes)

我想将所有具有字符时间格式的列转换为与 excel 兼容的时间格式,以便我可以在 excel 中进行求和,我一直在尝试使用 as.Date 但出现错误。

【问题讨论】:

    标签: r excel dplyr lubridate


    【解决方案1】:

    我们可以从data.table使用as.ITime

    library(data.table)
    times1 <- as.ITime(times)
    str(times1)
    #'ITime' int [1:3] 00:12:23 00:45:01 02:13:43
    

    对于更新的 OP 的帖子

    x <- data.frame(times,moretimes)
    x[] <- lapply(x, as.ITime)
    str(x)
    #'data.frame':  3 obs. of  2 variables:
    # $ times    : 'ITime' int  00:12:23 00:45:01 02:13:43
    # $ moretimes: 'ITime' int  00:12:23 00:44:23 05:12:34
    

    【讨论】:

    • 我更新了这个问题,所以它更适用于我的问题,因为我正在使用数据框:)
    • @yungFanta 你是说data.frame 还是as.data.frame
    • 这在 R 中有效,但是当我导出到 xls 文件时,它不会将该列识别为时间列。
    猜你喜欢
    • 1970-01-01
    • 2019-03-15
    • 2018-11-05
    • 2015-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-21
    相关资源
    最近更新 更多