What’s new in 0.15#
scikit-survival 0.15.0 (2021-03-20)#
This release adds support for scikit-learn 0.24 and Python 3.9.
scikit-survival now requires at least pandas 0.25 and scikit-learn 0.24.
Moreover, if sksurv.ensemble.GradientBoostingSurvivalAnalysis.
or sksurv.ensemble.ComponentwiseGradientBoostingSurvivalAnalysis
are fit with loss='coxph', predict_cumulative_hazard_function and
predict_survival_function are now available.
sksurv.metrics.cumulative_dynamic_auc() now supports evaluating
time-dependent predictions, for instance for a sksurv.ensemble.RandomSurvivalForest
as illustrated in the
User Guide.
Bug fixes#
Allow passing pandas data frames to all
fitandpredictmethods (#148).Allow sparse matrices to be passed to
sksurv.ensemble.GradientBoostingSurvivalAnalysis.predict().Fix example in user guide using GridSearchCV to determine alphas for CoxnetSurvivalAnalysis (#186).
Enhancements#
Add score method to
sksurv.meta.Stacking,sksurv.meta.EnsembleSelection, andsksurv.meta.EnsembleSelectionRegressor(#151).Add support for predict_cumulative_hazard_function and predict_survival_function to
sksurv.ensemble.GradientBoostingSurvivalAnalysis. andsksurv.ensemble.ComponentwiseGradientBoostingSurvivalAnalysisif model was fit withloss='coxph'.Add support for time-dependent predictions to
sksurv.metrics.cumulative_dynamic_auc()See the User Guide for an example (#134).
Backwards incompatible changes#
The score method of
sksurv.linear_model.IPCRidge,sksurv.svm.FastSurvivalSVM, andsksurv.svm.FastKernelSurvivalSVM(ifrank_ratiois smaller than 1) now converts predictions on log(time) scale to risk scores prior to computing the concordance index.Support for cvxpy and cvxopt solver in
sksurv.svm.MinlipSurvivalAnalysisandsksurv.svm.HingeLossSurvivalSVMhas been dropped. The default solver is now ECOS, which was used by cvxpy (the previous default) internally. Therefore, results should be identical.Dropped the
presortargument fromsksurv.tree.SurvivalTreeandsksurv.ensemble.GradientBoostingSurvivalAnalysis.The
X_idx_sortedargument insksurv.tree.SurvivalTree.fit()has been deprecated in scikit-learn 0.24 and has no effect now.predict_cumulative_hazard_function and predict_survival_function of
sksurv.ensemble.RandomSurvivalForestandsksurv.tree.SurvivalTreenow return an array ofsksurv.functions.StepFunctionobjects by default. Usereturn_array=Trueto get the old behavior.Support for Python 3.6 has been dropped.
Increase minimum supported versions of dependencies. We now require:
Package
Minimum Version
Pandas
0.25.0
scikit-learn
0.24.0