首页 > 解决方案 > 如何在几天内获得两个日期之间的差异?

问题描述

我需要得到两个日期(时间戳)之间的差异,例如(2021-03-08 00:01:01) - (2021-03-07 23:59:59)等于 1。我尝试使用 day() 函数,但是有一个问题:如果两个日期的月份不同,它会返回错误的结果,例如as(2021-03-01 12:12:12) - (2021-02-27 12:12:12)将等于-26,但我需要 2。有什么想法吗?

标签: rdate

解决方案


不知道您的日期是如何格式化的,但请尝试as.Date

-diff(as.Date(c("2021-03-08 00:01:01", "2021-03-07 23:59:59")))
# Time difference of 1 days

-diff(as.Date(c("2021-03-01 12:12:12", "2021-02-27 12:12:12")))
# Time difference of 2 days

如果你只想让数字环绕as.numeric(...)它。


推荐阅读