Description Usage Arguments Value Examples
View source: R/INTRA_FORECAST_add_multivariate_forecast_model.R
add_multivariate_forecast_model
is a function to add a single
multivariate forecast model to a (named) list of forecast models. The
forecast model is created based on a model formula in conjunction with other
parameters, which is then used to forecast a specific number of periods
ahead.
1 2 3 4 5 6 7 8 9 10 11 12 | add_multivariate_forecast_model(
fc_models,
ts_object_train,
ts_object_valid = NULL,
fc_name,
fc_formula,
periods_ahead = 1,
periods_history = Inf,
keep_fc_model_objects = FALSE,
verbose = FALSE,
log_message = ""
)
|
fc_models |
A named list of forecast models, with for each forecast model a list with the model itself and a table with forecast values. |
ts_object_train |
A time series object, which contains only the training data. |
ts_object_valid |
A time series object, which contains the validation data. This is used for multivariate frameworks, thus it should have the forecasted/actual values of the external regressors as well. |
fc_name |
A character string specifying the name to be used for the new model that is added to the list of existing forecast models. |
fc_formula |
A character string specifying the expression to be evaluated to train the time series forecast model. |
periods_ahead |
A positive integer value indicating the number of periods to forecast ahead. |
periods_history |
A positive integer value indicating the number of historic datapoints to use for training, which is only relevant for specific forecast methods such as drift and mean. |
keep_fc_model_objects |
Boolean, which is set to TRUE in order to keep original fc_model objects in the main_forecasting_table after running the forecast. This is needed for scenario analysis in multivariate forecasting. However, it may lead to memory issues, as the main_forecasting_table increases in size. |
verbose |
Boolean, which is set to TRUE if status updates are valued, or set to FALSE if they are not. |
A named list of forecast models, with for each forecast model a list with the model itself and a table with forecast values.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | ts_object_train <- tstools::initialize_ts_forecast_data(
data = dummy_gasprice,
date_col = "year_month",
col_of_interest = "gasprice",
group_cols = c("state", "oil_company"),
xreg_cols = c("spotprice", "gemprice")
) %>%
dplyr::filter(grouping == "state = New York & oil_company = CompanyA") %>%
dplyr::slice(1:189) %>%
tstools::transform_data_to_ts_object()
ts_object_valid <- tstools::initialize_ts_forecast_data(
data = dummy_gasprice,
date_col = "year_month",
col_of_interest = "gasprice",
group_cols = c("state", "oil_company"),
xreg_cols = c("spotprice", "gemprice")
) %>%
dplyr::filter(grouping == "state = New York & oil_company = CompanyA") %>%
dplyr::slice(190:191) %>%
tstools::transform_data_to_ts_object()
add_multivariate_forecast_model(
fc_models = list(),
ts_object_train = ts_object_train,
ts_object_valid = ts_object_valid,
fc_name = "fc_linear_trend_xreg",
fc_formula = "forecast::tslm(col_of_interest ~ trend + spotprice + gemprice, data = ts_object_train)",
periods_ahead = 2,
verbose = T
)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.