Structural equation modelling

Fits a custom structural equation model (SEM) that you specify yourself, using the semopy backend. Use it when your model goes beyond a single confirmatory factor structure — for example, latent factors that predict one another, or a mix of measurement and regression paths.

The model is built entirely by clicking — no syntax to type.

Building the model

1. Measurement model — define the latent factors

  • Set the Number of latent factors, then click the observed columns that make up each factor into its Factor n indicators field (a factor needs at least two indicators).

  • Optionally name the factors with Factor names (comma-separated); otherwise they are F1, F2, …

2. Structural model — add the paths

  • Under Paths, click + Add path for each relationship. Each row is a single influence: pick a From node, a Type (predicts → for a regression or covaries ↔ for a covariance), and a To node — every dropdown is a single choice.

  • Add one row per predictor: several X predicts Y rows to the same outcome are combined into one regression, e.g. two rows F1 predicts Y and F2 predicts Y become Y ~ F1 + F2.

Estimator — Maximum Likelihood (ML) or Diagonally Weighted Least Squares (DWLS).

Verbal indicators in tables — when on, the fit table gains a plain-language quality column (e.g. RMSEA → good / acceptable / poor, CFI/TLI → excellent / acceptable / poor), and each path’s estimate is tagged with significance stars (*** p<.001, ** p<.01, * p<.05).

Verbal report — an optional written interpretation below each table summarising the model fit, which paths are significant and the strongest effect.

Output

  • A model fit table (the fit indices semopy reports — χ², degrees of freedom, CFI, TLI, RMSEA, and so on).

  • A parameter estimates table: every directed and covariance path with its estimate, standard error, p-value and standardized value, labelled with your factor and column names. Directed effects are shown with an arrow (predictor outcome) and covariances with a double arrow (a b).

  • A separate variances table for the estimated variances (residual/error variances of items and factor variances), kept out of the main table since they are secondary. A variance is not a correlation — its unstandardized estimate is in the data’s own units and is generally not 1. The standardized value is the informative one: for an item it equals the unexplained proportion (1 − R²), so a smaller value means the factor explains more of that item.

  • With Path diagram on, a schematic of the fitted model: each factor node with arrows to its indicators (standardized loadings), plus the structural paths between factors — a double arrow () for a factor covariance and a single arrow () for a directed regression, each labelled with its standardized coefficient. It reuses the CFA diagram’s plot settings (spacing, arrow colour/label size, correlation-curve and plot-size sliders). Paths involving observed variables that are not a factor’s own indicator are omitted from the picture but still listed in the estimates table.

Notes

  • Only complete numeric rows are used (list-wise deletion); ordinal columns are scored numerically.

  • Covariances beyond the automatic residual variances (and any paths you add) are not specified in this version.

  • Two kinds of degenerate path are ignored: a self-loop (From and To the same node) and a factor its own indicator path, which would just duplicate a loading already implied by the measurement model. All other combinations are allowed — including an observed item predicting a factor (a MIMIC-style cause), a factor predicting another factor’s item (a cross-loading), and item-with-item covariances (correlated residuals).