difference-in-differences estimation and inference for Python
For the following use cases
- Balanced panels, unbalanced panels & repeated cross-section
- Two + Multiple time periods
- Fixed + Staggered treatment timing
- Binary + Multi-Valued treatment
- Heterogeneous treatment effects & triple difference
see the Documentation for more details.
NOTE: Please note that in v0.2.0 the
.plot()
methods have been temporarily removed as well theTWFE
class. They will be added back to this library in a future release. Please refer to the Release Notes for a list of changes.
The latest release can be installed using pip
pip install differences
requires Python >= 3.9
the ATTgt class implements the estimation procedures suggested by Callaway and Sant'Anna (2021) , Sant'Anna and Zhao (2020) and the multi-valued treatment case discussed in Callaway, Goodman-Bacon & Sant'Anna (2021)
from differences import ATTgt, simulate_data
df = simulate_data()
att_gt = ATTgt(data=df, cohort_name='cohort')
att_gt.fit(formula='y')
att_gt.aggregate('event')
differences ATTgt benefited from