如何在小于24的小时内进行操作

时间:2017-09-14 19:18:32

标签: r date time chron

我列出了学生在平台上花了多少时间。平台将该数据作为累积时间发送给我,这意味着我有超过24小时的时间。我一直在使用Chron软件包对这些时间进行排序和操作,我只是意识到它不接受大于24的时间值。我可以将其转换为秒,但我想维持HH%MM%S %显示格式。

> time <- chron(times = "24:55:00")
Warning message:
In convert.times(times., fmt) :
time-of-day entries out of range in positions 1 set to NA
> time
Time in days:
[1] NA

2 个答案:

答案 0 :(得分:3)

我强烈建议您在使用日期时使用tidyverse中的lubridate

library(lubridate)
foo <- "24:55:00"

bar <- hms(foo)
bar
[1] "24H 55M 0S"

class(bar)
[1] "Period"
attr(,"package")
[1] "lubridate"

# Time in days
bar / hours(24)
[1] 1.038194

答案 1 :(得分:2)

您可以改为使用hms包中的lubridate功能。

hms("24:55:00") - hms("26:45:00")
## [1] "-2H 10M 0S"