bootstrapLavaan {lavaan}R Documentation

Bootstrapping a Lavaan Model

Description

Bootstrap functions to get bootstrap standard errors and bootstrap test statistics

Usage

bootstrapLavaan(object, R = 1000L, type = "ordinary", verbose = FALSE, 
                FUN = "coef", warn = -1L, return.boot = FALSE,
                parallel = c("no", "multicore", "snow"),
                ncpus = 1L, cl = NULL, ...)

bootstrapLRT(h0 = NULL, h1 = NULL, R = 1000L, type="bollen.stine", 
             verbose=FALSE, return.LRT = FALSE, 
             calibrate = FALSE, calibrate.R = 1000L, calibrate.alpha = 0.05, 
             warn = -1L, parallel = c("no", "multicore", "snow"),
             ncpus = 1L, cl = NULL)

Arguments

object

An object of class lavaan.

h0

An object of class lavaan. The restricted model.

h1

An object of class lavaan. The unrestricted model.

R

Integer. The number of bootstrap draws.

type

If "ordinary" or "nonparametric", the usual (naive) bootstrap method is used. If "bollen.stine", the data is first transformed such that the null hypothesis holds exactly in the resampling space. If "parametric", the parametric bootstrap approach is used. Currently, this is only valid for continuous data following a multivariate normal distribution.

FUN

A function which when applied to the lavaan object returns a vector containing the statistic(s) of interest. The default is FUN="coef", returning the estimated values of the free parameters in the model.

...

Other named arguments for FUN which are passed unchanged each time it is called.

verbose

If TRUE, show information for each bootstrap draw.

warn

Sets the handling of warning messages. See options.

return.boot

Not used for now.

return.LRT

If TRUE, return the LRT values as an attribute to the pvalue.

parallel

The type of parallel operation to be used (if any). If missing, the default is "no".

ncpus

integer: number of processes to be used in parallel operation: typically one would chose this to the number of available CPUs.

cl

An optional parallel or snow cluster for use if parallel = "snow". If not supplied, a cluster on the local machine is created for the duration of the bootstrapLavaan or bootstrapLRT call.

calibrate

If TRUE, a double (nested) bootstrap is used to compute an additional set of plugin-values for each bootstrap sample.

calibrate.R

Integer. The number of bootstrap draws to be use for the double bootstrap.

calibrate.alpha

The significance level to compute the adjusted alpha based on the plugin p-values.

Examples

# fit the Holzinger and Swineford (1939) example
HS.model <- ' visual  =~ x1 + x2 + x3
              textual =~ x4 + x5 + x6
              speed   =~ x7 + x8 + x9 '

fit <- cfa(HS.model, data=HolzingerSwineford1939)

# get the test statistic for the original sample
T.orig <- fitMeasures(fit, "chisq")

# bootstrap to get bootstrap test statistics
# we only generate 10 bootstrap sample in this example; in practice
# you may wish to use a much higher number
T.boot <- bootstrapLavaan(fit, R=10, type="bollen.stine",
                          FUN=fitMeasures, fit.measures="chisq")

# compute a bootstrap based p-value
pvalue.boot <- length(which(T.boot > T.orig))/length(T.boot)

[Package lavaan version 0.4-12 Index]