如何利用r中的彈性窗口逐日計算一個月的滾動平均值?

我正試圖逐日計算3月份covid病例的滾動平均數。

例如,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

code:

max_date <- ymd(max(df$Date))
march <- seq(ymd("2021-03-01"), ymd(max_date), by = "day")

rolling_data <- lapply(march, function(x){
  
  rolling_avg <- df %>% 
    filter( 
           Country.Region == "France", 
           Date %in% c(ymd("2021-03-01"): x)) %>%
      summarise(rolling_mean = mean(Cases_count)) #%>% 
    
      # from: https://stackoverflow.com/questions/61038643/loop-through-irregular-list-of-numbers-to-append-rows-to-summary-table
  data.frame(Date = x, rolling_march = rolling_avg)
})

do.call(rbind,rolling_data)

output:

      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

問題:為了與案例計數一起使用,我必須進行一些連接。因此,如果有一些預先構建的函數,那么我可以將其與mutate或summary一起使用。

? 最佳回答:

所以你真正想要的是累積平均線,而不是滾動/移動平均線。

一種更簡單的方法是使用cumsum。例如,如果有一個包含N個元素的向量x,則累積平均值可以表示為:

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

對于實際的滾動平均值,zoopkg為我們提供了zoo::rollmean

主站蜘蛛池模板: 国产中文字幕一区| 日本一区二区三区四区视频| asmr国产一区在线| 亚洲av无码片区一区二区三区| 亚洲中文字幕一区精品自拍 | 亚洲一区二区三区免费视频| 国产成人精品一区二三区在线观看| 亚洲福利视频一区二区三区| 亚洲日本一区二区三区在线不卡| 精品国产天堂综合一区在线| 一区二区三区日韩精品| 亚洲视频一区调教| 日本亚洲国产一区二区三区| 美女视频一区二区| 精品91一区二区三区| 精品无码AV一区二区三区不卡| 不卡无码人妻一区三区音频| 国产精品一区二区久久精品无码 | 久久精品国产一区二区| 精品一区二区三区在线观看l| 亚洲图片一区二区| 国产精品一区二区不卡| 麻豆国产一区二区在线观看| 亚洲视频一区在线观看| 日本免费一区二区在线观看| 久久久精品人妻一区二区三区蜜桃| 久久99精品波多结衣一区| 无码精品人妻一区二区三区中 | 亚州AV综合色区无码一区| 国产韩国精品一区二区三区久久| 亚洲视频一区二区在线观看| 亚洲色一区二区三区四区| 天堂一区人妻无码| 精品一区二区三区中文| 国产一区二区三区在线电影| 精品一区二区三区色花堂| 国产福利精品一区二区| 精品一区二区三区在线成人| 免费看无码自慰一区二区| 精品视频一区二区| 中文字幕在线观看一区二区|