Reproducibility
9 articles
Matching in Python: a balanced covariate table doesn't make the estimate valid
Propensity-score matching returns 2.21 for a planted effect of 2.0 with a balance table that passes the 0.10 rule. The overlap diagnostic shows 6% of treated units have no comparable control; trimming recovers 2.04.
Difference-in-differences in Python: why the TWFE coefficient can mislead
With staggered adoption and heterogeneous effects, two-way fixed effects returns 1.01 where the planted average is 1.60, and a group-time estimator with clean controls recovers 1.60.
Synthetic control in Python: read the pre-fit before the gap
A hands-on walk through synthetic control in Python: why a zero-error pre-treatment fit is the weakest evidence for the gap, and the pre-fit that is allowed to be large is the diagnostic to trust.
Regression discontinuity in Python: getting the effect at the cutoff right
A global polynomial fit returns a clean, plausible 1.8 where the effect planted at the cutoff is 0.75. A local fit recovers about 0.75. How to estimate a regression discontinuity in Python, and the confounder the local fit still cannot see.
How to tell whether a double machine learning estimate is right
Double machine learning in Python: why a naive plug-in reads a true effect of 1.0 as 0.55, how cross-fitting recovers 0.97, and the confounder it still cannot detect.
Instrumental variables in Python: a strong first stage doesn't make the estimate valid
2SLS recovers a planted effect of 2.0 where OLS reads 2.79, but only if the exclusion restriction holds. A small direct path biases 2SLS to 2.62 while the first-stage F stays 2051, uncatchable in-sample.
How do we know an AI's estimator does what we meant?
AI-generated econometric code can run without error and still be wrong. A routine to verify it: spec the low-visibility choices, plant a known truth, and read the code against its source.
Claude Code Skills Get Stale. Audit Them Quarterly.
Skills, memory entries, and hooks decay as models improve. In research, the decay can reach published findings and policy. A quarterly audit protocol.
47 Scripts to 15: Cleaning a Research Codebase
Research projects accumulate code debt. An AI agent can map dependencies, identify dead code, and reorganize months of accumulated scripts, with…