EconStatsCraft rigorous, plain-spoken econometrics
Econometrics that explains itself.
Regression, panel data, time series and the whole battery of tests. Every result is followed by a verdict you can defend.
Load a dataset to see it here.
EconStatsCraft › Factor analysis
PCA repackages the variance you have; factor analysis asks a different question - what unobserved thing could be causing these variables to move together? The right tool for survey data, where several questions are noisy measures of one underlying attitude or ability.
Factor analysis and PCA look alike and answer different questions. PCA asks what combinations of your variables carry the most variance, treating every variable as measured perfectly. Factor analysis asks whether a few unobserved traits could have GENERATED the correlations you see, and explicitly allows each variable its own measurement error. If you believe there is a latent construct - ability, sentiment, quality of governance - factor analysis is the model of that belief; PCA is just a rotation.
With survey and psychometric data, where several questions are noisy measures of one underlying attitude, ability or attribute, and you want to recover that attribute rather than just compress the questions.
The model is x=\Lambda f+\varepsilon with f\sim(0,I), \varepsilon\sim(0,\Psi) diagonal, and f\perp\varepsilon. This implies \Sigma=\Lambda\Lambda'+\Psi, so the off-diagonal covariances come entirely from the common factors while the diagonal splits into COMMUNALITY h_i^2=\sum_k\lambda_{ik}^2 and UNIQUENESS \psi_i. That diagonal split is the whole difference from PCA, which puts all of the variance into components. Estimation is by maximum likelihood under normality, or by principal-axis factoring. Any orthogonal rotation \Lambda Q with QQ'=I fits identically, which is why rotation is free and why varimax - maximising the variance of squared loadings - is used to push loadings towards zero or one.
x_i=\Lambda f_i+u_i,\qquad \operatorname{Var}(x)=\Lambda\Lambda'+\Psi,\qquad \Psi \text{ diagonal}
This demo is deliberately the unhappy case, and the suitability tests are the reason to run it. Six macroeconomic indicators across 110 countries give a Kaiser-Meyer-Olkin statistic of 0.5641 - below the 0.6 usually treated as a floor - and Bartlett's test of sphericity fails to reject at p = 0.3626, meaning the correlation matrix is not distinguishable from the identity. There is, in short, nothing shared to factor. The loadings then show exactly what that looks like: communalities between 0.04 and 0.27, so every variable is between 73% and 96% its own unique variance, and the two "factors" are fitting almost nothing. A rotation will still produce a tidy table, and reporting it would be the error. The lesson is that factor analysis, unlike PCA, has suitability tests at all - PCA would have happily reported two components explaining a respectable share of variance on this same data, because it has nowhere to put measurement error and so cannot tell you that there is nothing to find.
| If you see this | It means | Do this |
|---|---|---|
| A negative uniqueness | Heywood case | Reduce the number of factors |
| Every variable loading on one factor | A general factor, or unstandardised input | Check the scaling first |
| Loadings unreadable after extraction | Rotation not applied | Rotate; the unrotated solution is rarely interpretable |
| Communality below 0.3 for a variable | It shares little with the others | Consider dropping it and refitting |
| KMO below 0.6 | The matrix has too little common structure | Factor analysis is not appropriate here |
| Factors correlated after varimax | Impossible: varimax forces orthogonality | You are looking at an oblique solution |
Principal components, for compression without a measurement model. Reliability, for whether a set of items hangs together well enough to scale.
Principal components (PCA) · Cluster analysis
Line chart · Area chart · Bar chart · Stacked bar · Scatter plot · Bubble chart · Histogram · Box plot · Pie chart · Heat map · Rebased to 100 · Lorenz curve and Gini
World map · Bivariate map · Flow map · India - state map · India - district map
Descriptive statistics · Summary by group · Two-way table · Classical statistical tests
Multiple regression (OLS) · Logit / Probit · Tobit (censored) · Truncated regression · Multinomial logit · Ordered logit / probit · Quantile regression · Poisson / Negative binomial
Time-varying coefficients (Kalman) · Unit root tests · Correlogram (ACF / PACF) · ARIMA / SARIMA · Rolling-origin cross-validation · Theta method · Unobserved components · STL forecasting · Forecast combination · Markov regime switching · Change frequency (resample) · ARCH / GARCH volatility · Decompose & filter · Spectral analysis · Exponential smoothing · Forecast accuracy
Yield curve (Nelson–Siegel / Svensson) · Dynamic factor model · Dynamic regression (ARIMAX) · Structural VAR · VAR · Granger causality · Cointegration · VECM · ARDL & bounds test
Panel regression · Panel cointegration tests · Heterogeneous panel: Mean Group & PMG · Gravity model of trade · Dynamic panel GMM · Panel diagnostics · Panel unit-root tests
Principal components (PCA) · Factor analysis · Cluster analysis
Conjoint analysis · MaxDiff (best–worst scaling) · TURF - reach of a product line · Price sensitivity (Van Westendorp) · Market basket analysis · Perceptual map · Scale reliability (Cronbach’s alpha) · Key driver analysis
Spatial autocorrelation · Spatial regression · Heckman selection · Instrumental variables (2SLS) · Difference-in-differences · Staggered difference-in-differences · Regression discontinuity · Matching & weighting · Oaxaca–Blinder decomposition
Black–Scholes option pricing · Bond price, duration & convexity · Merton distance to default · EMI / home loan planner · CAPM / beta estimation · Multi-factor model · Portfolio optimization · Value at Risk & Expected Shortfall · Performance & drawdown · Time value of money & NPV/IRR · Equity valuation (DDM, FCF, residual income) · Cost of capital (WACC) · Binomial option pricing · Option strategies (payoff & profit) · Forwards, futures & swaps · Credit risk & Basel capital · Extreme value theory (tail risk)
Life table · Life annuity · Life insurance pricing · Chain ladder reserving · Buhlmann credibility · Survival analysis · Mortality graduation · Aggregate loss model · Ruin probability · Multi-state Markov model · Loss severity fitting
Monte Carlo experiment · F-test, Wald & Chow · Structural breaks & stability
Regression vs machine learning · Ridge / Lasso / Elastic Net · Random forest · Gradient boosting
EconStatsCraft rigorous, plain-spoken econometrics
Regression, panel data, time series and the whole battery of tests. Every result is followed by a verdict you can defend.
Load a dataset to see it here.
Pick the example closest to your question. You get a spreadsheet with the right columns and a few rows showing the expected format - replace the numbers with your own, then paste or upload it back.
Copy the header row from the table above (or from the downloaded template), put your own rows underneath, and paste the whole thing here. It is checked against the layout before anything is imported.
Or click a row in the preview below.
For a units or notes row.
Search every source at once. World Bank indicators need countries and years; everything else loads in one click.
Loading the catalogue…
The engine stays loaded, so this is quick - and it leaves your open tab and panel layout alone.
⌘/Ctrl+Enter runs the current analysis. ⌘/Ctrl+P exports the session as a PDF. Esc closes this.
In the Notebook: Enter starts a new block and
Shift+Enter a new line inside one; Backspace at the start
joins back into the paragraph above; / on an empty line inserts anything.
⌘/Ctrl+B, I, E, H and
M apply bold, italic, code, highlight and maths.
#, ##, -, 1., > and
``` at the start of a line convert it.
Sign in to run unlimited analyses.
Scroll to pan · Esc to close