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 › Oaxaca–Blinder decomposition
Decomposes the gap in an outcome between two groups into the part explained by different characteristics and the part explained by different returns to those characteristics.
Men earn more than women. Some of that is because the two groups differ in measured characteristics - experience, occupation, hours. The rest is because the same characteristic buys a different wage depending on which group you are in. Oaxaca–Blinder separates the two, and the second part is what discrimination research is about - while being careful that it is a residual, not a measurement.
Studying gaps between groups: gender or ethnic wage gaps, urban–rural differences, public–private sector pay.
Estimate separate regressions \bar{y}_A=\bar{x}_A'\hat{\beta}_A and \bar{y}_B=\bar{x}_B'\hat{\beta}_B. Then \bar{y}_A-\bar{y}_B=(\bar{x}_A-\bar{x}_B)'\beta^{}+\left[\bar{x}_A'(\hat{\beta}_A-\beta^{})+\bar{x}_B'(\beta^{}-\hat{\beta}_B)\right]. The first term is the endowment (explained) component, the second the coefficient (unexplained) component. \beta^{} is the reference structure: Oaxaca originally used \beta_A or \beta_B, Neumark (1988) the pooled estimate, Cotton (1988) a weighted average. The choice is not innocuous and the split moves with it.
\bar{y}_A-\bar{y}_B=\underbrace{(\bar{\mathbf{x}}_A-\bar{\mathbf{x}}_B)^{\prime}\boldsymbol{\beta}^{*}}_{\text{explained}}+\underbrace{\bar{\mathbf{x}}_A^{\prime}(\boldsymbol{\beta}_A-\boldsymbol{\beta}^{*})+\bar{\mathbf{x}}_B^{\prime}(\boldsymbol{\beta}^{*}-\boldsymbol{\beta}_B)}_{\text{unexplained}}
Mean log wage is 2.2538 for group 1 and 2.4681 for group 0, a raw gap of -0.2144. The threefold decomposition puts the explained part - differences in education, experience and union status - at 0.0032, which is -1.5% of the gap, and the unexplained part at -0.2176, or 101.5%. In other words essentially NONE of the gap is accounted for by the characteristics measured here: the two groups have almost identical average schooling (12.95 against 12.87 years) and experience (15.8 against 15.9 years), and are paid differently anyway. That is consistent with unequal returns to the same characteristics, and equally consistent with an omitted variable - hours, occupation, continuity of employment - that is simply not in this dataset. The decomposition cannot separate those two readings, and any write-up that calls the unexplained share "discrimination" without saying so is overstating what the arithmetic delivers.
| If you see this | It means | Do this |
|---|---|---|
| Unexplained share is very large | Either real differential treatment, or important omitted variables | Say plainly what you could not measure |
| Split changes a lot with the reference structure | Index-number problem | Report under more than one reference |
| Controlling for occupation shrinks the gap sharply | Occupation may itself be an outcome of discrimination | Report both with and without - and discuss |
| Groups have very different characteristic distributions | Limited common support | Consider a matching-based decomposition |
Quantile regression shows whether the gap differs across the distribution, which the mean decomposition hides.
Spatial autocorrelation · Spatial regression · Heckman selection · Instrumental variables (2SLS) · Difference-in-differences · Staggered difference-in-differences · Regression discontinuity · Matching & weighting
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