使用xts或zoo来查找R中更快更准确的时差

时间:2017-07-14 13:24:28

标签: r time xts zoo

我希望找到更快,更准确的方法来找到两次之间的差异,最好使用xtszoo包。目前我想找到两次之间的毫秒数差异,为此我一直在使用difftimes函数(单位设置为秒,然后我将此数字乘以1000得到毫秒 - 例如:as.numeric(difftime(time2, time1, units = "secs")) * 1000)。

这似乎运作得相当好,但我希望更快更准确的内容,所以我希望改用xtszoo。但是,我不知道如何使用这些软件包找到两次之间的差异。

它们在xtszoo中是否可以找到两次之间的差异?另外,它们是否能够让我计算两次之间的毫秒差异?

编辑:我忘记在原始主题中包含一些重要内容:我想要更准确的时间方法的原因是由于我的时代出现了舍入问题。我在这个问题中遇到了类似的问题:How R formats POSIXct with fractional seconds我的时间不到一秒钟(例如我得到时间11:12:53.332而不是时间11:12:53.333) 。到目前为止,我通过在数字中添加一小部分时间来“修复”此问题,即我可以通过编写11:12:53.33211:12:53.333更改为11:12:53.332 + 1e-6。但是,我现在需要下降到微秒,所以不要通过添加另一个部分来“修复”这个问题,而是更愿意使用包或函数来实现这个任务。

1 个答案:

答案 0 :(得分:1)

我认为你不需要任何这些套餐。运行以下代码:

a = Sys.time()
Sys.sleep(0.0001)
b = Sys.time()
difftime(b,a)

现在再次运行代码,但首先运行:

options(digits=20)

对象以高精度存储,但只打印有限位数。希望这有帮助!