使用 R 查找特定天/月前的日期
Posted
技术标签:
【中文标题】使用 R 查找特定天/月前的日期【英文标题】:Find a date specific days/months ago using R 【发布时间】:2022-01-24 04:02:09 【问题描述】:我通过以下方式获得今天的日期:
> today <- format(Sys.time(), "%Y-%m-%d")
> # or use `today <- format(Sys.Date())`
> today
[1] "2021-12-23"
我希望找到特定日期/月份(我们以 60 天 或 2 个月 为例)之前的日期,我该如何在 R 中做到这一点?
Python 中的等效代码是:
import datetime
from dateutil.relativedelta import relativedelta
day1 = datetime.date.today() - datetime.timedelta(days=60)
day2 = datetime.date.today() - relativedelta(months=2)
print(day1)
2021-10-24
print(day2)
2021-10-23
衷心感谢您提前提供的帮助。
【问题讨论】:
仅供参考:有一个Sys.Date()
函数可以返回没有时间部分的今天日期。
很高兴知道,谢谢,我将其添加为评论。
【参考方案1】:
如果您使用的是lubridate
,您可以像这样简单地添加减去天/月等。
library(lubridate)
today <- format(Sys.time(), "%Y-%m-%d")
today
ymd(today) - days(60)
ymd(today) - months(2)
> today
[1] "2021-12-23"
>
> ymd(today) - days(60)
[1] "2021-10-24"
>
> ymd(today) - months(2)
[1] "2021-10-23"
【讨论】:
感谢您回答我的问题,我以为我们需要使用difftime()
函数。以上是关于使用 R 查找特定天/月前的日期的主要内容,如果未能解决你的问题,请参考以下文章
Android DatePicker Fragment 返回一个月前的日期