| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-07-04 | 4.6 kB | |
| v0.17.0 source code.tar.gz | 2026-07-04 | 37.1 MB | |
| v0.17.0 source code.zip | 2026-07-04 | 37.2 MB | |
| Totals: 3 Items | 74.2 MB | 0 | |
This release adds scikit-learn 1.9 support (fixing an import causalml.dataset failure present on the 0.16.0 wheel, [#926]), native Polars support across all meta-learners, a JAX/flax.nnx backend for DragonNet, and makes the meta-learners scikit-learn compliant (BaseEstimator, so clone() and get_params() work). It also adds the RATE evaluation metric and post-fit confidence intervals for BaseTLearner, plus numerous bug fixes.
New Features
- Add native Polars DataFrame, Series, and LazyFrame support for all meta-learners by @aman-coder03 in https://github.com/uber/causalml/pull/901
- Polish Polars support and add bootstrap CI test coverage by @aman-coder03 in https://github.com/uber/causalml/pull/921
- Add JAX/flax.nnx backend for DragonNet by @xrhd in https://github.com/uber/causalml/pull/918
- docs: document JAX backend for DragonNet by @xrhd in https://github.com/uber/causalml/pull/919
- Make meta-learners scikit-learn compliant via BaseEstimator by @aman-coder03 in https://github.com/uber/causalml/pull/912
- Add Rank-weighted Average Treatment Effect (RATE) metric by @aman-coder03 in https://github.com/uber/causalml/pull/887
- Add
rate_score()with bootstrap confidence intervals and p-values by @aman-coder03 in https://github.com/uber/causalml/pull/890 - Add AIPW docstring warning to
get_toc()andrate_score()by @jeongyoonlee in https://github.com/uber/causalml/pull/891 - Add post-fit confidence intervals to
BaseTLearnerviastore_bootstrapsandreturn_ciby @aman-coder03 in https://github.com/uber/causalml/pull/886 - Support NaN values in UpliftTree and UpliftRandomForest by @aman-coder03 in https://github.com/uber/causalml/pull/860
scikit-learn 1.9 Support
- Fix for compatibility with sklearn v1.9.0 by @jakevdp in https://github.com/uber/causalml/pull/903
- Fix CausalRandomForestRegressor.fit() on scikit-learn 1.9 by @jeongyoonlee in https://github.com/uber/causalml/pull/907
- Support CausalRandomForestRegressor.calculate_error() on scikit-learn >= 1.9 by @jeongyoonlee in https://github.com/uber/causalml/pull/909
Bug Fixes
- Fix [#904]: Prevent deepcopy of fitted templates in bootstrap and correct predict validation ordering by @Saurav-Gupta-9741 in https://github.com/uber/causalml/pull/910
- Optimised training, inference and memory for metalearners in multitreatment settings by @Ic3fr0g in https://github.com/uber/causalml/pull/896
- Fix UpliftRandomForest predict shape mismatch with multiple treatments by @jeongyoonlee in https://github.com/uber/causalml/pull/884
- Fix uplift tree p-value NaN from division by zero by @jeongyoonlee in https://github.com/uber/causalml/pull/882
- Fix CausalRandomForestRegressor predicting inf from division by zero by @jeongyoonlee in https://github.com/uber/causalml/pull/883
- Fix SensitivityPlaceboTreatment ignoring actual treatment groups by @jeongyoonlee in https://github.com/uber/causalml/pull/880
- Fix seed parameter TypeError in BaseDRLearner bootstrap CI by @mohsinm-dev in https://github.com/uber/causalml/pull/879
- Fix ValueError on read-only arrays in BaseSLearner.predict() by @mohsinm-dev in https://github.com/uber/causalml/pull/878
- Add input validation to auuc_score for missing model columns by @jeongyoonlee in https://github.com/uber/causalml/pull/881
- Make xgboost optional in synthetic dataset generation by @Si-ra-kri in https://github.com/uber/causalml/pull/872
- Bug Fix: use iloc to index pd.Series by @bekojuniranjan in https://github.com/uber/causalml/pull/877
Build / CI
- Make Cython line tracing opt-in to keep release wheels fast by @HSJung93 in https://github.com/uber/causalml/pull/914
- Remove the PyPI token from GitHub Actions in favor of the Trusted Publishing by @jeongyoonlee in https://github.com/uber/causalml/pull/871
- Upgrade GitHub Actions for Node 24 compatibility by @salmanmkc in https://github.com/uber/causalml/pull/874
- Upgrade GitHub Actions to latest versions by @salmanmkc in https://github.com/uber/causalml/pull/875
- ci: declare workflow-level
contents: readon 4 workflows by @arpitjain099 in https://github.com/uber/causalml/pull/900
⚠️ Breaking Changes
- Meta-learner
__init__signatures (#912): to become scikit-learnBaseEstimators, each learner now stores its constructor arguments verbatim and builds models infit(). Most visibly,XGBRRegressorno longer accepts arbitrary**kwargs— pass XGBoost parameters via the explicitxgb_kwargs=<dict>argument.
Full Changelog: https://github.com/uber/causalml/compare/v0.16.0...v0.17.0