A beginner-friendly introduction to causal inference using DoWhy's four-step framework with simulated observational data on working from home and productivity
Estimating the causal effect of 401(k) eligibility and participation on net financial assets using three DoubleML models (PLR, IRM, IIVM) with the 1991 SIPP pension dataset
A faithful Python tutorial on Li & Fotheringham (2026) — using a two-stage MGWFER algorithm to remove time-invariant spatial confounders from Multiscale GWR and recover both unbiased spatially varying slopes and intrinsic contextual effects from simulated panel data (225 units x 3 periods).
A beginner-friendly walk-through of Causal Machine Learning — ATE, GATE, IATE, and welfare-maximising assignment — using DoubleML and EconML on a synthetic Flanders ALMP-style cohort with known true effects.
Estimate how the effect of 401(k) eligibility on household assets varies across households using Stata 19's new cate command, with PO, AIPW, GATE, GATES, and nonparametric series estimators applied to the canonical assets3 dataset
A beginner-friendly walk-through of six treatment-effects estimators in Stata --- regression adjustment, IPW, IPWRA, AIPW, nearest-neighbor matching, and propensity-score matching --- applied to the classic maternal-smoking and birth-weight case study.
A beginner-friendly tutorial on the synthetic control method in R, using the Basque Country case study to estimate the economic cost of conflict on regional GDP per capita from 1970 to 1997.
Estimate the within-country dynamic effect of war on log GDP per capita using Arellano-Bond GMM in Stata, reproducing Thies and Baum (2020) on a 1955-2015 panel of 160 countries.
Learn Difference-in-Differences (DiD) in Python using PyFixest and Great Tables. Covers the 2x2 design, TWFE regression, inference comparison, publication-quality tables, event studies, and parallel trends testing based on Corral and Yang (2024).
Replicate Hodler and Raschky (2014) to estimate the causal effect of economic shocks on civil conflict using 2SLS instrumental variables with panel data from 5,689 African regions