r - 在 R 中将日期偏移一个月
问题描述
我有个约会,比如说 2020 年 7 月 7 日。
my_date <- as.Date("2020/07/07")
我想把这个日期偏移一个月。所以它应该在 2020 年 8 月 7 日返回。
我试过my_date + 30
了,但如果这个月有 30 天或 31 天,它就不起作用。
编辑
我的问题必须准确。如果日期是 2020 年 5 月 31 日呢?它应该抵消到 2020 年 6 月 30 日。请在基础 R 中提供帮助。
任何帮助将不胜感激。
解决方案
使用%m+%
自lubridate
library(lubridate)
my_date <- as.Date("2020/07/07")
my_date %m+% months(1)
#[1] "2020-08-07"
my_date + months(1)
在这种情况下也可以使用,但如果是一个月的最后一天,它会弄乱计算。
my_date <- as.Date("2020/05/31")
my_date + months(1)
#[1] NA
my_date %m+% months(1)
#[1] "2020-06-30"
推荐阅读
- javascript - 隐藏 Modal 而不是卸载它有什么好处?
- django - 我应该使用什么电子邮件 API 来支持用户可以注册然后发送电子邮件的应用程序?
- vue.js - Vue 3:使用组合 API 正确实现动态布局渲染
- java - 在保持数据完整性的同时对循环依赖进行建模
- python - 如何在 Python 中检查输入是字符串还是浮点数?
- reactjs - 使用 JEST 和酶对异步函数进行 React JS 单元测试
- vaadin - 如何使用 Vaadin Flow Grid 示例左键单击以处理列可见性示例
- jsp - 在 Jmeter/Loadrunner 中处理浏览器动态值
- encryption - 关于 DES-CBC 模式下加密的 RTP/RTCP 问题
- java - Android Java Retrofit URL 意外更改?