假设我的数据框中有一列只包含字符串对象:
"00:20:10"
"02:12:10"
等
我想将这些字符串转换为相应的时间类型对象(在chron库中),所以我可以做一些事情,比如计算平均时间等。我该怎么做?
我的尝试只是做次数(数据列),但我得到一个小数值。
答案 0 :(得分:1)
为了简化,我假设一个只有一列的data.frame。请注意,即使它显示为正确的时间格式,基础数据仍然是十进制值。
library("chron")
mydf <- data.frame(time = c("00:20:10", "02:12:10"), stringsAsFactors = FALSE)
mydf[] <- lapply(mydf,times)
mydf
time
1 00:20:10
2 02:12:10
str(mydf)
'data.frame': 2 obs. of 1 variable:
$ time:Class 'times' atomic [1:2] 0.014 0.0918
.. ..- attr(*, "format")= chr "h:m:s"
答案 1 :(得分:0)
as.POSIXct('00:20:10', format='%H:%M:%S')
[1]“2016-06-23 00:20:10 EDT”
as.POSIXct('2:12:10', format='%H:%M:%S')
[1]“2016-06-23 02:12:10 EDT”
您还可以按
指定日期as.POSIXct('06/23/2016 00:20:10', format='%m/%d/%Y %H:%M:%S')
[1]“2016-06-23 00:20:10 EDT”