generate.mdl_df {fabletools} | R Documentation |
Generate responses from a mable
Description
Use a model's fitted distribution to simulate additional data with similar
behaviour to the response. This is a tidy implementation of
stats::simulate()
.
Usage
## S3 method for class 'mdl_df'
generate(x, new_data = NULL, h = NULL, times = 1, seed = NULL, ...)
## S3 method for class 'mdl_ts'
generate(
x,
new_data = NULL,
h = NULL,
times = 1,
seed = NULL,
bootstrap = FALSE,
bootstrap_block_size = 1,
...
)
Arguments
x |
A mable. |
new_data |
The data to be generated (time index and exogenous regressors) |
h |
The simulation horizon (can be used instead of |
times |
The number of replications. |
seed |
The seed for the random generation from distributions. |
... |
Additional arguments for individual simulation methods. |
bootstrap |
If TRUE, then forecast distributions are computed using simulation with resampled errors. |
bootstrap_block_size |
The bootstrap block size specifies the number of contiguous residuals to be taken in each bootstrap sample. |
Details
Innovations are sampled by the model's assumed error distribution.
If bootstrap
is TRUE
, innovations will be sampled from the model's
residuals. If new_data
contains the .innov
column, those values will be
treated as innovations for the simulated paths..
Examples
library(fable)
library(dplyr)
UKLungDeaths <- as_tsibble(cbind(mdeaths, fdeaths), pivot_longer = FALSE)
UKLungDeaths %>%
model(lm = TSLM(mdeaths ~ fourier("year", K = 4) + fdeaths)) %>%
generate(UKLungDeaths, times = 5)