私は、Rob Hyndman の Rstudio.conf のワークショップのやり方に従って、階層的な予測を行おうとしていますが、いくつかの問題が発生しています。これが私のコードです:
library(dplyr)
library(tsibbledata)
library(tsibble)
library(fable)
aus_retail_2013_tr <- aus_retail %>%
filter(Month <= yearmonth("2013 Dec"))
aus_retail_2013_vl <- aus_retail %>%
filter(Month > yearmonth("2013 Dec"))
hmod <- aus_retail_2013_tr %>%
aggregate_key(State*Industry, Turnover=sum(Turnover)) %>%
model(ar=ARIMA(log(Turnover))) %>%
reconcile(ar_adj=min_trace(ar))
fcasts_hmod <- forecast(hmod, aus_retail_2013_vl)
fcasts_hmod %>%
filter(is_aggregated(Industry), State == "Victoria") %>%
autoplot()
プロットの出力は以下のとおりです。
私の主な問題は次のとおりです。
- 調整は、実際には予測をまったく変更していないようです。図は、
ar
とar_adj
行が同一であることを示しています。 - 予測は 2014 年から 2015 年の期間のみですが、完全なデータセットは 2018 年になることがわかっています。
これらを修正するにはどうすればよいですか? 後者はおそらく、すべての時系列が期間全体をカバーしているわけではないためですがreconcile
、欠落している期間をスキップしないようにするにはどうすればよいですか?
これは、dplyr 0.8.5、fable 0.2.0、fabletools 0.1.3、および tsibble 0.8.6 で発生します。Ubuntu/R 3.6.3 と Windows 10/R 4.0.0 の両方で同じ結果が得られます。
PS。固定期間を予測しようとすると、エラーが発生します。
> fcasts_hmod <- forecast(hmod, h="5 years")
Error: Reconciliation of non-normal forecasts is not yet supported.
Run `rlang::last_error()` to see where the error occurred.