Implements the Information Combination (IComb) method for forecast reconciliation, combining information from multiple base forecasts through a regression-based framework that can be estimated using penalized regression techniques. The penalty parameter is estimated using the rolling forecast origin cross-validation.
Usage
icomb(
models,
train_size,
alpha = 1,
standardize = FALSE,
standardize_response = FALSE,
intercept = TRUE,
lambda = NULL,
lambda_min_ratio = "expand",
nlambda = 100,
maxit = 1e+07,
thresh = 1e-07,
exact = TRUE
)Arguments
- models
A column of models in a mable.
- train_size
The size of the initial training window.
- alpha
The elasticnet mixing parameter, with \(0 \leq \alpha \leq 1\). The penalty is defined as $$(1 - \alpha)/2\|B\|_2^2 + \alpha\|B\|_2$$
alpha = 1is the group lasso penalty, andalpha = 0is the ridge penalty.- standardize
Logical flag for
xvariable standardization, prior to fitting the model sequence. The coefficients are always returned on the original scale. Default isstandardize = FALSE.- standardize_response
This allows the user to standardize the response variables. Default is
standardize_response = FALSE.- intercept
Should intercepts be fitted (default = TRUE) or set to zero (FALSE).
- lambda
A user supplied
lambdasequence. Typical usage is to have the program compute its ownlambdasequence based onnlambdaandlambda_min_ratio. Supplying a value oflambdaoverrides this. Supply a decreasing sequence oflambdavalues.- lambda_min_ratio
The smallest value for
lambda, as a fraction oflambda_max(the data derived value for which all coefficients are zero).lambda_min_ratio = "expand"(default) sets the ratio as \(10^{-\lfloor \log_{10}(\lambda_{max})\rfloor-2}\) whereaslambda_min_ratio = "glmnet"sets the ratio to the value used in theglmnetpackage. Ifnobs < nvars, the default is0.01, otherwise1e-04.- nlambda
The number of lambda values. Default is 100.
- maxit
Maximum number of passes over the data for all lambda values. Default is \(10^7\).
- thresh
Convergence threshold for coordinate descent. Each inner coordinate-descent loop continues until the maximum change in the objective after any coefficient update is less than thresh times the null deviance. Defaults value is 1e-07.
- exact
A logical flag indicating whether to use a sequence of lambda values (from
lambda_maxtolambda_best) when fitting the final model on the entire dataset. The functions in theglmnetpackage are designed for efficiency by computing the entire regularization path (a sequence of lambda values) using "warm starts", which is often faster than computing a single fit. The default isTRUE.
References
Nguyen, M., Vahid, F., & Wickramasuriya, S. L. (2025). Hierarchical Forecasting: The Role of Information Combination (Working Paper No. 11/25). Department of Econometrics and Business Statistics, Monash University.
Examples
# \donttest{
library(fable)
library(fabletools)
library(tsibble)
library(dplyr)
library(lubridate)
#>
#> Attaching package: ‘lubridate’
#> The following object is masked from ‘package:tsibble’:
#>
#> interval
#> The following objects are masked from ‘package:base’:
#>
#> date, intersect, setdiff, union
library(ggtime)
tourism_gts <- tourism |>
aggregate_key(State * Purpose,
Trips = sum(Trips))
fit <- tourism_gts |>
model(base = ETS(Trips)) |>
reconcile(ols = min_trace(base, method = "ols"),
icomb = icomb(base, train_size = 75))
fit |>
forecast(h = "3 years")
#> # A fable: 1,620 x 6 [1Q]
#> # Key: State, Purpose, .model [135]
#> State Purpose .model Quarter
#> <chr*> <chr*> <chr> <qtr>
#> 1 ACT Business base 2018 Q1
#> 2 ACT Business base 2018 Q2
#> 3 ACT Business base 2018 Q3
#> 4 ACT Business base 2018 Q4
#> 5 ACT Business base 2019 Q1
#> 6 ACT Business base 2019 Q2
#> 7 ACT Business base 2019 Q3
#> 8 ACT Business base 2019 Q4
#> 9 ACT Business base 2020 Q1
#> 10 ACT Business base 2020 Q2
#> # ℹ 1,610 more rows
#> # ℹ 2 more variables: Trips <dist>, .mean <dbl>
# extracting results from cross-validation
fit |>
pull(icomb) |>
attr("icombfit")
#> $fit
#>
#> Call: glmnet(x = fitted[, !xconst_var], y = actual, family = "mgaussian", alpha = alpha, lambda = lambda_subset, standardize = standardize, intercept = intercept, thresh = thresh, maxit = maxit, standardize.response = standardize_response)
#>
#> Df %Dev Lambda
#> 1 0 0.00 5214000
#> 2 1 21.44 4328000
#> 3 1 36.21 3594000
#> 4 1 46.40 2983000
#> 5 1 53.42 2477000
#> 6 1 58.26 2056000
#> 7 1 61.59 1707000
#> 8 1 63.89 1417000
#> 9 1 65.47 1177000
#> 10 1 66.57 976900
#> 11 2 68.13 811100
#> 12 2 71.48 673400
#> 13 2 73.98 559000
#> 14 2 75.84 464100
#> 15 2 77.22 385300
#> 16 2 78.22 319900
#> 17 2 78.96 265600
#> 18 3 79.85 220500
#> 19 3 80.52 183100
#> 20 3 81.03 152000
#> 21 4 81.66 126200
#> 22 4 82.14 104800
#> 23 5 82.60 86970
#> 24 6 83.13 72200
#> 25 7 83.62 59940
#> 26 7 84.07 49770
#> 27 7 84.43 41320
#> 28 8 84.78 34300
#> 29 8 85.31 28480
#>
#> $info
#> $info$lambda_info
#> lambda_max lambda_best lambda_best_idx
#> 5213568.40 28477.96 29.00
#>
#> $info$mse_info
#> [1] 1099655.87 1053326.76 908724.60 696573.09 523881.87 403153.61
#> [7] 318529.85 259030.98 217048.55 187304.57 165247.68 145538.53
#> [13] 128654.45 114305.33 102287.52 92393.97 84399.03 77417.17
#> [19] 70035.98 64780.06 60320.75 56695.16 53803.64 51565.46
#> [25] 49173.19 46894.74 45022.94 43995.03 43871.62 44223.33
#> [31] 44708.91 45474.95 46275.95 47047.06 47769.80 49093.01
#> [37] 50471.34 51122.21 51896.76 52250.59 53052.00 53388.79
#> [43] 54106.22 55012.14 55965.56 56120.15 55484.49 55696.13
#> [49] 58345.38 62822.76 67282.84 72705.08 79534.87 86907.15
#> [55] 93590.86 99084.41 103147.83 106197.49 108961.67 111330.86
#> [61] 113867.87 114186.89 111138.07 109689.56 108847.98 108588.72
#> [67] 108488.50 107513.30 107273.68 105962.62 105818.88 104494.43
#> [73] 104767.84 104203.54 103953.57 103704.77 103583.99 103275.64
#> [79] 103277.18 103261.70 103230.00 103213.93 103178.97 103075.87
#> [85] 103182.03 103109.13 103105.85 103105.90 103121.07 103139.21
#> [91] 103152.77 103161.35 103163.78 103165.74 103166.76 103168.24
#> [97] 103169.71 103170.39 103171.62 103171.92
#>
#> $info$nnzeros
#> [1] 8
#>
#>
#> $coefs
#> y1 y2 y3 y4 y5
#> intercept 70.943034895 -2.437763e+01 -7.3321160996 0.7957856489 40.029076090
#> V1 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V2 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V3 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V4 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V5 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V6 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V7 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V8 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V9 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V10 -0.005013266 -1.478803e-03 -0.0041404057 0.0061065586 -0.004525916
#> V11 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V12 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V13 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V14 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V15 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V16 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V17 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V18 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V19 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V20 0.007706514 -3.232384e-04 0.0003986825 0.0053699029 0.013151861
#> V21 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V22 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V23 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V24 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V25 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V26 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V27 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V28 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V29 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V30 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V31 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V32 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V33 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V34 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V35 -0.010303225 1.840097e-02 -0.0036034369 0.0003189483 0.004813260
#> V36 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V37 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V38 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V39 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V40 0.000000000 0.000000e+00 0.0000000000 0.0000000000 0.000000000
#> V41 0.006198446 1.096520e-02 -0.0003731595 0.0004677251 0.017258207
#> V42 -0.018359403 7.371283e-03 0.0013338353 -0.0032630964 -0.012917381
#> V43 0.008096280 9.836295e-03 0.0042535117 -0.0002005353 0.021985551
#> V44 -0.001724620 -1.801722e-02 0.0012943982 0.0124966901 -0.005950754
#> V45 0.013074172 4.716511e-03 0.0026365183 0.0025258144 0.022953016
#> y6 y7 y8 y9 y10
#> intercept 249.668495857 441.12163907 -78.220023223 875.742110913 1488.31222261
#> V1 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V2 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V3 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V4 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V5 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V6 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V7 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V8 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V9 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V10 0.117109659 0.07631582 -0.017901603 0.100744093 0.27626797
#> V11 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V12 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V13 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V14 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V15 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V16 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V17 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V18 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V19 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V20 -0.043761240 -0.10491505 0.008425145 -0.087365715 -0.22761686
#> V21 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V22 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V23 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V24 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V25 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V26 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V27 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V28 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V29 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V30 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V31 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V32 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V33 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V34 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V35 -0.055533276 0.07465782 0.007109973 0.162871885 0.18910640
#> V36 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V37 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V38 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V39 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V40 0.000000000 0.00000000 0.000000000 0.000000000 0.00000000
#> V41 0.208892787 -0.04443144 0.011472342 -0.015505383 0.16042831
#> V42 -0.053119825 0.21549454 -0.022402240 -0.107067516 0.03290496
#> V43 0.008926483 -0.01903583 0.043091250 -0.006451628 0.02653027
#> V44 -0.059652082 -0.09424432 -0.026021236 0.133091074 -0.04682656
#> V45 0.034460713 0.04492829 0.034206470 0.030369420 0.14396489
#> y11 y12 y13 y14 y15
#> intercept -46.700271712 169.108058746 9.4724146293 -12.962758366 118.917443298
#> V1 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V2 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V3 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V4 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V5 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V6 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V7 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V8 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V9 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V10 -0.012050920 -0.026198586 0.0008210498 -0.007136312 -0.044564767
#> V11 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V12 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V13 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V14 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V15 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V16 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V17 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V18 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V19 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V20 0.001474110 0.057070239 0.0016807025 0.009682361 0.069907412
#> V21 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V22 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V23 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V24 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V25 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V26 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V27 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V28 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V29 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V30 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V31 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V32 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V33 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V34 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V35 -0.007596217 -0.082566062 -0.0007626654 -0.009272065 -0.100197010
#> V36 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V37 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V38 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V39 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V40 0.000000000 0.000000000 0.0000000000 0.000000000 0.000000000
#> V41 0.014526103 0.056661178 0.0050914354 0.004585975 0.080864692
#> V42 -0.010934360 0.009231632 -0.0001594632 -0.005431048 -0.007293239
#> V43 0.009875701 0.007887384 0.0041710005 0.005054875 0.026988961
#> V44 -0.008286437 -0.057828413 -0.0020104687 -0.008176497 -0.076301816
#> V45 0.016868651 0.019026182 -0.0006200098 0.009105955 0.044380778
#> y16 y17 y18 y19 y20
#> intercept 216.48817687 1.284970e+03 -7.66804117 546.73968328 2040.53030061
#> V1 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V2 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V3 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V4 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V5 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V6 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V7 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V8 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V9 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V10 -0.04418215 -8.290560e-03 -0.02470970 -0.07439055 -0.15157296
#> V11 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V12 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V13 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V14 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V15 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V16 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V17 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V18 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V19 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V20 0.07276304 1.235565e-01 0.02601995 0.08989148 0.31223093
#> V21 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V22 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V23 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V24 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V25 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V26 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V27 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V28 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V29 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V30 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V31 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V32 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V33 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V34 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V35 -0.03618152 -7.976131e-02 0.01137297 0.04566293 -0.05890693
#> V36 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V37 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V38 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V39 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V40 0.00000000 0.000000e+00 0.00000000 0.00000000 0.00000000
#> V41 0.08322825 8.864781e-02 0.01769032 -0.04796887 0.14159751
#> V42 -0.05174187 4.235569e-02 -0.01678168 -0.12051493 -0.14668279
#> V43 0.07921209 2.085252e-02 0.03537536 0.07059340 0.20603338
#> V44 -0.06304589 -3.300805e-02 -0.01287594 0.07479565 -0.03413423
#> V45 0.06342553 7.351321e-03 0.01711370 0.07556513 0.16345568
#> y21 y22 y23 y24 y25
#> intercept 78.408973459 2.584391e+02 -1.213975e+00 72.739311107 408.373434977
#> V1 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V2 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V3 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V4 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V5 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V6 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V7 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V8 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V9 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V10 0.011202046 9.921019e-03 -7.312877e-03 0.016143789 0.029953977
#> V11 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V12 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V13 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V14 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V15 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V16 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V17 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V18 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V19 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V20 -0.002144793 -4.792298e-02 2.269337e-03 -0.032396247 -0.080194679
#> V21 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V22 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V23 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V24 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V25 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V26 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V27 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V28 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V29 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V30 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V31 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V32 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V33 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V34 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V35 -0.011128149 5.893339e-02 5.918723e-06 0.002312695 0.050123853
#> V36 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V37 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V38 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V39 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V40 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000000
#> V41 0.031212154 -2.517547e-02 -2.401186e-03 -0.011340219 -0.007704717
#> V42 -0.003921888 3.309587e-02 -6.667667e-03 -0.005249948 0.017256363
#> V43 0.010493915 6.483110e-03 1.285115e-02 -0.010718881 0.019109295
#> V44 -0.011022727 6.423108e-03 -3.488065e-03 0.049548293 0.041460609
#> V45 0.008016710 6.338898e-04 9.623909e-03 0.007915172 0.026189681
#> y26 y27 y28 y29 y30
#> intercept -1.049546339 -2.057809e+02 1.056575e+01 -58.944898473 -2.552096e+02
#> V1 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V2 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V3 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V4 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V5 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V6 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V7 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V8 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V9 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V10 0.007385425 -2.416795e-02 -7.637525e-04 -0.003391783 -2.093806e-02
#> V11 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V12 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V13 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V14 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V15 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V16 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V17 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V18 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V19 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V20 0.002018640 -4.202999e-02 -1.008715e-03 -0.004211974 -4.523204e-02
#> V21 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V22 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V23 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V24 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V25 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V26 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V27 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V28 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V29 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V30 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V31 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V32 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V33 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V34 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V35 -0.004581788 1.059441e-01 3.912527e-05 0.002689982 1.040914e-01
#> V36 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V37 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V38 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V39 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V40 0.000000000 0.000000e+00 0.000000e+00 0.000000000 0.000000e+00
#> V41 0.010771166 -7.382189e-02 -1.213424e-04 -0.021284829 -8.445689e-02
#> V42 -0.002735522 5.913782e-02 -1.621243e-03 0.005464012 6.024507e-02
#> V43 -0.007889331 -1.176904e-02 3.946331e-03 -0.008803757 -2.451580e-02
#> V44 0.002613478 3.868333e-02 3.707810e-03 0.021434020 6.643864e-02
#> V45 0.002013248 -3.408386e-03 3.898747e-04 0.006356766 5.351502e-03
#> y31 y32 y33 y34 y35
#> intercept 62.198687899 -714.61091607 -1.702412e+02 -163.57105832 -9.862244e+02
#> V1 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V2 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V3 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V4 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V5 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V6 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V7 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V8 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V9 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V10 0.015520468 -0.05061583 -1.574584e-02 0.06049224 9.651038e-03
#> V11 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V12 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V13 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V14 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V15 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V16 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V17 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V18 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V19 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V20 0.028863868 -0.04160222 1.512212e-02 -0.07072925 -6.834548e-02
#> V21 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V22 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V23 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V24 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V25 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V26 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V27 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V28 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V29 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V30 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V31 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V32 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V33 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V34 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V35 -0.003151296 0.31985436 -2.266468e-03 0.12806662 4.425032e-01
#> V36 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V37 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V38 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V39 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V40 0.000000000 0.00000000 0.000000e+00 0.00000000 0.000000e+00
#> V41 0.074021343 -0.12903211 9.309878e-04 -0.05089099 -1.049708e-01
#> V42 -0.051560418 0.22792407 -8.936979e-03 -0.07023378 9.719289e-02
#> V43 0.041080525 0.06770090 4.244510e-02 0.02072147 1.719480e-01
#> V44 -0.023077332 -0.04515068 1.826672e-03 0.10701282 4.061147e-02
#> V45 0.037903265 0.02619784 2.056454e-02 0.05698663 1.416523e-01
#> y36 y37 y38 y39 y40
#> intercept -382.57114881 -4.088462e+02 -89.869019931 -2.685739e+02 -1.149860e+03
#> V1 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V2 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V3 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V4 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V5 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V6 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V7 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V8 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V9 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V10 -0.03744962 -1.555748e-02 -0.003102441 -1.834806e-02 -7.445760e-02
#> V11 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V12 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V13 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V14 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V15 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V16 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V17 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V18 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V19 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V20 0.01843943 -1.001705e-02 0.006486048 -6.369357e-03 8.539072e-03
#> V21 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V22 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V23 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V24 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V25 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V26 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V27 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V28 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V29 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V30 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V31 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V32 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V33 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V34 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V35 0.00737682 3.651725e-02 -0.005248087 3.065606e-02 6.930204e-02
#> V36 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V37 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V38 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V39 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V40 0.00000000 0.000000e+00 0.000000000 0.000000e+00 0.000000e+00
#> V41 0.03396843 9.475630e-03 0.004585629 -8.265010e-03 3.976468e-02
#> V42 -0.06533840 2.940502e-02 -0.007119750 -2.885353e-02 -7.190666e-02
#> V43 0.05769118 1.400841e-02 0.014126885 4.060964e-02 1.264361e-01
#> V44 -0.01069452 -1.646316e-03 -0.001264947 3.847205e-02 2.486626e-02
#> V45 0.06741641 4.016973e-02 0.011436573 3.804704e-02 1.570697e-01
#> y41 y42 y43 y44 y45
#> intercept 247.38640212 800.02361986 -3.345062e+02 991.96427284 1704.86813118
#> V1 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V2 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V3 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V4 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V5 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V6 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V7 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V8 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V9 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V10 0.05252164 -0.04007238 -7.285557e-02 0.08021998 0.01981367
#> V11 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V12 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V13 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V14 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V15 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V16 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V17 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V18 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V19 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V20 0.08535956 -0.06618382 5.939328e-02 -0.09612880 -0.01755978
#> V21 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V22 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V23 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V24 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V25 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V26 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V27 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V28 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V29 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V30 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V31 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V32 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V33 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V34 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V35 -0.12109865 0.45198049 6.647329e-03 0.36330706 0.70083622
#> V36 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V37 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V38 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V39 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V40 0.00000000 0.00000000 0.000000e+00 0.00000000 0.00000000
#> V41 0.46281869 -0.10671108 3.687502e-02 -0.15020161 0.24278102
#> V42 -0.25771168 0.62401592 -6.235519e-02 -0.33514984 -0.03120079
#> V43 0.20748684 0.09596375 1.602606e-01 0.11080458 0.57451577
#> V44 -0.17489014 -0.20478855 -3.883178e-02 0.42867409 0.01016362
#> V45 0.24317869 0.13961538 9.535158e-02 0.22687192 0.70501757
#>
# Parallelizing cross-validation
library(future)
plan(multisession, workers = 2)
tourism_gts |>
model(base = ETS(Trips)) |>
reconcile(ols = min_trace(base, method = "ols"),
icomb = icomb(base, train_size = 75)) |>
forecast(h = "3 years")
#> # A fable: 1,620 x 6 [1Q]
#> # Key: State, Purpose, .model [135]
#> State Purpose .model Quarter
#> <chr*> <chr*> <chr> <qtr>
#> 1 ACT Business base 2018 Q1
#> 2 ACT Business base 2018 Q2
#> 3 ACT Business base 2018 Q3
#> 4 ACT Business base 2018 Q4
#> 5 ACT Business base 2019 Q1
#> 6 ACT Business base 2019 Q2
#> 7 ACT Business base 2019 Q3
#> 8 ACT Business base 2019 Q4
#> 9 ACT Business base 2020 Q1
#> 10 ACT Business base 2020 Q2
#> # ℹ 1,610 more rows
#> # ℹ 2 more variables: Trips <dist>, .mean <dbl>
plan(sequential)
# Extracting probabilistic forecasts
fit |>
forecast(h = "3 years", bootstrap = TRUE, times = 1000) |>
filter(Purpose == "Holiday", State == "Victoria") |>
autoplot(filter(tourism_gts, Purpose == "Holiday",
State == "Victoria", year(Quarter) > 2010))
# }