用R中的时差计算

时间:2016-05-12 21:58:59

标签: r

我正在尝试计算从现在到存储在x中的开始时间。

> x
[1] 2016-06-11T13:00Z 2016-06-11T19:00Z 2016-06-10T19:00Z 2016-06-11T16:00Z

我现在尝试

> difftime(Sys.time(), x, units="hours")
Time differences in hours
[1] -696.0873 -696.0873 -672.0873 -696.0873

计算仅考虑天数并乘以24.我需要从现在到事件开始之间的确切小时数。

有人可以帮忙..

1 个答案:

答案 0 :(得分:0)

可以通过-函数直接计算时差,该函数返回的差异,您可以将其转换为小时除以3600.作为演示:

> time1 <- Sys.time()
> time1
[1] "2016-05-12 22:23:58 EDT"
> time2 <- Sys.time()
> time2
[1] "2016-05-12 22:24:16 EDT"
> time2 - time1
Time difference of 17.79894 secs
> as.numeric(time2 - time1)/3600
[1] 0.004944149

因此,对于您的情况,as.numeric(x - Sys.time())/3600应该为您完成工作。 round()可以根据需要将其显示为特定数字。