Skip to content

StatsPAI 1.23.0 — JOSS review archive

Latest

Choose a tag to compare

@brycewang-stanford brycewang-stanford released this 24 Aug 18:29
· 26 commits to main since this release

This is the release archived for the JOSS review of StatsPAI: A Unified,
Agent-Native Python Toolkit for Causal Inference and Applied Econometrics

(openjournals/joss-reviews#10604).

⚠️ Correctness

Sixteen estimator-level correctness fixes land in this release. Anyone holding
results from an earlier version for the affected calls should re-run them. The
full reasoning, reference comparisons and tolerances for each are in
CHANGELOG.md.

Difference-in-differences

  • sp.did_imputation analytic standard errors were built from an approximation
    and were materially too small (36% on the headline ATT in one fixture).
  • sp.did_imputation pre-treatment event-study coefficients were misaligned.
  • sp.did(..., weights=) silently returned the unweighted estimand.
  • sp.did silently swallowed unknown keyword arguments.
  • Callaway–Sant'Anna: estimator="dr", "ipw" and "ipw_abadie" standard
    errors were each understated (up to 89% for ipw, ~34% for ipw_abadie).
  • Callaway–Sant'Anna clustered multiplier-bootstrap standard errors were wrong.
  • anticipation > 0 placed the pre-treatment placebos incorrectly.
  • sp.drdid's method= argument had no effect on repeated cross sections.

Instrumental variables and GMM

  • sp.iv(absorb=..., cluster=...) crashed when the clustering variable was
    itself absorbed.
  • Absorbed-IV standard errors charged degrees of freedom for absorbed fixed
    effects, so inference disagreed with ivreghdfe.
  • Cluster-robust GMM used a heteroskedasticity-only meat matrix.
  • Over-identification tests ignored the variance assumption.
  • Kleibergen–Paap rk statistics were not robust to the fitted vcov.
  • The augmented-diagnostics path dropped a control from the reduced form.

Other changes

New parity modules pin the dynamic TWFE event study and the full
Callaway–Sant'Anna aggregation vectors three ways (StatsPAI, R and Stata), and
the reference-claim audit now scores the group and calendar aggregations.

The citation surface was rebuilt for the JOSS submission: paper.bib gained 31
verified DOIs, every entry that has none now records why, and the
@software{wang2026statspai} entry is emitted identically by paper.bib,
sp.citation(), both READMEs and the documentation.

See CHANGELOG.md for the complete list.