Skip to content

Releases: EducationalTestingService/factor_analyzer

v0.5.1

Choose a tag to compare

@desilinguist desilinguist released this 08 Feb 15:13

What's Changed

New Contributors

Full Changelog: v0.5.0...v0.5.1

v0.5.0

Choose a tag to compare

@desilinguist desilinguist released this 07 Jul 23:46

What's Changed

  • Add a test of the hypothesis that the selected number of factors is sufficient by @aglebov in #121
  • Add reference and example for FactorAnalyzer.sufficiency() by @aglebov in #122
  • Fix for latest scipy.minimize changes by @ikeuchi-screen in #124
  • Switch all tests from nose to nose2 by @desilinguist in #127

New Contributors

Full Changelog: v0.4.1...v0.5.0

v0.4.1

Choose a tag to compare

@desilinguist desilinguist released this 13 Sep 22:06

What's Changed

This is a minor release with a few new features, improvements, and bugfixes.

IMPORTANT: We no longer support Python 3.7 or older.

New Contributors

Full Changelog: v0.4.0...v0.4.1

Release 0.4.0

Choose a tag to compare

@desilinguist desilinguist released this 21 Oct 16:33
b11e839

What's Changed

This is a minor release with a few new features, improvements, and bugfixes.

IMPORTANT: Although factor_analyzer can work on Python < 3.7, we do not support these older versions.

New Contributors

  • @juanbenitezdev made their first contribution in #58
  • @keesmulder made their first contribution in #51
  • @hotessy made their first contribution in #61

Full Changelog: v0.3.2...v0.4.0

Release 0.3.2

Choose a tag to compare

@jbiggsets jbiggsets released this 22 Nov 16:52
2d49dc7

This is a minor release of factor_analyzer. It includes the following bug fixes.

  • Fixed a bug in the way that oblimin is calculated when using gamma.
  • Allowed users to directly pass the value of ddof.
  • Fixed a bug in the way KMO was being calculated, which was resulting in NaNs.

Release 0.3.1

Choose a tag to compare

@jbiggsets jbiggsets released this 08 Apr 19:36
553656e

This is a hotfix release, which includes two primary updates:

  • The ConfirmatoryFactorAnalyzer class's fit() method now returns self.
  • The requirements no longer require specific versions of sklearn, numpy, and scipy.

Release 0.3.0

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.