r - 字符串序列以一个正在运行的字符开始,然后是一个数字向量
问题描述
我希望得到以下字符串序列:
“2016-01” “2016-02” “2016-03” “2016-04” “2016-05” “2016-06” “2016-07” “2016-08” “2016-09” “2016-10” “2016-11” “2016-12” “2017-01” “2017-02” “2017-03” “2017-04” “2017-05” “2017-06” “2017-07” “2017-08” “2017-09” “2017-10” “2017-11” “2017-12” “2018-01” “2018-02” “2018-03” “2018-04” “2018-05” “2018-06” “2018-07” “2018-08” “2018-09” “2018-10” “2018-11” “2018-12” “2019-01” “2019-02” “2019-03” “2019-04” “2019-05” “2019-06” “2019-07”“2019-08” “2019-09” “2019-10” “2019-11” “2019-12” “2020-01” “2020-02” “2020-03” “2020-04” “2020-05” “2020-06” “2020-07” “2020-08” “2020-09” “2020-10” “2020-11” “2020-12”
我写了以下代码:
c(sprintf("2016-%02d", 1:12),
sprintf("2017-%02d", 1:12),
sprintf("2018-%02d", 1:12),
sprintf("2019-%02d", 1:12),
sprintf("2020-%02d", 1:12))
还有其他更短更优雅的解决方案吗?例如,有什么建议可以结合第一部分sprintf
?
解决方案
使用基数 R,尝试:
seq.Date(from = as.Date("2016-01-01"), to = as.Date("2020-12-01"), by = "1 month") |> format("%Y-%m")
[1] "2016-01" "2016-02" "2016-03" "2016-04" "2016-05" "2016-06" "2016-07"
[8] "2016-08" "2016-09" "2016-10" "2016-11" "2016-12" "2017-01" "2017-02"
[15] "2017-03" "2017-04" "2017-05" "2017-06" "2017-07" "2017-08" "2017-09"
[22] "2017-10" "2017-11" "2017-12" "2018-01" "2018-02" "2018-03" "2018-04"
[29] "2018-05" "2018-06" "2018-07" "2018-08" "2018-09" "2018-10" "2018-11"
[36] "2018-12" "2019-01" "2019-02" "2019-03" "2019-04" "2019-05" "2019-06"
[43] "2019-07" "2019-08" "2019-09" "2019-10" "2019-11" "2019-12" "2020-01"
[50] "2020-02" "2020-03" "2020-04" "2020-05" "2020-06" "2020-07" "2020-08"
[57] "2020-09" "2020-10" "2020-11" "2020-12"
推荐阅读
- scala - SBT with Spark-Core 3.0.1 Exception NoClassDefFound for org/apache/log4j/Logger
- python - 将所有字符([0-9A-Za-z ] 除外)转换为 HTML 十进制实体
- c# - IEnumerator 的 C# 等待任务
- python-3.x - 如何比较两个表中的多个列并找出重复项?
- xml - 如何在basex上打印没有标签的数据?
- dart - 生成动态群人
- amazon-web-services - AWS DocumentDb 不支持 mongodb 4.0
- lisp - 常见的 lisp 函数打印 nil 而不是 ()
- angular - 如何配置 AngularFireAuthModule 和/或 AngularFireAuth 以指向身份验证模拟器
- python - 使用 make_column_transformer 分类变量在拟合期间给出错误