Skip to contents

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.

Author

Eli Holmes, NOAA, Seattle, USA.

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 
#>