R заполнить пропущенные даты по категориям - PullRequest
0 голосов
/ 17 марта 2020
x<-data.frame(product=c(rep("A",3),rep("B",4)),
          xdate=as.Date(c("2020-01-01","2020-01-02","2020-01-04",'2020-01-02','2020-01-04','2020-01-07','2020-01-08')),
          number=sample(1:10,7))

В примерах данных я хочу заполнить пропущенные даты по категориям. В примерах данных это означает, что для категории AI нужны все пропущенные даты между минимальной датой 2020-01-01 и максимальной '2020-01-04 и теми же логами c для категории B. Я знаю, что функция завершена, но она кажется, этого недостаточно для того, что я ищу. И числовая переменная должна быть заполнена 0s

1 Ответ

2 голосов
/ 17 марта 2020

Мы также можем использовать complete здесь:

library(dplyr)
library(tidyr)

x %>%
  group_by(product) %>%
  complete(xdate = seq(min(xdate), max(xdate), by = "1 day"), fill = list(number = 0))
...