间隔,持续时间和期间的不同时间长度

问题描述 投票:1回答:1

我是lubridate的新手。我尝试用lubridate计算两组时间之间的时差,但对于间隔,持续时间和周期却得到了些许不同的答案

library(lubridate)
a <- dmy_hms("9/7/1988 4:30:00")
b <- dmy_hms("2/11/2019 4:30:00")

c <- a %--% b

per <- as.period(c)
dur <- as.duration(c)

time_length(c, unit = "year") #31.31694
time_length(per, unit = "year") #31.33716
time_length(dur, unit = "year") #31.33699
r lubridate
1个回答
0
投票
如可通过as.duration获得的?as.duration文档中所述,as.duration将返回

精确时间测量,而as.period将提供相对测量。它继续指出:

因此,持续时间和期间之间不存在一对一的映射。与期间对象一起使用时,as.duration提供了对期间长度的不精确估计;

因此,使用time_length将导致as.periodas.duration的结果不同。

© www.soinside.com 2019 - 2024. All rights reserved.