Release 0.3.0
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_analyzerpackage now includes aconfirmatory_factor_analyzermodule, 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'sseaorlavaanlibraries), 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_analyzerclasses are not fully compatible withscikit-learn. This includes theRotator,FactorAnalyzer, andConfirmatoryFactorAnalyzerclasses. These classes now inherit fromscikit-learn'sBaseEstimatorclass and implementfit()andtransform()methods. Users can now use objects from these classes insklearnpipelines. -
Along with the
ConfirmatoryFactorAnalyzerclass,factor_analyzerprovides aModelSpecificationclass (and an associatedModelSpecificationParserclass) 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
ConfirmatoryFactorAnalyzerclass also provides standard error estimates. -
Various new utility functions have been added.