Single Factor Analysis by MML

An implementation of the MML single factor analysis model.

You are now following this Submission

This function computes the MML estimates and codelengths for the Gaussian uncorrelated model (i.e., normal distribution with a diagonal covariance) and the Gaussian single factor model. The single factor model for a data matrix X [N x K] (N samples, each sample of dimension K) is:


x_nk = mu_k + v_n * a_k + sigma_k*r_nk

k = 1,...K, n = 1,...,N
a = (a_1,...,a_K) are the factor loadings;
v = (v_1,...,v_N) are the factor scores;
mu = (mu_1,...,mu_K) is the mean;
sigma = (sigma_1, ..., sigma_K) are the K standard deviations; and
r_nk ~ N(0,1) [N x K] are standard Gaussian variates.

The function returns codelengths which should be used to decide whether the single factor model or the uncorrelated Gaussian model is preferred (models with smaller codelengths are better). Please see Wallace and Freeman (1992) for details.

Cite As

Statovic (2026). Single Factor Analysis by MML (https://www.mathworks.com/matlabcentral/fileexchange/87804-single-factor-analysis-by-mml), MATLAB Central File Exchange. Retrieved .

C. S. Wallace and P. R. Freeman: Single-Factor Analysis by Minimum Message Length Estimation, Journal of the Royal Statistical Society (Series B), Vol. 54, No. 1, pp. 195-209, 1992.

Tags

Add Tags

Add the first tag.

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.0.1

-minor edits to text

1.0.0