提问人:fair21comic 提问时间:11/8/2023 更新时间:11/8/2023 访问量:17
以月为单位计算时间时出现奇怪的润滑行为
Strange lubridate behaviour when calculating time in months
问:
我正在尝试以月为单位计算两个日期之间的时间,特别是我对该时间是否< 18 个月感兴趣。我使用润滑剂得到的结果相互矛盾。
起初,我使用例如
lubridate::interval("2015-05-11", "2016-11-09")/months(1)
返回值 17.935 个月。但是我的同事手动进行了这个计算,并得出了一个略有不同的值(重要的是> 18 个月)。
经过一番调查,我发现如果我将上述公式中的两个区间强制转换为数字:
as.numeric(lubridate::interval("2015-05-11", "2016-11-09"))/as.numeric(months(1))
我得到的值与我的同事相同,即 18.004。
但我的问题是:为什么强制数字会产生这种差异?我希望它不会有什么区别。
答: 暂无答案
评论