【问题标题】:R - aggregate daily to weekly with start date as SaturdayR - 每天到每周汇总,开始日期为星期六
【发布时间】:2016-11-15 04:20:40
【问题描述】:

我有每日数据,我想从星期六开始转换为每周。

 date value
1   11/5/2016    30
2   11/6/2016    20
3   11/7/2016    12
4   11/8/2016    22
5   11/9/2016    48
6  11/10/2016    50
7  11/11/2016    47
8  11/12/2016    12
9  11/13/2016    19
10 11/14/2016    31
11 11/15/2016    43
12 11/16/2016    26
13 11/17/2016    33
14 11/18/2016    36
15 11/19/2016    14
16 11/20/2016    15
17 11/21/2016    36
18 11/22/2016    38
19 11/23/2016    28
20 11/24/2016    21
21 11/25/2016    13    

我尝试了以下方法,但它假定星期一是每周开始

data = as.xts(df$value,order.by=as.Date(df$date))
weekly = apply.weekly(data,sum)

我希望在星期六之前将输出汇总为每周开始。

【问题讨论】:

    标签: r xts


    【解决方案1】:

    xts 调用中的 order.by 语句与 Date 类中的正确 format 不匹配

    data <- xts(df$value, order.by = as.Date(df$date, '%m/%d/%Y'))
    tapply(data[,1], cumsum(format(index(data), '%w')==6), sum)
    

    【讨论】:

    • 但这只是给出了一个累计总数的矩阵。如何获得与值列表关联的每周偏移日期标签?
    • @JoeM05 你可以发一个关于这个的问题
    猜你喜欢
    • 2015-05-16
    • 2019-11-21
    • 2014-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多