一个让我发疯的简单问题.. 我有一个时间列采用这种格式:
time
00:05:00
00:10:00
00:15:00
10:20:00
10:25:00
如何及时转换所有值(就像 as.Date 函数适用于日期一样)?我试过了
df$time <- chron(df$time)
但它只是将值转换为原子值。我也读了这篇文章,但它对我没有帮助。
使用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")
干杯,伊莱