R:以hh:mm:ss的形式增加时间/持续时间超过24小时

时间:2012-01-04 19:01:06

标签: r

我正在尝试处理有关几次实验持续时间的时间数据。该数据的格式为hh:mm:ss。

exp1 <- "34:03:07"
exp2 <- "00:01:10"
exp3 <- "01:13:41"

第一个实验以总持续时间给出,随后的实验列为超过exp1的时间。例如,我正在寻找exp2的总时间结果是34:04:17,而exp3则是35:16:48。将时间添加到exp1的最佳方法是什么,当chron这样的包只能用于hh:mm:ss到24:00:00?

1 个答案:

答案 0 :(得分:5)

我经常更喜欢避免像这样的日期/时间类毛发持续时间,并且只是自己解析字符串并在几分钟或几秒内将它们转换为数值。

但与往常一样,通常有一个具有类似功能的包。在这种情况下, lubridate 有一个可能有用的duration类:

d <- new_duration(hour = 34,minute = 23,second = 23)
d1 <- new_duration(hour = 12,minute = 12,second = 23)
> d+d1
[1] 167746s (1.94d) 

所以你可以用它们算术,你也可以通过将数值(以秒为单位)传递给as.duration来创建持续时间对象。