You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix OLS survey edge cases and harden solve_poisson (round 3)
- P1: Compute survey TSL vcov on kept columns only when solve_ols drops
rank-deficient columns; expand back with NaN. Prevents singular bread
matrix on all-eventually-treated ETWFE designs.
- P1: Guard against zero-weight unit/time groups before within_transform;
raise targeted ValueError instead of letting NaN propagate.
- P2: Add weight validation (shape, NaN, Inf, non-negative, positive sum)
to solve_poisson(weights=...) matching solve_logit pattern.
- P2: Add regression tests for rank-deficient survey OLS and zero-weight
unit rejection.
- P3: Add pweight-only note to REGISTRY.md and survey-roadmap.md.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: docs/methodology/REGISTRY.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1179,6 +1179,7 @@ where `g(·)` is the link inverse (logistic or exp), `η_i` is the individual li
1179
1179
**Survey design notes:**
1180
1180
-**OLS path:** Survey-weighted within-transformation + WLS via `solve_ols(weights=...)` + TSL vcov via `compute_survey_vcov()`.
1181
1181
-**Logit/Poisson paths:** Survey-weighted IRLS via `solve_logit(weights=...)`/`solve_poisson(weights=...)` + X_tilde linearization trick for TSL vcov: `X_tilde = X * sqrt(V)`, `r_tilde = (y - mu) / sqrt(V)`, then `compute_survey_vcov(X_tilde, r_tilde, resolved)` gives correct QMLE sandwich. ASF means and gradients use survey-weighted averaging.
1182
+
-**Note:** Only `pweight` (probability weights) are supported; `fweight`/`aweight` raise `ValueError` because the composed survey/QMLE weighting changes their semantics.
1182
1183
-**Note:** Replicate-weight variance is not yet supported (`NotImplementedError`). Use TSL (strata/PSU/FPC) instead.
1183
1184
-**Note:** Bootstrap inference (`n_bootstrap > 0`) cannot be combined with `survey_design` — no survey-aware bootstrap variant is implemented.
0 commit comments