角色转换成时间

时间:2013-08-07 15:31:20

标签: r time

一个简单的问题让我发疯 我有这种格式的时间栏:

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

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

df$time <- chron(df$time)

但它只是将值转换为原子值。 我也读过this post,但它对我没有帮助。

1 个答案:

答案 0 :(得分:-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")

干杯, 利