Causal Inference & Policy Evaluation
Abadie Synthetic Control Convex Weights and Post/Pre RMSPE Ratio
Audit convex donor-pool weights (w_j >= 0, SUM w_j = 1), pre-intervention fit, and Abadie’s post-to-pre RMSPE permutation test ratio in Excel and Arte Sheets.
Enforce convex donor-hull constraints before trusting a synthetic counterfactual
Unlike unconstrained linear regression — which freely assigns negative weights and extrapolates beyond the support of control regions — Abadie, Diamond, and Hainmueller (2010) restrict donor-pool weights w_1..w_J to the unit simplex: every w_j >= 0 and SUM(w_j) = 1. Because a region with poor pre-intervention fit naturally exhibits noisy post-intervention gaps even under zero treatment effect, Abadie’s permutation inference ranks the treated unit by its Post-to-Pre RMSPE Ratio = RMSPE_post / RMSPE_pre!
Build a 6-period regional audit (pre-policy T1..T3 in rows 2..4, post-policy T4..T6 in rows 5..7) with three donor regions C2:E7 and convex weights H2:H4 = {0.50, 0.30, 0.20}. Synthetic path F2:F7 = {86, 90, 94, 98, 102, 106} tracks treated pre-policy B2:B4 = {87, 89, 95} within +/-1 unit (RMSPE_pre = 1.0000), whereas post-policy treated outcomes B5:B7 = {92, 96, 100} drop by -6.0000 per period (RMSPE_post = 6.0000), yielding Post/Pre RMSPE Ratio = 6.0000!
| Synthetic Control Audit Stage | Spreadsheet Rule | Sample Value |
|---|---|---|
| Convex Simplex Check | MIN(w) >= 0 AND ABS(SUM(w) - 1) <= 1E-6 | Valid ({0.50, 0.30, 0.20}) |
| Pre-Intervention RMSPE (T1..T3) | SQRT(MEAN((Y_tr - Y_syn)^2)) pre-policy | 1.0000 |
| Post-Intervention ATT & RMSPE (T4..T6) | MEAN(Y_tr - Y_syn) / SQRT(MSPE_post) | ATT = -6.0000 / RMSPE = 6.0000 |
| Abadie Post/Pre RMSPE Ratio | RMSPE_post / RMSPE_pre | 6.0000 |
Row-Level Convex-Guarded Synthetic Control Counterfactual Formula
Reject negative regression weights or unnormalized weight sums immediately so collaborators cannot silently turn a synthetic control into an extrapolating OLS projection.
=IF(OR(MIN($H$2:$H$4) < 0, ABS(SUM($H$2:$H$4) - 1) > 1E-6), "Invalid Convex Hull Weights", ROUND(C2 * $H$2 + D2 * $H$3 + E2 * $H$4, 4))Abadie Post-to-Pre Intervention RMSPE Ratio Formula
Expand pre- and post-intervention mean squared prediction errors via SUMPRODUCT and divide RMSPE_post by RMSPE_pre.
=IF(OR(MIN(H2:H4) < 0, ABS(SUM(H2:H4) - 1) > 1E-6), "Invalid Convex Hull Weights", LET(tr_pre, B2:B4, sy_pre, F2:F4, tr_pst, B5:B7, sy_pst, F5:F7, mspe_0, (SUMPRODUCT(tr_pre, tr_pre) - 2 * SUMPRODUCT(tr_pre, sy_pre) + SUMPRODUCT(sy_pre, sy_pre)) / ROWS(tr_pre), IF(mspe_0 <= 1E-12, "Exact Zero Pre-Fit Error", LET(mspe_1, (SUMPRODUCT(tr_pst, tr_pst) - 2 * SUMPRODUCT(tr_pst, sy_pst) + SUMPRODUCT(sy_pst, sy_pst)) / ROWS(tr_pst), ROUND(SQRT(mspe_1) / SQRT(mspe_0), 4)))))Try the example
Use the original values or change them to test your understanding.