有时间R级吗?

时间:2015-08-13 21:53:31

标签: r

有没有办法在只处理时间(没有日期)的类中将时间数据存储在R中?我不需要包含日期,我觉得它会占用额外的内存和可视化空间。我正在寻找一个只处理时间的精益课程,如下所示:

t1 = as.Time("10:38") 
t2 = as.Time("10:39")
t1-t2

存在as.Date功能,但时间对应的功能会很棒。 POSIXct存储的信息过多。

更新:包chron需要额外的工作来添加秒,而导致负值的时间减法不再格式化为时间:

>t1 = times(paste0("10:38",":00"))
>t2 = times(paste0("10:39",":00"))
> t1-t2
[1] -0.0006944444   
> t2-t1
[1] 00:01:00

2 个答案:

答案 0 :(得分:4)

正如我之前的评论,这里是period包中的lubridate类的示例,我认为它可能对您有用。有关详细信息,请?Period-class

library(lubridate)
t1 <- hm("10:38") 
t1
[1] "10H 38M 0S"
t2 <-  hm("10:39")
t1 - t2
[1] "-1M 0S"

答案 1 :(得分:0)

data.table有一个新类ITime,它可以理想地解决这个问题。

library(data.table)
> as.ITime("12:00")-as.ITime("11:10:01")
[1] "00:49:59"