r - 在R中向后生成四分之一序列
问题描述
我想向后生成季度数据序列。例如,如果我输入两个参数——“当前季度”= Q2'20 和“季度数”= 20,它应该返回过去 20 个季度的数据。
我知道如何生成季度的前向序列(见下文),但是当我知道当前季度时,我很难向后做。
seq(as.Date("2020-10-01"), by="quarter", length.out = 10)
解决方案
你可以做
seq(as.Date("2020-10-01"), by="-1 quarter", length.out = 10)
# [1] "2020-10-01" "2020-07-01" "2020-04-01" "2020-01-01" "2019-10-01"
# [6] "2019-07-01" "2019-04-01" "2019-01-01" "2018-10-01" "2018-07-01"
如果你想按日历顺序,只需将其反转
rev(seq(as.Date("2020-10-01"), by="-1 quarter", length.out = 10))
# [1] "2018-07-01" "2018-10-01" "2019-01-01" "2019-04-01" "2019-07-01"
# [6] "2019-10-01" "2020-01-01" "2020-04-01" "2020-07-01" "2020-10-01"
这只是使用基数 R。不需要dplyr
。
推荐阅读
- javascript - document.getElementsByClassName 给我未定义的值
- ios - Xcode 10 GM 中的未知类和 NSUnknownKeyException
- ios - Safari 是否控制在 iOS 上的非 Safari 浏览器中读取 cookie 的方式?
- java - 我正在尝试为 jsdt 定位 Eclipse 的 jar 存储库
- css - 没有样式表在 wordpress 中工作期望菜单
- javascript - 无法隐藏滚动条并保持 div 可滚动
- python-2.7 - 带有 Psycopg2 和 Python 的端口的数据库连接错误
- javascript - 如何使用 Object() 覆盖 JavaScript 对象值
- android - React-Native 在 Android 上禁用图像缓存
- r - 我在做子集时没有填充数据框?