The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
library(lcsm)
library(lavaan)
#> This is lavaan 0.6-13
#> lavaan is FREE software! Please report any bugs.
The main underlying functions to extract parameters and fit
statistics come from the broom
package:
broom::tidy()
and broom::glance()
. The
functions extract_param()
and extract_fit()
offer some tools that I find helpful when running LCSMs in R, for
example:
extract_param()
: only one row per estimated
parameter,extract_fit()
: fit statistics for multiple
lavaan
objects can be extracted.# First fit some latent change score models
# No change model
uni_lcsm_01 <- fit_uni_lcsm(data = data_uni_lcsm,
var = c("x1", "x2", "x3", "x4", "x5"),
model = list(alpha_constant = FALSE,
beta = FALSE,
phi = FALSE))
#> Warning in lav_data_full(data = data, group = group, cluster = cluster, : lavaan WARNING: some cases are empty and will be ignored:
#> 239
# Constant change only model
uni_lcsm_02 <- fit_uni_lcsm(data = data_uni_lcsm,
var = c("x1", "x2", "x3", "x4", "x5"),
model = list(alpha_constant = TRUE,
beta = FALSE,
phi = FALSE))
#> Warning in lav_data_full(data = data, group = group, cluster = cluster, : lavaan WARNING: some cases are empty and will be ignored:
#> 239
# Constant change and proportional change (Dual change model)
uni_lcsm_03 <- fit_uni_lcsm(data = data_uni_lcsm,
var = c("x1", "x2", "x3", "x4", "x5"),
model = list(alpha_constant = TRUE,
beta = TRUE,
phi = FALSE))
#> Warning in lav_data_full(data = data, group = group, cluster = cluster, : lavaan WARNING: some cases are empty and will be ignored:
#> 239
This function takes the lavaan
objects as input and
returns some fit statistics. More fit statistics can be returned using
the argument details = TRUE
.
# Extract fit statistics
fit_uni_lcsm <- extract_fit(uni_lcsm_01, uni_lcsm_02, uni_lcsm_03)
# Print table of parameter estimates
knitr::kable(fit_uni_lcsm,
digits = 3,
caption = "Parameter estimates for bivariate LCSM")
model | chisq | npar | aic | bic | cfi | rmsea | srmr |
---|---|---|---|---|---|---|---|
1 | 2761.423 | 3 | 7371.135 | 7383.772 | 0.000 | 0.569 | 2.070 |
2 | 17.734 | 6 | 4633.446 | 4658.721 | 0.998 | 0.023 | 0.068 |
3 | 11.615 | 7 | 4629.327 | 4658.815 | 1.000 | 0.000 | 0.054 |
# Now extract parameter estimates
param_uni_lcsm_02 <- extract_param(uni_lcsm_03, printp = TRUE)
# Print table of parameter estimates
knitr::kable(param_uni_lcsm_02,
digits = 3,
caption = "Parameter estimates for bivariate LCSM")
label | estimate | std.error | statistic | p.value | std.lv | std.all | std.nox |
---|---|---|---|---|---|---|---|
gamma_lx1 | 21.066 | 0.060 | 348.365 | < .001 | 17.456 | 17.456 | 17.456 |
sigma2_lx1 | 1.456 | 0.101 | 14.413 | < .001 | 1.000 | 1.000 | 1.000 |
sigma2_ux | 0.231 | 0.011 | 20.336 | < .001 | 0.231 | 0.137 | 0.137 |
alpha_g2 | -0.157 | 0.287 | -0.547 | .584 | -0.450 | -0.450 | -0.450 |
sigma2_g2 | 0.122 | 0.015 | 7.916 | < .001 | 1.000 | 1.000 | 1.000 |
sigma_g2lx1 | 0.264 | 0.033 | 7.961 | < .001 | 0.627 | 0.627 | 0.627 |
beta_x | -0.038 | 0.015 | -2.606 | .009 | -0.142 | -0.142 | -0.142 |
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.