Causal Inference

The FWL Theorem: Making Multivariate Regressions Intuitive

Understanding the Frisch-Waugh-Lovell theorem to isolate causal relationships by partialling-out confounders in a simulated retail store dataset

Introduction to Partial Identification: Bounding Causal Effects Under Unmeasured Confounding

Computing causal bounds under unmeasured confounding using Manski and Tian-Pearl bounds with the CausalBoundingEngine package in Python

Introduction to Causal Inference: The DoWhy Approach with the Lalonde Dataset

Estimating the causal effect of a job training program on earnings using DoWhy's four-step causal inference framework with the Lalonde dataset

Introduction to Causal Inference: Double Machine Learning

Estimating the causal effect of a cash bonus on unemployment duration using Double Machine Learning with the Pennsylvania Bonus Experiment

Heterogeneous treatment effects via two-stage DID

An introduction to heterogeneous treatment effects using the two-stage DID estimator of Gardner (2021)

Staggered DiD (Ex1)

An introduction to difference in differences with multiple time periods and staggered treatment adoption.

Staggered DiD

An introduction to difference in differences with multiple time periods and staggered treatment adoption.

Causal effects of a CO2 tax

Theresa Graefe (Ulm University) has created a very nice RTutor that allows you to replicate the main results of a recent AEJ paper on the causal effects of a CO2 tax in Sweden using the syntetic control method.

Basic DiD

An introduction to the basic differences in differences method using the classical incenerator example of Kiel and McClain (1995)

Basic synthetic control

This method constructs a synthetic control unit as a weighted average of available control units that best approximate the relevant characteristics of the treated unit prior to treatment.