当我通过另一个 difftime 对象扩展 difftimes 向量时,似乎添加的项目的单位被忽略并覆盖而不进行转换:
> t = Sys.time()
> d = difftime(c((t+1), (t+61)), t)
> d
Time differences in secs
[1] 1 61
> difftime(t+61, t)
Time difference of 1.016667 mins
> d[3] = difftime(t+61, t)
> d
Time differences in secs
[1] 1.000000 61.000000 1.016667
> as.numeric(d)
[1] 1.000000 61.000000 1.016667
这是在 R 3.1.0 中。这种行为有合理的解释吗?我只是想以这种方式存储一些时差以供以后使用,完全没想到会这样。我没有在任何地方找到这个记录..
好的,现在我只是帮助自己始终指定单位:
> d[3] = difftime(t+61, t, unit="secs")
> d
Time differences in secs
[1] 1 61 61