Merged
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests.
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
s3alfisc
approved these changes
Feb 6, 2026
Member
|
Thanks Leo! |
leostimpfle
added a commit
that referenced
this pull request
Feb 17, 2026
leostimpfle
added a commit
that referenced
this pull request
Feb 17, 2026
* Add new formula parsing module with FormulaParser, model matrix construction, and i() operator Introduces pyfixest.estimation.formula with: - parse.py: New FormulaParser supporting multi-estimation syntax (sw, sw0, csw, csw0) - model_matrix.py: Model matrix construction with proper NA handling - factor_interaction.py: Reimplemented i() operator for factor interactions - utils.py: Helper utilities for formula manipulation - Adds FormulaSyntaxError to pyfixest.errors - Adds deprecation warning to old FormulaParser - Adds comprehensive test suite for formula parsing Co-Authored-By: Alexander Fischer <alexanderfischer1985@gmail.com> * tweaks * add tests for multi multi estimation syntax use * small reorg * more tests * more tests * feat: integrate new formula module and update DID (#1187) * Add new formula parsing module with FormulaParser, model matrix construction, and i() operator Introduces pyfixest.estimation.formula with: - parse.py: New FormulaParser supporting multi-estimation syntax (sw, sw0, csw, csw0) - model_matrix.py: Model matrix construction with proper NA handling - factor_interaction.py: Reimplemented i() operator for factor interactions - utils.py: Helper utilities for formula manipulation - Adds FormulaSyntaxError to pyfixest.errors - Adds deprecation warning to old FormulaParser - Adds comprehensive test suite for formula parsing Co-Authored-By: Alexander Fischer <alexanderfischer1985@gmail.com> * Integrate new formula module across all estimation classes and DID Switches all estimation classes (feols, fepois, feiv, feglm, fegaussian, felogit, feprobit, feols_compressed, quantreg) to use the new formula parsing and model matrix construction from pyfixest.estimation.formula. - Updates FixestMulti_ to use new FormulaParser - Refactors demean_ and vcov_utils for new model matrix API - Updates prediction module for new formula interface - Adds deprecation shim to model_matrix_fixest_ - Updates DID module (did2s, saturated_twfe) for new i() coefficient naming - Updates test suite for new error types and API Co-Authored-By: Alexander Fischer <alexanderfischer1985@gmail.com> * tweaks * saturated tests --------- Co-authored-by: leostimpfle <leonardstimpfle@icloud.com> Co-authored-by: Alexander Fischer <alexanderfischer1985@gmail.com> * Revert "feat: integrate new formula module and update DID (#1187)" (#1190) This reverts commit 2ee7f5a. * Formula pr3 i tests (#1191) * Add new formula parsing module with FormulaParser, model matrix construction, and i() operator Introduces pyfixest.estimation.formula with: - parse.py: New FormulaParser supporting multi-estimation syntax (sw, sw0, csw, csw0) - model_matrix.py: Model matrix construction with proper NA handling - factor_interaction.py: Reimplemented i() operator for factor interactions - utils.py: Helper utilities for formula manipulation - Adds FormulaSyntaxError to pyfixest.errors - Adds deprecation warning to old FormulaParser - Adds comprehensive test suite for formula parsing Co-Authored-By: Alexander Fischer <alexanderfischer1985@gmail.com> * Integrate new formula module across all estimation classes and DID Switches all estimation classes (feols, fepois, feiv, feglm, fegaussian, felogit, feprobit, feols_compressed, quantreg) to use the new formula parsing and model matrix construction from pyfixest.estimation.formula. - Updates FixestMulti_ to use new FormulaParser - Refactors demean_ and vcov_utils for new model matrix API - Updates prediction module for new formula interface - Adds deprecation shim to model_matrix_fixest_ - Updates DID module (did2s, saturated_twfe) for new i() coefficient naming - Updates test suite for new error types and API Co-Authored-By: Alexander Fischer <alexanderfischer1985@gmail.com> * tweaks * saturated tests * Expand i() operator test coverage Adds comprehensive tests for the i() factor interaction operator covering: - Basic factor interactions and reference level handling - Multiple i() terms in a single formula - Interaction with continuous variables - Edge cases and error conditions Co-Authored-By: Alexander Fischer <alexanderfischer1985@gmail.com> * update docs * Update docs and clean up deprecated test file (#1189) - Updates Quarto config and sidebar for new formula module documentation - Updates quickstart guide to use new API - Updates .gitignore - Removes deprecated test_model_matrix.py (replaced by test_formula_parse.py) Co-authored-by: leostimpfle <leonardstimpfle@icloud.com> Co-authored-by: Alexander Fischer <alexanderfischer1985@gmail.com> --------- Co-authored-by: leostimpfle <leonardstimpfle@icloud.com> Co-authored-by: Alexander Fischer <alexanderfischer1985@gmail.com> * pacify mypy * Disable failing tests against fixest due to #1167 --------- Co-authored-by: leostimpfle <leonardstimpfle@icloud.com> Co-authored-by: Alexander Fischer <alexanderfischer1985@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Updates
tests.test_vs_fixest.test_multi_fitto multiple estimation againstfixestfor formulas that are expected to match. Need to enable/updatesw/sw0/csw0/mvswonce we understand lrberge/fixest#631.