如何使用r中的灵活窗口逐日计算一个月的滚动平均值?

如何使用r中的灵活窗口逐日计算一个月的滚动平均值?,r,R,我试图逐日计算3月份新冠病毒病例的滚动平均数 例如,3月5日应取3月前5天的病例平均数,20日应取前20天的病例平均数 我已经为此编写了一小段代码,但是是否有预构建的函数或更好的方法来实现这一点 df: Country.Region Date Cases_count <chr> <date> <dbl> 1 France 2021-03-01 4730 2 France

我试图逐日计算3月份新冠病毒病例的滚动平均数

例如,3月5日应取3月前5天的病例平均数,20日应取前20天的病例平均数

我已经为此编写了一小段代码,但是是否有预构建的函数或更好的方法来实现这一点

df

Country.Region Date       Cases_count
   <chr>          <date>           <dbl>
 1 France         2021-03-01        4730
 2 France         2021-03-02       22872
 3 France         2021-03-03       26903
 4 France         2021-03-04       25286
 5 France         2021-03-05       23507
 6 France         2021-03-06       23306
 7 France         2021-03-07       21835
 8 France         2021-03-08        5534
 9 France         2021-03-09       23143
10 France         2021-03-10       29674

问题:要将此与案例计数一起使用,我必须进行一些加入。因此,如果有一些预先构建的函数,那么我可能可以将其与mutate或summary一起使用。

因此,您实际需要的是一个累积的平均值,而不是滚动/移动平均值

更简单的方法是使用
cumsum
。例如,如果向量
x
包含N个元素,则累积平均值可以表示为:

cummulative_mean <- cumsum(x) / seq_len(length(x))

cumulative\u意思是建议:提供代码以生成您的
df
。粘贴名称和值会有所帮助,但要将它们粘贴到编辑器中,然后再对其进行声明,需要付出一些努力。如果您的代码按照通用样式指南正确格式化,也会有所帮助,如中所示。当然,我们会记住这一点!!谢谢@eduardokapp,这确实是一个累积平均值。我问这个问题真是太愚蠢了,这让人尴尬。现在你明白了,这可能看起来很愚蠢!希望你的问题也能帮助更多的人找到答案。是的,当然!!
      Date rolling_mean
1  2021-03-01      4730.00
2  2021-03-02     13801.00
3  2021-03-03     18168.33
4  2021-03-04     19947.75
5  2021-03-05     20659.60
6  2021-03-06     21100.67
7  2021-03-07     21205.57
8  2021-03-08     19246.62
9  2021-03-09     19679.56
10 2021-03-10     20679.00
cummulative_mean <- cumsum(x) / seq_len(length(x))