| posterior_epred.mvgam {mvgam} | R Documentation |
Draws from the Expected Value of the Posterior Predictive Distribution
Description
Compute posterior draws of the expected value of the posterior predictive
distribution (i.e. the conditional expectation).
Can be performed for the data used to fit the model (posterior
predictive checks) or for new data. By definition, these predictions have
smaller variance than the posterior predictions performed by the
posterior_predict.mvgam method. This is because only the
uncertainty in the expected value of the posterior predictive distribution is
incorporated in the draws computed by posterior_epred while the
residual error is ignored there. However, the estimated means of both methods
averaged across draws should be very similar.
Usage
## S3 method for class 'mvgam'
posterior_epred(
object,
newdata,
data_test,
ndraws = NULL,
process_error = TRUE,
...
)
Arguments
object |
|
newdata |
Optional |
data_test |
Deprecated. Still works in place of |
ndraws |
Positive |
process_error |
Logical. If |
... |
Ignored |
Details
Note that for all types of predictions for models that did not include
a trend_formula, uncertainty in the dynamic trend
component can be ignored by setting process_error = FALSE. However,
if a trend_formula was supplied in the model, predictions for this component cannot be
ignored. If process_error = TRUE, trend predictions will ignore autocorrelation
coefficients or GP length scale coefficients, ultimately assuming the process is stationary.
This method is similar to the types of posterior predictions returned from brms models
when using autocorrelated error predictions for newdata.
This function is therefore more suited to posterior simulation from the GAM components
of a mvgam model, while the forecasting functions
plot_mvgam_fc and forecast.mvgam are better suited to generate h-step ahead forecasts
that respect the temporal dynamics of estimated latent trends.
Value
A matrix of dimension n_samples x new_obs,
where n_samples is the number of posterior samples from the fitted object
and n_obs is the number of observations in newdata
See Also
hindcast.mvgam posterior_linpred.mvgam posterior_predict.mvgam
Examples
# Simulate some data and fit a model
simdat <- sim_mvgam(n_series = 1, trend_model = 'AR1')
mod <- mvgam(y ~ s(season, bs = 'cc'),
trend_model = AR(),
noncentred = TRUE,
data = simdat$data_train)
# Compute posterior expectations
expectations <- posterior_epred(mod)
str(expectations)