Add EfficientDiD documentation and tutorial notebook#199
Conversation
- Create docs/api/efficient_did.rst with API reference, examples, and comparison table (EDiD vs CS vs ImputationDiD) - Create docs/tutorials/15_efficient_did.ipynb covering basic usage, PT-All vs PT-Post, efficiency gains, event study, bootstrap, diagnostics, anticipation, and three-way estimator comparison - Add EfficientDiD to docs/api/index.rst (estimators, results, toctree) - Add EfficientDiD to docs/choosing_estimator.rst (flowchart, table, detailed guidance section) - Add tutorial 15 to docs/tutorials/README.md - Add EDiD to README.md features, tutorials table, and estimator section Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
Overall Assessment Executive Summary
Methodology
Code Quality
Performance
Maintainability
Tech Debt
Security
Documentation/Tests
Path to Approval
|
- P1: Scope PT-Post/CS equivalence to post-treatment ATT(g,t) across all doc files (rst, README, notebook) — pre-treatment diagnostics may differ - P2: Remove inappropriate cluster guidance from Webb bootstrap description - P3: Fix citation initials (Chen X., Xie H.) and add full paper title Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
/ai-review |
|
🔁 AI review rerun (requested by @igerber) Head SHA: Overall Assessment Executive Summary
Methodology
Code Quality
Performance
Maintainability
Tech Debt
Security
Documentation/Tests
Path to Approval
|
- Scope "same point estimates as CS" → "matching post-treatment ATT(g,t) with CS" - Scope "CS-equivalent" → "post-treatment CS match" in code comment - Remove "*Working Paper*" suffix from citations to match REGISTRY.md Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
/ai-review |
|
🔁 AI review rerun (requested by @igerber) Head SHA: Overall Assessment Executive Summary
Methodology
Code Quality No findings. Performance No findings. Maintainability No findings. Tech Debt No findings. This PR appears to address the tracked docs/tutorial item in TODO.md:L49. Security No findings. Documentation/Tests No findings. Path to Approval
|
The tutorial incorrectly stated "periods 1, 2, 3 can all serve as valid baselines". Period 1 is the universal Y_1 reference and is excluded per REGISTRY.md and efficient_did_weights.py. Corrected to "periods 2 and 3". Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
/ai-review |
|
🔁 AI review rerun (requested by @igerber) Head SHA: Overall Assessment ✅ Looks good Executive Summary
Methodology
Code Quality No findings. Performance No findings. Maintainability No findings. Tech Debt No findings. This PR appears to address the tracked EfficientDiD docs/tutorial follow-up in TODO.md:L48-L49. Security No findings. Documentation/Tests No findings beyond the P2 tutorial-accuracy item above. Residual risk: I was not able to independently execute the new notebook in this review environment because |
The tutorial describes a homogeneous DGP with "True effect = 2.0" but generate_staggered_data() defaults to dynamic_effects=True, making effects grow with event time. Add dynamic_effects=False to both calls so the DGP matches the prose. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
/ai-review |
|
🔁 AI review rerun (requested by @igerber) Head SHA: Overall Assessment ✅ Looks good Executive Summary
Methodology
Code Quality
Performance
Maintainability
Tech Debt
Security
Documentation/Tests
|
Summary
docs/api/efficient_did.rst) with autoclass directives, usage examples, and estimator comparison tabledocs/tutorials/15_efficient_did.ipynb) covering basic usage, PT-All vs PT-Post, efficiency gains Monte Carlo, event study visualization, group aggregation, bootstrap inference, diagnostics, anticipation, and three-way estimator comparison (EDiD vs CS vs ImputationDiD)docs/api/index.rst(estimators, results classes, module toctree)docs/choosing_estimator.rst(decision flowchart, quick reference table, detailed guidance section)docs/tutorials/README.mdREADME.mdfeatures bullet, tutorials table, and detailed estimator sectionMethodology references (required if estimator / math changes)
Validation
jupyter nbconvert --execute- all cells passSecurity / privacy
Generated with Claude Code