【问题标题】:Split data frame by a set of specific dates按一组特定日期拆分数据框
【发布时间】:2018-09-11 11:51:58
【问题描述】:

您好,我想按一组特定日期(而不是根据“月”或“周”)拆分数据框。

这里是示例代码

id <- c(1:6)
ts <- as.Date(c("2018-06-01","2018-06-25","2018-06-03","2018-05-06","2018-04-30","2018-06-13"))
df <- data.frame(id,ts)
split(df,cut(ts,breaks = c("2018-05-01","2018-05-20","2018-06-14")))

但它说无效的中断规范。

我想知道在这种情况下如何指定中断?我还尝试了 cut.dates 并尝试了不同的格式,例如“日/月/年”。

非常感谢!

【问题讨论】:

    标签: r date


    【解决方案1】:

    你是这个意思吗?

    split(df, cut(
        df$ts, 
        breaks = as.Date(c("2018-04-30", "2018-05-01","2018-05-20","2018-06-14", "2018-06-30"))))
    #$`2018-04-30`
    #  id         ts
    #5  5 2018-04-30
    #
    #$`2018-05-01`
    #  id         ts
    #4  4 2018-05-06
    #
    #$`2018-05-20`
    #  id         ts
    #1  1 2018-06-01
    #3  3 2018-06-03
    #6  6 2018-06-13
    #
    #$`2018-06-14`
    #  id         ts
    #2  2 2018-06-25
    

    在使用cutDates 时,您需要将breaks 指定为Date 对象。另请注意,我添加了一个上下断点,因为您在示例中给出的break 点没有涵盖df$tsDates 的范围。

    【讨论】:

      猜你喜欢
      • 2021-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-24
      • 2021-01-16
      • 2013-05-27
      相关资源
      最近更新 更多