formal-methods-mpi / Taxonomy.jl

Develop a Taxonomy of SEM
MIT License
2 stars 2 forks source link

How to handle standardization #86

Open Maximilian-Stefan-Ernst opened 1 year ago

aaronpeikert commented 1 year ago

64

nickhaf commented 5 months ago

The Problem

The goal of Taxonomy is to obtain a sample of actually used models to build simulations on. In this context it is important to know if we are working with standardized or unstandardized parameters, because they provide different and mutually exclusive information:

\hat{\lambda}^s_{ij} = \hat{\lambda}_{ij}(\frac{\hat{\sigma}^2_{jj}}{\hat{\sigma}^2_{ii}})^{1/2}

with:

It is possible to standardize all paramters (more common), or only the latent variables (less common).

Optimally, we would be able to standardize paramters by ourselves, but it can happen that the model implied variances are not reported. Also, it does not always seem to be clear whether the loadings have been standardized or not.

Open Questions

brandmaier commented 5 months ago

I recommend computing the model-implied covariance matrix from a given model. If this covariance matrix has a unit diagonal (up to some slack because of numerical imprecision), I guess we can assume that factor loadings and regressions and covariances were standardized. Usually, the model-implied matrix is only computed for observed variables but for this test, one should compute the covariance matrix between all latent and all observed variables.

aaronpeikert commented 4 months ago

We decided to assume everything is standardized. This means we have to recode all records that a standardized at the moment to check if we coded the raw or standardized stuff.

lkosanke commented 4 months ago

Todos:

  1. implement new judgement Unstandardized(true), that is given if only unstandardized loadings are reported, and this is clearly stated.
  2. Go through all papers with Standardized(true) and look if both unstandardized and standardized loadings have been reported. In these cases, we need recode the records to contain the standardized loadings.
  3. Go through all papers with Standardized(missing) (for Valentin) and Standardized(false) (for Leo) and see if only explicitly unstandardized loadings are reported. If so, give Unstandardized(true).
  4. Papers with Standardized(missing) can be ignored (for Leo), as we now assume everything to be reported as standardized.
  5. Delete judgment Standardized() and all its instances