2014-02-06 26 views
2

我想用十进制值计算两个日期之间的差异。假设我们有“1978-08-25”和“2014-02-05”(%Y-%m-%d)。我如何计算这两个年份的小数值之间的差异(即不只是35年,而是35.95年?)?先谢谢你。在R中的两个日期之间获得年的最佳方式

+1

检查出'lubridate'包 –

+1

有点接近:'as.integer(as.Date(“2014-02-05”) - as.Date(“1978-08-25”))/ 365.25' – flodel

+0

' 0.95'年不是一个明确的时间量。 – hadley

回答

2

您可以查看zoo包。

x = as.yearmon("2014-02-05") 
y = as.yearmon("1978-08-25") 

x - y 
[1] 35.5 
1

可能值得注意的是,这实际上不能被明确地回答(就像@hadley暗指的那样)。即使在R中的基础difftime功能只允许选项:

...units = c("auto", "secs", "mins", "hours", "days", "weeks")) 

无月,无数年来,因为他们没有明确的价值观。话虽如此,你可以在评论中使用@ flodel的方法来近似地理解一些合理的东西。

相关问题