Free download
Factor is a freeware program developed at the Rovira i Virgili University. Users are invited to download a DEMO and the program:
If you work with Excel, the following file can be used to preprocess the data file. Please note that that you must allow macros when opening the preprocessing.xlsm file:
We would greatly appreciate any suggestions for future improvements. Detailed reports of failures are also welcome.
Version of the program: 10.6.01 (13th November 2017)
This version implements:

Our new procedure for fitting a pure exploratory bifactor solution has been refined to be able to manage bifactor models with a single group factor. In our bifactor propousal the general factor is orthogonal to the group factors, but the loadings on the group factors can satisfy any orthogonal or oblique rotation criterion. The proposal combines Procrustes rotations with analytical rotations. The basis input is a semispecified target matrix that can be (a) defined by the user, (b) obtained by using SchmidLeiman orthogonalization, or (c) automatically built from a conventional unrestricted solution based on a prescribed number of factors. In order to compute an exploratory bifactor model, the user has to: (a) specify the number of group factors, (b) check “Exploratory Bifactor Model” in the “Other specifications of factor model” menu, and (c) select the rotation criterion for the group factors. In the outcome, the general factor is labeled as GF.
Version of the program: 10.5.03 (22nd June 2017)
This version implements:
 Two new indices to assess the quality and effectiveness of factor scores estimates: sensitivity ratio, and expected percentage of true differences. The sensitivity ratio (SR) can be interpreted as the number of different factor levels than can be differentiated
on the basis of the factor score estimates. The expected percentage of true differences (EPTD) is the estimated
percentage of differences between the observed factor score estimates that are in the same direction as the
corresponding true differences.
Version of the program: 10.5.02 (29th May 2017)
This version implements:

A new procedure for fitting a pure exploratory bifactor solution in which the general factor is orthogonal to the group factors, but the loadings on the group factors can satisfy any orthogonal or oblique rotation criterion. The proposal combines Procrustes rotations with analytical rotations. The basis input is a semispecified target matrix that can be (a) defined by the user, (b) obtained by using SchmidLeiman orthogonalization, or (c) automatically built from a conventional unrestricted solution based on a prescribed number of factors. In order to compute an exploratory bifactor model, the user has to: (a) specify the number of group factors, (b) check “Exploratory Bifactor Model” in the “Other specifications of factor model” menu, and (c) select the rotation criterion for the group factors. In the outcome, the general factor is labeled as GF.

Confidence intervals for ORION reliabilities based on bootstrap sampling techniques.

Equivalence testing for linear ML factor analysis (Yuan, Chan, Marcoulides, & Bentler, 2016).
 This version corrects some internal bugs. These bugs were reported by some users when analysing they own data. We are grateful to these users that help us to improve Factor.
Version of the program: 10.5.01 (20th Abril 2017)
This version implements:
 Robust goodnessof fit indices are computed based on (1) meancorrected chisquare statistic, (2) mean and variancecorrected chisquare statistic (Satterthwaite, 1941), and (3) mean and variancecorrected chisquare statistic estimated as proposed by Asparouhov and Muthén (2010).
 Weighted Root Mean Square Residual (WRMR) index is computed in order to assess the model residuals.
 New person fit indices are implemented: Personal Correlation (rp) and Weighted MeanSquared Index (WMSI) indices are computed using optimal threshold values to detect aberrant responses (Ferrando, VigilColet, & LorenzoSeva, 2017).
 A new set of indices of factor determinacy, construct replicability and closeness to unidimensionality, aimed at assessing the strength and quality of the solution beyond pure modeldata fit.
 A new menu to configurate advanced indices and computings.
 This version corrects some internal bugs. These bugs were reported by some users when analysing they own data. We are grateful to these users that help us to improve Factor.
Version of the program: 10.4.01 (21st October 2016)
This version implements:
 Bootstrap sampling in order to computed robust factor analysis. Bootstrap Confidence intervals are computed for a large number of indices.
 Implementation of Tetrachoric/Polychoric correlation based on unified Bayes modal estimation (MAP) approach.
 Robust exploratory factor analysis based on asymptotic variance covariance matrix for correlation coefficients is computed based on (a) analytical estimates, or (b) bootstrap sampling.
 Implementation of Robust Unweighted Least Squares factor analysis, Robust exploratory Maximum Likelihood factor analysis, and Diagonally Weighted Least Squares factor analysis.
 The number of factor to be retained is increased up to at least two variables per factor.
 BIC dimensionality test: Schwarz’s Bayesian Information Criterion is computed for a number of factors models, so that the model with the optimal number of factors (i.e., the model that corresponds to a lower BIC value) is detected.
 The user is allowed to disable all the procedures to assess the number of factors/components to be retained.
 New person fit indices are implemented: Personal Correlation (rp) and Weighted MeanSquared Index (WMSI) indices are computed using optimal threshold values to detect aberrant responses (Ferrando, VigilColet, & LorenzoSeva, 2017).
 This version corrects some internal bugs. These bugs were reported by some users when analysing they own data. We are grateful to these users that help us to improve Factor. In addition, the internal computing has been redesigned in order to increase computing speed: for example, polychoric correlation matrix is only computed one time in each analysis session (even if different analysis are carried out).
 Please note that Windows XP is not supported anymore.
Version of the program: 10.3.01 (7th July 2015)
This version implements:
 FACTOR is now compiled to run with Windows 64bits. This feacture allows to analyse large datasets. We successfully tested FACTOR with a dataset of 10,000 cases, 500 variables, and 3 extracted factors. The user can decide which realease (32bits or 64bits) wants to download.
 Missing values in the dataset are allowed. Multiple Imputation in exploratory factor analysis is implemented based on LorenzoSeva & Van Ginkel (2015) proposal. Missing values must be identified using a numerical code.
 The implementation of Polychoric correlation has been polished to allow convergence even when some cathegories in a particular variable is never used.
 This version corrects some internal bugs. These bugs were reported by some users when analysing they own data. We are grateful to these users that help us to improve Factor.
Version of the program: 9.30.1 (January, 2015)
This version corrects an internal error in the management of the computer memory. This error was observed by some users that were analyzing large datasets. We are grateful to these users that help us to improve Factor.
Version of the program: 9.20 (February, 2013)
This version implements:
 Item Response Theory parameterization of factor solutions based on discrete variables.
 Expected aposteriori (EAP) estimation of latent trait scores in IRT models.
 Semiconfirmatory factor analysis based on orthogonal and oblique rotation to a (partially) specified target.
 Assessment of the congruence between the target and the rotated loading matrix.
Version of the program: 8.10 (April, 2012)
This version implements:
 Greatest lower bound (glb) to reliability, and McDonald's Omega reliability index.
 GFI and AGFI are computed excluding the diagonal values of the variance/covariance matrix.
 Algorithm 462: Bivariate Normal Distribution by Donnelly (1973) is used to compute polychoric correlation matrix. In addition, polychoric correlation matrix is computed with more demanding convergence values.
 Tetrachoric correlation matrix is computed based on AS116 algorithm. This algorithm is more accurate accurate than the algorithm provided in previous versions of the program.
 Technical revisions to solve different errors that halted the analysis and that were reported by users.
Version of the program: 8.02 (March, 2011)
This version implements:
 A more friendly user reading data implementation. ASCII format data files can be separated using different characters, and missing values are eliminated from the data.
 Variable labels are allowed.
 The output data file can be specified.
 New analyses are implemented: Optimal Parallel Analysis, Hull method, and Person fit indices.
 Some analyses have been improved. For example, the polychoric correlations matrix is checked to be positive definite and smoothed (if necessary), and the nonconvergent coefficients are changed by the corresponding Pearson coefficient.
 Technical revisions to solve different errors that halted the analysis and that were reported by users.
Version of the program: 7.00 (January, 2007)
This version implements:
 Univariate mean, variance, skewness, and kurtosis
 Multivariate skewness and kurtosis (Mardia, 1970)
 Var charts for ordinal variables
 Polychoric correlation matrix with optional Ridge estimates
 Structure matrix in oblique factor solutions
 SchmidLeiman secondorder solution (1957)
 Mean, variance and histogram of fitted and standardized residuals. Automatic detection of large standardized residuals.
In addition, a bug that halted the program during the execution has been detected and corrected.
Version of the program: 6.02 (June, 2006)
This version implements PA  MBS. It is an extension of Parallel Analysis that generates random correlation matrices using marginally bootstrapped samples (Lattin, Carroll, & Green, 2003).
In addition, indices of asymmetry and kurtosis related to the variables are computed. The inspection of these indices helps to decide if polychoric correlation is to be computed when ordinal variables are analyzed.
Version of the program: 6.01 (March, 2005)
This version implements the selection of variables to be included and excluded in the analysis.