我想生成一个完全面板(每月)的时间序列
我试过tsibble
这对大数据很有效,但对于有大量缺失数据的小数据集,它似乎选择了非常宽的间隔。
另外,为了方便比较许多不同的集合,我想指定开始和结束日期。
library(dplyr)
data <- structure(list(
month = structure(c(18078, 18201), class = "Date"),
account = c("3125", "3100"),
sum = c(-21.0084, -2000)),
class = c("tbl_df", "tbl", "data.frame"),
row.names = c(NA, -2L))
data %>%
mutate(month = tsibble::yearmonth(month)) %>%
tsibble::as_tsibble(key = account, index = month) %>%
tsibble::fill_gaps(sum = 0, .full = T)
这里我有一个最小的例子,它导致
# A tibble: 4 x 3
month account sum
<mth> <chr> <dbl>
1 2019 Jul 3100 0
2 2019 Nov 3100 -2000
3 2019 Jul 3125 -21.0
4 2019 Nov 3125 0
但应该从 5 月到 12 月开始,每个组(帐户)每个缺失的月份为 0。