我有以下数据框(ts1):
D1 Diff
1 20/11/2014 16:00 0.00
2 20/11/2014 17:00 0.01
3 20/11/2014 19:00 0.03
我想在 ts1 中添加一个新列,这将是连续行 D1(日期)之间的小时差(以小时为单位)。
新的 ts1 应该是:
D1 Diff N
1 20/11/2014 16:00 0.00
2 20/11/2014 17:00 0.01 1
3 20/11/2014 19:00 0.03 2
为了独立计算小时差,我使用:
library(lubridate)
difftime(dmy_hm("29/12/2014 11:00"), dmy_hm("29/12/2014 9:00"), units="hours")
我知道为了计算每行之间的差异,我需要将 ts1 转换为矩阵。
我使用以下命令:
> ts1$N<-difftime(dmy_hm(as.matrix(ts1$D1)), units="hours")
我得到:
Error in as.POSIXct(time2) : argument "time2" is missing, with no default