Creates bootstrap data via sampling from the standardized innovations matrix. This is an internal function in the MARSS-package
and is not exported. Users should access this with MARSSboot
.
MARSSinnovationsboot(MLEobj, nboot = 1000, minIndx = 3)
A list containing the following components:
Array (dim is m x tSteps x nboot) of simulated state processes.
Array (dim is n x tSteps x nboot) of simulated data.
marssMODEL
object element of the marssMLE
object (marssMLE$marss
) in "marss" form.
Number of bootstraps performed.
m is the number state processes (x in the MARSS model) and n is the number of observation time series (y in the MARSS model).
An object of class marssMLE
. This object must have a $par
element containing MLE parameter estimates from e.g. MARSSkem()
or MARSS()
. This algorithm may not be used if there are missing datapoints in the data.
Number of bootstraps to perform.
Number of innovations to skip. Stoffer & Wall suggest not sampling from innovations 1-3.
Eli Holmes and Eric Ward, NOAA, Seattle, USA.
Stoffer and Wall (1991) present an algorithm for generating CIs via a non-parametric bootstrap for state-space models. The basic idea is that the Kalman filter can be used to generate estimates of the residuals of the model fit. These residuals are then standardized and resampled and used to generate bootstrapped data using the MARSS model and its maximum-likelihood parameter estimates. One of the limitations of the Stoffer and Wall algorithm is that it cannot be used when there are missing data, unless all data at time \(t\) are missing.
Stoffer, D. S., and K. D. Wall. 1991. Bootstrapping state-space models: Gaussian maximum likelihood estimation and the Kalman filter. Journal of the American Statistical Association 86:1024-1033.
stdInnov()
, MARSSparamCIs()
, MARSSboot()
dat <- t(kestrel)
dat <- dat[2:3, ]
fit <- MARSS(dat, model = list(U = "equal", Q = diag(.01, 2)))
boot.obj <- MARSSinnovationsboot(fit)
Run the code above in your browser using DataLab