0

一个让我发疯的简单问题.. 我有一个时间列采用这种格式:

time
00:05:00
00:10:00
00:15:00
10:20:00
10:25:00

如何及时转换所有值(就像 as.Date 函数适用于日期一样)?我试过了

df$time <- chron(df$time)

但它只是将值转换为原子值。我也读了这篇文章,但它对我没有帮助。

4

1 回答 1

-3

使用POSIXt日期/时间数据类型。(例如,参见?as.POSIXct)。这是您的数据的示例:

t <- c("00:05:00", "00:10:00", "00:15:00", "10:20:00", "10:25:00")
t2 <- as.POSIXct(t, format="%H:%M:%S")

diff(t2)

给出:

 > Time differences in mins
 > [1]   5   5 605   5
 > attr(,"tzone")

和:

difftime(t2[-1], t2[-length(t2)], units="hours")

给出:

 >Time differences in hours
 > [1]  0.08333333  0.08333333 10.08333333  0.08333333
 > attr(,"tzone")

干杯,伊莱

于 2013-08-07T15:39:11.147 回答