【问题标题】:Write a vector of year-month with a loop or function in R [closed]用R中的循环或函数编写年月向量[关闭]
【发布时间】:2020-07-18 08:22:40
【问题描述】:

我想制作一个2018年到2020年之间的年月向量,不用一一输入,比如2018-01, 2018-02 ... 2020-01。

这是预期的结果

month_names <- c("2018-01", "2018-02", "2018-03", ..... "2020-01")

任何帮助将不胜感激。

【问题讨论】:

    标签: r function sapply


    【解决方案1】:

    您可以使用seq 创建每月序列并使用format

    month_names <- format(seq(as.Date("2018-04-01"), as.Date("2020-04-01"), 
                           by = 'month'), '%Y-%m')
    
     #[1] "2018-04" "2018-05" "2018-06" "2018-07" "2018-08" "2018-09" "2018-10"
     #[8] "2018-11" "2018-12" "2019-01" "2019-02" "2019-03" "2019-04" "2019-05"
    #[15] "2019-06" "2019-07" "2019-08" "2019-09" "2019-10" "2019-11" "2019-12"
    #[22] "2020-01" "2020-02" "2020-03" "2020-04"
    

    outer 的另一种方式:

    c(t(outer(2018:2020, sprintf("%02d", 1:12), paste, sep = "-")))
    

    【讨论】:

    • 谢谢!外部解决方案很整洁。我喜欢它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多