My question pertains to what budugulo asked here Select models with lowest RMSE but I'm wondering how I can go further and use the models with the best predictive capability against the test data and apply it across the entire original hierarchical dataset to get future observations.
I understand how to forecast into the future with one individual time series, but I'm trying to forecast a hierarchical dataset that would require too much time to forecast the best models onto all of the original time series individually to forecast future observations. Is there a way to fit the best models (using lowest RMSE) onto the original time series in a hierarchical dataset to forecast future observations 3 years into the future (2020)?
Hopefully the code below will help towards answering my question.
library(tidyverse) library(tsibble) library(fable) library(fpp3) fit <- tourism %>% filter(Quarter <= yearquarter("2015 Q1")) %>% model( ets = ETS(Trips), arima = ARIMA(Trips) ) fc <- fit %>% forecast(new_data = filter(tourism, Quarter > yearquarter("2015 Q1"))) bestrmse <- accuracy(fc, tourism) %>% group_by(Region, State, Purpose) %>% filter(RMSE == min(RMSE)) %>% select(.model:Region) bestfits <- fit %>% pivot_longer(cols=ets:arima, names_to = ".model", values_to = "fit") %>% right_join(bestrmse) %>% mutate(.model = "best") %>% pivot_wider(Region:Purpose, names_from = ".model", values_from = "fit") %>% as_mable(key = c(Region, State, Purpose), model = best) #Apply 'best' models from bestfits onto original non-trained/non-tested time series and #forecast future observations into 2020.