Skip to content

Release 0.3.0

Compare
Choose a tag to compare
@jbiggsets jbiggsets released this 04 Apr 13:31

This is a major release which includes a number of improvements, primarily aimed at providing more functionality for factor_analyzer, and making it compatible with scikit-learn.

What's New

Major Changes

  • The factor_analyzer package now includes a confirmatory_factor_analyzer module, which allows enables to fit a CFA model by specifying the target factor loading matrix. This is not as full-featured as some CFA functions that may be available in other packages (such as R's sea or lavaan libraries), but it provides basic functionality to perform CFA. Some of the major limitations include (1) users cannot specify a target variance-covariance matrix for the factor loadings, and (2) users cannot specify other identification constraints. These are features that we may add in a future release.

  • All major factor_analyzer classes are not fully compatible with scikit-learn. This includes the Rotator, FactorAnalyzer, and ConfirmatoryFactorAnalyzer classes. These classes now inherit from scikit-learn's BaseEstimator class and implement fit() and transform() methods. Users can now use objects from these classes in sklearn pipelines.

  • Along with the ConfirmatoryFactorAnalyzer class, factor_analyzer provides a ModelSpecification class (and an associated ModelSpecificationParser class) to encapsulate the model specification for CFA. This primarily involves the specification of a target factor loading matrix.

Other Minor Changes

  • The transform() methods have been modified slightly to rely on the mean / standard deviation from the original data set when generating factor scores.

  • The ConfirmatoryFactorAnalyzer class also provides standard error estimates.

  • Various new utility functions have been added.