465 views

Skip to first unread message

Jan 16, 2018, 7:08:43 AM1/16/18

to lavaan

Hello. I am currently doing a multigroup CFA on a quality of life instrument between English and Spanish speakers. I am doing this analysis in R using the lavaan package. I am also new to this type of analysis. I found that measurement invariance is violated between the metric and configural models and would like to investigate which loadings are causing the violations. I came across the lavtestscore() function and was using this however I am unsure how to interpret the output. Below is an example of the output for one of my domains.

I have read that an epc greater than 0.1 you would consider releasing. Is this correct and how do I interpret these other values (ets, epv).

Any insight would be helpful.

Jan 17, 2018, 2:09:50 AM1/17/18

to lavaan

I have read that an epc greater than 0.1 you would consider releasing. Is this correct and how do I interpret these other values (ets, epv).

"est" is short for "estimate" (the current estimated value in the fitted model). EPC stands for expected parameter change, and EPV stands for expected parameter value (the sum of "est" and "epc"). So EPV is the best guess at what the value would be if you were to simultaneously free the all of the constraint indicated in the $uni portion of the lavTestScore() output. This behavior differs from the modindices() function, which makes the simplifying assumptions that (1) you only want to free 1 fixed parameter, and that (2) you only want to know how much that specific parameter would change (from its fixed value) if you freely estimated that specific parameter.

lavTestScore() is much more flexible, at the cost of being simple:

- By default, it considers all parameter constraints, NOT fixed parameters (unless you fix a parameter by labeling it in your model syntax and specify in the model syntax that it is equal to a particular value)
- It returns a total test statistic (in the $test portion of the output) for freeing all of those constraints, in addition to test statistics for each individual constraint
- If requested, it will return expected parameter changes (and values) for all estimated model parameters, assuming ALL constraints were released

The behavior of modindices() can be mimicked by using the add= argument to obtain tests (and EPCs) for if a fixed parameter(s) were freely estimated. See the ?lavTestScore help page for details and an example.

`example(cfa)`

## fit a metric-invariance model

fitmg <- update(fit, group = "school", group.equal = "loadings")

## save the full parameter table

PT <- parTable(fitmg)

## print the part with loadings (to see labels) and constraints (to test)

PT[PT$op %in% c("=~","=="), ]

## pass the numbers (in the order they appear in the full PT) of the

## 6 constraints you want to test (i.e., 1:6) one at a time to lavTestScore()

lavTestScore(fitmg, release = 1, epc = TRUE)

lavTestScore(fitmg, release = 2, epc = TRUE)

...

lavTestScore(fitmg, release = 6, epc = TRUE)

Note that this also allows you to see how much OTHER model parameters (potentially of greater interest) would change if a loading were unconstrained. Specifically, constraining loadings allows factor variances to be freely estimated in all but 1 group (unless they already were because you fix the first loading to 1, as in the example above -- but that identification method assumes the first loading per factor IS INVARIANT without testing that assumption, so I recommend fixing factor variances to 1 for identification, then freeing all but one group's once loadings are constrained across groups). So if you want to see the (expected) impact of a loading-constraint on the estimated factor variance, then look for that EPC in the output as well. The "EPC-interest" method for model evaluation/respecification was recently proposed by Daniel Oberski in a few papers:

Terrence D. Jorgensen

Postdoctoral Researcher, Methods and Statistics

Research Institute for Child Development and Education, the University of Amsterdam

UvA web page: http://www.uva.nl/profile/t.d.jorgensen

Reply all

Reply to author

Forward

0 new messages

Search

Clear search

Close search

Google apps

Main menu