Scikit-survival

Latest version: v0.24.1

Safety actively analyzes 723217 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 6

0.24.1

This release restricts the version of osqp to versions prior to 1.0.0.

**Full Changelog**: https://github.com/sebp/scikit-survival/compare/v0.24.0...v0.24.1

0.24.0

This release adds support for scikit-learn 1.6, which includes missing-values support for [sksurv.ensemble.ExtraSurvivalTrees](https://scikit-survival.readthedocs.io/en/v0.24.0/api/generated/sksurv.ensemble.ExtraSurvivalTrees.html#sksurv.ensemble.ExtraSurvivalTrees). Moreover, the release features [sksurv.nonparametric.cumulative_incidence_competing_risks()](https://scikit-survival.readthedocs.io/en/v0.24.0/api/generated/sksurv.nonparametric.cumulative_incidence_competing_risks.html#sksurv.nonparametric.cumulative_incidence_competing_risks) which implements a non-parameteric estimator of the cumulative incidence function for competing risks. See the [user guide on the analysis of competing risks](https://scikit-survival.readthedocs.io/en/v0.24.0/user_guide/competing-risks.html).

Bug fixes

- In the C++ code of [sksurv.linear_model.CoxnetSurvivalAnalysis](https://scikit-survival.readthedocs.io/en/v0.24.0/api/generated/sksurv.linear_model.CoxnetSurvivalAnalysis.html#sksurv.linear_model.CoxnetSurvivalAnalysis), set type of n_alphas to VectorType::Index instead of ìnt, because on Windows, int and Eigen’s Index differ in size.
- Fix printing of Python version in sksurv.show_versions().
- Give an error if max_sample is set, but bootstrap is False in [sksurv.ensemble.RandomSurvivalForest](https://scikit-survival.readthedocs.io/en/v0.24.0/api/generated/sksurv.ensemble.RandomSurvivalForest.html#sksurv.ensemble.RandomSurvivalForest) and [sksurv.ensemble.ExtraSurvivalTrees](https://scikit-survival.readthedocs.io/en/v0.24.0/api/generated/sksurv.ensemble.ExtraSurvivalTrees.html#sksurv.ensemble.ExtraSurvivalTrees).

Enhancements

- Add [sksurv.nonparametric.cumulative_incidence_competing_risks()](https://scikit-survival.readthedocs.io/en/v0.24.0/api/generated/sksurv.nonparametric.cumulative_incidence_competing_risks.html#sksurv.nonparametric.cumulative_incidence_competing_risks) to estimate the cumulative incidence function in the case of competing risks ([491](https://github.com/sebp/scikit-survival/issues/491), [#500](https://github.com/sebp/scikit-survival/issues/500)).
- Add [sksurv.datasets.load_bmt()](https://scikit-survival.readthedocs.io/en/v0.24.0/api/generated/sksurv.datasets.load_bmt.html#sksurv.datasets.load_bmt) and [sksurv.datasets.load_cgvhd()](https://scikit-survival.readthedocs.io/en/v0.24.0/api/generated/sksurv.datasets.load_cgvhd.html#sksurv.datasets.load_cgvhd) which are datasets with competing risks ([491](https://github.com/sebp/scikit-survival/issues/491), [#500](https://github.com/sebp/scikit-survival/issues/500)).
- Add missing-values support to [sksurv.ensemble.ExtraSurvivalTrees](https://scikit-survival.readthedocs.io/en/v0.24.0/api/generated/sksurv.ensemble.ExtraSurvivalTrees.html#sksurv.ensemble.ExtraSurvivalTrees) ([504](https://github.com/sebp/scikit-survival/issues/504)).
- Add estimators_samples_ property to [sksurv.ensemble.RandomSurvivalForest](https://scikit-survival.readthedocs.io/en/v0.24.0/api/generated/sksurv.ensemble.RandomSurvivalForest.html#sksurv.ensemble.RandomSurvivalForest) and [sksurv.ensemble.ExtraSurvivalTrees](https://scikit-survival.readthedocs.io/en/v0.24.0/api/generated/sksurv.ensemble.ExtraSurvivalTrees.html#sksurv.ensemble.ExtraSurvivalTrees).
- Upgrade syntax to Python 3.10.
- Run nbval with Python 3.12, matplotlib 3.9, and seaborn 0.13.

Documentation

- Fix links in documentation.
- Add [user guide on the analysis of competing risks](https://scikit-survival.readthedocs.io/en/v0.24.0/user_guide/competing-risks.html).

Backwards incompatible changes
- Support for scikit-learn versions before 1.6.1 has been dropped ([504](https://github.com/sebp/scikit-survival/issues/504)).
- Support for Python versions before 3.10 has been dropped.

New Contributors
* mvlvrd made their first contribution in https://github.com/sebp/scikit-survival/pull/491

**Full Changelog**: https://github.com/sebp/scikit-survival/compare/v0.23.1...v0.24.0

0.23.1

This release adds support for Python 3.13. The minimum required version for pandas has been bumped to pandas 1.4.0.

Bug fixes

- Add SurvivalAnalysisMixin base class to [`sksurv.ensemble.ExtraSurvivalTrees`](https://scikit-survival.readthedocs.io/en/v0.23.1/api/generated/sksurv.ensemble.ExtraSurvivalTrees.html#sksurv.ensemble.ExtraSurvivalTrees "sksurv.ensemble.ExtraSurvivalTrees") to enable the [`sksurv.ensemble.ExtraSurvivalTrees.score()`](https://scikit-survival.readthedocs.io/en/v0.23.1/api/generated/sksurv.ensemble.ExtraSurvivalTrees.html#sksurv.ensemble.ExtraSurvivalTrees.score "sksurv.ensemble.ExtraSurvivalTrees.score") method that has been unintentionally removed in 0.23.0 ([488](https://github.com/sebp/scikit-survival/issues/488)).


Enhancements

- Improve performance of [`sksurv.metrics.concordance_index_censored()`](https://scikit-survival.readthedocs.io/en/v0.23.1/api/generated/sksurv.metrics.concordance_index_censored.html#sksurv.metrics.concordance_index_censored "sksurv.metrics.concordance_index_censored") and [`sksurv.metrics.concordance_index_ipcw()`](https://scikit-survival.readthedocs.io/en/v0.23.1/api/generated/sksurv.metrics.concordance_index_ipcw.html#sksurv.metrics.concordance_index_ipcw "sksurv.metrics.concordance_index_ipcw") ([465](https://github.com/sebp/scikit-survival/issues/465)).


Backwards incompatible changes

- Support for pandas versions before 1.4.0 has been dropped.

**Full Changelog**: https://github.com/sebp/scikit-survival/compare/v0.23.0...v0.23.1

0.23.0

This release adds support for scikit-learn 1.4 and 1.5, which includes [missing value support](https://scikit-learn.org/1.5/modules/tree.html#tree-missing-value-support) for [sksurv.ensemble.RandomSurvivalForest](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.ensemble.RandomSurvivalForest.html#sksurv.ensemble.RandomSurvivalForest).

Moreover, this release fixes critical bugs. When fitting [sksurv.tree.SurvivalTree](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.tree.SurvivalTree.html#sksurv.tree.SurvivalTree), the `sample_weight` is now correctly considered when computing the log-rank statistic for each split. This change also affects [sksurv.ensemble.RandomSurvivalForest](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.ensemble.RandomSurvivalForest.html#sksurv.ensemble.RandomSurvivalForest) and [sksurv.ensemble.ExtraSurvivalTrees](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.ensemble.ExtraSurvivalTrees.html#sksurv.ensemble.ExtraSurvivalTrees) which pass `sample_weight` to the individual trees in the ensemble.

This release fixes a bug in [sksurv.ensemble.ComponentwiseGradientBoostingSurvivalAnalysis](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.ensemble.ComponentwiseGradientBoostingSurvivalAnalysis.html#sksurv.ensemble.ComponentwiseGradientBoostingSurvivalAnalysis) and [sksurv.ensemble.GradientBoostingSurvivalAnalysis](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.ensemble.GradientBoostingSurvivalAnalysis.html#sksurv.ensemble.GradientBoostingSurvivalAnalysis) when dropout is used. Previously, dropout was only applied starting with the third iteration, now dropout is applied in the second iteration too.

Finally, this release adds compatibility with numpy 2.0 and drops support for Python 3.8.

Bug fixes

* Fix issue with dropout in [sksurv.ensemble.ComponentwiseGradientBoostingSurvivalAnalysis](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.ensemble.ComponentwiseGradientBoostingSurvivalAnalysis.html#sksurv.ensemble.ComponentwiseGradientBoostingSurvivalAnalysis) and [sksurv.ensemble.GradientBoostingSurvivalAnalysis](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.ensemble.GradientBoostingSurvivalAnalysis.html#sksurv.ensemble.GradientBoostingSurvivalAnalysis), where it was only applied starting with the third iteration.
* Fix LogrankCriterion in [sksurv.tree.SurvivalTree](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.tree.SurvivalTree.html#sksurv.tree.SurvivalTree) to handle `sample_weight` correctly ([464](https://github.com/sebp/scikit-survival/issues/464)).

Enhancements

* Fix deprecations with pandas 2.2.
* Drop importlib-resources dependency.
* Add support for scikit-learn 1.4 ([441](https://github.com/sebp/scikit-survival/issues/441)).
* Add `warm_start` support to [sksurv.ensemble.ComponentwiseGradientBoostingSurvivalAnalysis](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.ensemble.ComponentwiseGradientBoostingSurvivalAnalysis.html#sksurv.ensemble.ComponentwiseGradientBoostingSurvivalAnalysis).
* Add missing values support to [sksurv.ensemble.RandomSurvivalForest](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.ensemble.RandomSurvivalForest.html#sksurv.ensemble.RandomSurvivalForest).
* Add `require_y` tag to sksurv.base.SurvivalAnalysisMixin.
* Upgrade to ruff 0.4.3 ([456](https://github.com/sebp/scikit-survival/issues/456)).
* Add support for scikit-learn 1.5 ([461](https://github.com/sebp/scikit-survival/issues/461)).

Documentation

* Fix [sksurv.nonparametric.kaplan_meier_estimator()](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.nonparametric.kaplan_meier_estimator.html#sksurv.nonparametric.kaplan_meier_estimator) documentation to give correct default value for `conf_type` ([430](https://github.com/sebp/scikit-survival/issues/430)).
* Fix allowed values for kernel in [sksurv.svm.FastSurvivalSVM](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.svm.FastSurvivalSVM.html#sksurv.svm.FastSurvivalSVM) and [sksurv.svm.MinlipSurvivalAnalysis](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.svm.MinlipSurvivalAnalysis.html#sksurv.svm.MinlipSurvivalAnalysis) ([444](https://github.com/sebp/scikit-survival/issues/444)).
* Fix typo in API doc of [sksurv.ensemble.RandomSurvivalForest](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.ensemble.RandomSurvivalForest.html#sksurv.ensemble.RandomSurvivalForest) and [sksurv.ensemble.ExtraSurvivalTrees](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.ensemble.ExtraSurvivalTrees.html#sksurv.ensemble.ExtraSurvivalTrees) ([446](https://github.com/sebp/scikit-survival/issues/446)).
* Fix API doc for the `criterion` parameter of [sksurv.ensemble.GradientBoostingSurvivalAnalysis](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.ensemble.GradientBoostingSurvivalAnalysis.html#sksurv.ensemble.GradientBoostingSurvivalAnalysis) ([449](https://github.com/sebp/scikit-survival/issues/449)).
* Update links to scipy, pandas and numpy documentation.
* Fix letter of hyper-parameter used in the formula for [sksurv.linear_model.IPCRidge](https://scikit-survival.readthedocs.io/en/v0.23.0//api/generated/sksurv.linear_model.IPCRidge.html#sksurv.linear_model.IPCRidge) ([454](https://github.com/sebp/scikit-survival/issues/454)).
* Upgrade Sphinx to 7.3 and pydata-sphinx-theme to 0.15 ([455](https://github.com/sebp/scikit-survival/issues/455)).

Backwards incompatible changes

* Drop support for Python 3.8 ([427](https://github.com/sebp/scikit-survival/issues/427)).

New Contributors
* CaderIdris made their first contribution in https://github.com/sebp/scikit-survival/pull/430

**Full Changelog**: https://github.com/sebp/scikit-survival/compare/v0.22.2...v0.23.0

0.22.2

This release adds support for Python 3.12.

Bug fixes

- Fix invalid escape sequence in [Introduction](https://scikit-survival.readthedocs.io/en/v0.22.2/user_guide/00-introduction.html) of user guide.

Enhancements

- Mark Cython functions as noexcept ([418](https://github.com/sebp/scikit-survival/issues/418)).
- Add support for Python 3.12 ([422](https://github.com/sebp/scikit-survival/issues/422)).
- Do not use deprecated is_categorical_dtype() of Pandas API.

Documentation

- Add section [Building Cython Code](https://scikit-survival.readthedocs.io/en/v0.22.2/contributing.html#building-cython-code) to contributing guidelines ([379](https://github.com/sebp/scikit-survival/issues/379)).
- Improve the description of the estimate parameter in [sksurv.metrics.brier_score()](https://scikit-survival.readthedocs.io/en/v0.22.2/api/generated/sksurv.metrics.brier_score.html#sksurv.metrics.brier_score) and [sksurv.metrics.integrated_brier_score()](https://scikit-survival.readthedocs.io/en/v0.22.2/api/generated/sksurv.metrics.integrated_brier_score.html#sksurv.metrics.integrated_brier_score) ([424](https://github.com/sebp/scikit-survival/issues/424)).

**Full Changelog**: https://github.com/sebp/scikit-survival/compare/v0.22.1...v0.22.2

0.22.1

Bug fixes

- Fix error in [sksurv.tree.SurvivalTree.fit()](https://scikit-survival.readthedocs.io/en/v0.22.1/api/generated/sksurv.tree.SurvivalTree.html#sksurv.tree.SurvivalTree.fit) if `X` has missing values and dtype other than float32 ([412](https://github.com/sebp/scikit-survival/issues/412)).

Page 1 of 6

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.