Standard Errors, Confidence Intervals and Bias for MARSS Parameters
MARSSparamCIs.Rd
Computes standard errors, confidence intervals and bias for the maximum-likelihood estimates of MARSS model parameters. If you want confidence intervals on the estimated hidden states, see print.marssMLE()
and look for states.cis
.
Usage
MARSSparamCIs(MLEobj, method = "hessian", alpha = 0.05, nboot =
1000, silent = TRUE, hessian.fun = "Harvey1989")
Arguments
- MLEobj
An object of class
marssMLE
. Must have a$par
element containing the MLE parameter estimates.- method
Method for calculating the standard errors: "hessian", "parametric", and "innovations" implemented currently.
- alpha
alpha level for the 1-alpha confidence intervals.
- nboot
Number of bootstraps to use for "parametric" and "innovations" methods.
- hessian.fun
The function to use for computing the Hessian. Options are "Harvey1989" (default analytical) or two numerical options: "fdHess" and "optim". See
MARSShessian
.- silent
If false, a progress bar is shown for "parametric" and "innovations" methods.
Details
Approximate confidence intervals (CIs) on the model parameters may be calculated from the observed Fisher Information matrix ("Hessian CIs", see MARSSFisherI()
) or parametric or non-parametric (innovations) bootstrapping using nboot
bootstraps. The Hessian CIs are based on the asymptotic normality of MLE parameters under a large-sample approximation. The Hessian computation for variance-covariance matrices is a symmetric approximation and the lower CIs for variances might be negative. Bootstrap estimates of parameter bias are reported if method "parametric" or "innovations" is specified.
Note, these are added to the par
elements of a marssMLE
object but are in "marss" form not "marxss" form. Thus the MLEobj$par.upCI
and related elements that are added to the marssMLE
object may not look familiar to the user. Instead the user should extract these elements using print(MLEobj)
and passing in the argument what
set to "par.se","par.bias","par.lowCIs", or "par.upCIs". See print()
. Or use tidy()
.
Value
MARSSparamCIs
returns the marssMLE
object passed in, with additional components par.se
, par.upCI
, par.lowCI
, par.CI.alpha
, par.CI.method
, par.CI.nboot
and par.bias
(if method is "parametric" or "innovations").
References
Holmes, E. E., E. J. Ward, and M. D. Scheuerell (2012) Analysis of multivariate time-series using the MARSS package. NOAA Fisheries, Northwest Fisheries Science
Center, 2725 Montlake Blvd E., Seattle, WA 98112 Type RShowDoc("UserGuide",package="MARSS")
to open a copy.
Examples
dat <- t(harborSealWA)
dat <- dat[2:4, ]
kem <- MARSS(dat, model = list(
Z = matrix(1, 3, 1),
R = "diagonal and unequal"
))
#> Success! abstol and log-log tests passed at 39 iterations.
#> Alert: conv.test.slope.tol is 0.5.
#> Test with smaller values (<0.1) to ensure convergence.
#>
#> MARSS fit is
#> Estimation method: kem
#> Convergence test: conv.test.slope.tol = 0.5, abstol = 0.001
#> Estimation converged in 39 iterations.
#> Log-likelihood: 16.53065
#> AIC: -17.06131 AICc: -13.78858
#>
#> Estimate
#> A.SJI 0.7983
#> A.EBays 0.2775
#> R.(SJF,SJF) 0.0216
#> R.(SJI,SJI) 0.0107
#> R.(EBays,EBays) 0.0376
#> U.U 0.0657
#> Q.Q 0.0103
#> x0.x0 6.0108
#> Initial states (x0) defined at t=0
#>
#> Standard errors have not been calculated.
#> Use MARSSparamCIs to compute CIs and bias estimates.
#>
kem.with.CIs.from.hessian <- MARSSparamCIs(kem)
kem.with.CIs.from.hessian
#>
#> MARSS fit is
#> Estimation method: kem
#> Convergence test: conv.test.slope.tol = 0.5, abstol = 0.001
#> Estimation converged in 39 iterations.
#> Log-likelihood: 16.53065
#> AIC: -17.06131 AICc: -13.78858
#>
#> ML.Est Std.Err low.CI up.CI
#> A.SJI 0.7983 0.04238 7.15e-01 0.8814
#> A.EBays 0.2775 0.05852 1.63e-01 0.3922
#> R.(SJF,SJF) 0.0216 0.00867 4.63e-03 0.0386
#> R.(SJI,SJI) 0.0107 0.00544 4.14e-05 0.0214
#> R.(EBays,EBays) 0.0376 0.01393 1.03e-02 0.0649
#> U.U 0.0657 0.02271 2.12e-02 0.1103
#> Q.Q 0.0103 0.00609 -1.60e-03 0.0223
#> x0.x0 6.0108 0.13357 5.75e+00 6.2726
#> Initial states (x0) defined at t=0
#>
#> CIs calculated at alpha = 0.05 via method=hessian
#>