R - Новый столбец на основе значений из других строк в других столбцах - PullRequest
0 голосов
/ 06 апреля 2020

У меня есть таблица дат и значений для каждой даты, и я хочу сделать среднее значение в новом столбце значений трех дат ранее. Как я могу сделать это в R?

У меня есть это:

date unit_sales 
2013-01-10   1
2013-01-11   1 
2013-01-14   1 
2013-01-18   2 
2013-01-21   1  
2013-01-25   1

И я хочу получить среднее значение за три дня до этого (если нет доступной даты, рассмотрите это как в Excel ):

date unit_sales Average
2013-01-10   1    NA
2013-01-11   1    1
2013-01-14   1    1
2013-01-18   2    NA
2013-01-21   1    2
2013-01-25   1    NA

1 Ответ

0 голосов
/ 06 апреля 2020

Мы могли бы использовать rollmean

library(dplyr)
library(zoo)
df1 %>%
    mutate(Average = rollmean(unit_sales, k= 3, fill = TRUE))
...