Confirmatory Factor Analysis (CFA)

Abstract

The capabilities in SmartPLS for covariance-based structural equation modeling (CB-SEM) also support the confirmatory factor analysis (CFA). Thus, CB-SEM models in SmartPLS also allow to run a CFA.

CFA is a statistical method designed to validate the underlying factor structure of a given set of observed variables. CFA empowers researchers to rigorously assess the hypothesis that a meaningful relationship exists between these observed variables and the unobservable latent variables (i.e., constructs) that underpin them (Hair et al., 2018). SmartPLS supports a graphical CFA model creation. The model estimation assumes that constructs are represented by commom factors and uses the maximum likelihood (ML) approach.

SmartPLS as a clear alternative to SPSS Amos.

The following screenshot shows the CFA results in SmartPLS for Kline's (2023) CFA textbook example on the context of job satisfaction:

Kline's CFA Textbook Example in the Context of Job Satisfaction in SmartPLS
This algorithm is in beta stage. Changes and additions are likely and feedback is welcome.

CB-SEM Algorithm Settings to run CFA in SmartPLS

Maximum iterations

The maximum number of iterations that the optimizer will perform. This parameter should be high to ensure that a good model solution can be found. The default value is 1,000.

Starting value strategy

Apply configured starting values.

Only if you check this option, the use-specified starting values from the model will be used. If this option is not selected, we will always use the default starting values.

Default strategy

This strategy mimics the default starting values from lavaan. It uses Fabin style estimates for loadings, 0.0 for path coefficients and covariances, 0.5*indicator variance for residual variances, 0.05 for latent variable variances.

One zero strategy

This strategy uses much more simple starting value, with 1.0 for loadings and variances, and 0.0 for path coefficients and covariances.

Stop criterion (gradient)

The optimizer stops when one of the two stop criteria are fulfilled and convergence to the optimum is assumed. In this case, the optimizer terminates when ||g|| < stop criterion * max(1, ||x||), where ||.|| denotes the Euclidean (L2) norm. The default value is 10^-6.

Stop criterion (function value)

The optimizer stops when one of the two stop criteria are fulfilled and convergence to the optimum is assumed. In this case, the optimizer terminates when the decrease in the objective function (maximum likelihood value) is small enough. The condition is met if (f' - f) / f < stop criterion, where f' is the objective value of the past iteration and f is the objective value of the current iteration. The default value is 10^-9.

Special assumptions

Imply latent variable correlations.

Select this option if you want to estimate correlations between all exogenous latent variables. Usually, if no correlation arrow is drawn in the model, the correlation between exogenous latent variables is constrained to zero. With this option correlations are also estimated freely when no arrow is drawn.

Imply causal indicator correlations per construct.

Select this option if you want to estimate correlations between all causal indicators of a latent variable. Usually, if no correlation arrow is drawn in the model, the correlation between causal indicators is constrained to zero. With this option correlations are also estimated freely when no arrow is drawn.

Imply a variance of 1.0 for causal indicators.

If you choose this option, all variances of causal indicators are constrained to 1.0. This also overwrites use-specified values. This option should help to mimic the default lavaan results.

CFA examples in SmartPLS from renowned textbooks

SmartPLS provides directly computable CFA examples from reputable textbooks (Byrne, 2016; Hair et al., 2018; Kline, 2023; Schumacker & Lomax, 2010) and SmartPLS yields the same results as those textbooks provide. Take a look try out these CFA examples in SmartPLS!

References