在长格式数据框中标准化日期

时间:2020-05-25 18:59:40

标签: r tidyverse

我有一个数据框,其中包含巴西各州的每日COVID病例和死亡人数,如下所示:

state   date                cases            deaths
 RO 2020-03-20               1                0
 RO 2020-03-21               1                0
 RO 2020-03-22               3                0
 RO 2020-03-23               3                0
 RO 2020-03-24               3                0
 RO 2020-03-25               5                0

我的问题是,即使所有州都在2020-05-24结束,这些州的开始日期也不同。例如,RO从2020-03-20开始,而AC从2020-03-19开始。有什么我可以用来标准化它们的技术,以便每个州都可以在2020-02-26开始?

1 个答案:

答案 0 :(得分:2)

假设“日期”为Date类,则一格为complete

library(dplyr)
library(tidyr)
df1 %>%
   group_by(state, region) %>%
   complete(date = seq(as.Date('2020-02-26'), last(date), by = '1 day')) %>%
   ungroup

默认情况下,除非我们使用complete参数进行更改,否则NA所添加的缺失日期将具有其他列,例如“ {cases”,“ deaths”作为fill用于这些行。 >