Perform exploratory factor analysis (EFA) with KMO test, Bartlett's test, eigenvalue decomposition, factor loadings, and communalities. Supports PCA and PAF extraction with Varimax and Promax rotation.
Factor Analysis is a multivariate statistical technique that examines correlation patterns among observed variables to identify a smaller number of latent variables—called factors—that explain the shared variance in the data. It is widely used in psychology, education, marketing, and the social sciences for survey development, construct validation, and data reduction.
The technique originated in 1904 when Charles Spearman proposed a general intelligence factor (g) to explain positive correlations among mental tests. In the 1930s, Louis L. Thurstone advanced multiple factor analysis by introducing simple structure and rotation methods, laying the foundation for modern factor analysis. This calculator performs Exploratory Factor Analysis (EFA), which discovers latent structure without prior hypotheses, as opposed to Confirmatory Factor Analysis (CFA), which tests a pre-specified factor model.
Before extracting factors, verify that your data is suitable. The Kaiser-Meyer-Olkin (KMO) measure of sampling adequacy ranges from 0 to 1, with values ≥ .60 considered acceptable and ≥ .80 meritorious. Bartlett's test of sphericity tests whether the correlation matrix differs significantly from an identity matrix using a chi-square test. A significant result (p < .05) confirms that meaningful correlations exist among variables.
Principal Component Analysis (PCA) extracts components that explain total variance and is best for data reduction. Principal Axis Factoring (PAF) extracts factors explaining only shared variance and is preferred when seeking underlying latent constructs. PCA places 1.0 on the diagonal of the correlation matrix; PAF uses communality estimates instead.
The Kaiser criterion retains factors with eigenvalues > 1. The scree plot identifies the "elbow" where eigenvalues level off. Parallel analysis compares actual eigenvalues to those from random data and is considered the most accurate method. Using multiple criteria together is recommended.
Varimax (orthogonal) assumes uncorrelated factors and produces a single loading matrix—simple to interpret. Promax (oblique) allows factors to correlate and produces both a pattern matrix (unique contributions) and a structure matrix (total correlations). Use Varimax when factors are theoretically independent; use Promax when factor correlations are expected (common in social science). A factor inter-correlation ≥ .32 suggests oblique rotation is appropriate.
A researcher administers 8 Likert-scale personality items to 30 students, designed to measure Extraversion (Q1–Q3), Conscientiousness (Q4–Q6), and Openness (Q7–Q8). KMO = .69, Bartlett's χ²(28) = 112.45, p < .001. Three factors are extracted (eigenvalues 2.85, 2.12, 1.38), explaining 79.38% of total variance. All items load cleanly (≥ .75) on their intended factor with no cross-loadings. Communalities range from .62 to .74, indicating adequate explanation by the extracted factors.
Factor loadings represent the correlation between each variable and a factor; values ≥ .40 are meaningful and ≥ .70 are strong. Cross-loadings occur when a variable loads ≥ .32 on multiple factors, complicating interpretation—consider removing such items. Communalities indicate the proportion of each variable's variance explained by the retained factors; values below .20 suggest the variable does not fit the factor structure.
An exploratory factor analysis was conducted on 8 personality items using principal component analysis with Varimax rotation. The KMO measure verified sampling adequacy, KMO = .69, and Bartlett's test of sphericity was significant, χ²(28) = 112.45, p < .001. Three factors were retained based on the Kaiser criterion (eigenvalue > 1), explaining 79.38% of the total variance. All items loaded strongly (≥ .75) on their intended factors with no cross-loadings observed.
StatMate's factor analysis calculations have been validated against R's psych::fa() and psych::principal() functions, as well as SPSS Factor Analysis output. KMO values, Bartlett's chi-square, eigenvalues, factor loadings, communalities, and variance explained all match R and SPSS output to at least 4 decimal places. Varimax rotation uses Kaiser normalization; Promax uses kappa = 4 by default.
T-Test
Compare means between two groups
ANOVA
Compare means across 3+ groups
Chi-Square
Test categorical associations
Correlation
Measure relationship strength
Descriptive
Summarize your data
Sample Size
Power analysis & sample planning
One-Sample T
Test against a known value
Mann-Whitney U
Non-parametric group comparison
Wilcoxon
Non-parametric paired test
Regression
Model X-Y relationships
Multiple Regression
Multiple predictors
Cronbach's Alpha
Scale reliability
Logistic Regression
Binary outcome prediction
Kruskal-Wallis
Non-parametric 3+ group comparison
Repeated Measures
Within-subjects ANOVA
Two-Way ANOVA
Factorial design analysis
Friedman Test
Non-parametric repeated measures
Fisher's Exact
Exact test for 2×2 tables
McNemar Test
Paired nominal data test
Enter your data and click Calculate
or click "Load Example" to try it out