sebp / scikit-survival

Survival analysis built on top of scikit-learn
GNU General Public License v3.0
1.15k stars 216 forks source link

Add Kaplan-Meier estimator for competing risks. #490

Closed mvlvrd closed 6 days ago

mvlvrd commented 4 weeks ago

Is your feature request related to a problem? Please describe. I would like to include a Kaplan-Meier estimator (cumulative incidences) for the case of competing risks.

Describe the solution you'd like I have already written Python code for it. I am able to reproduce the results of Scrucca et al. that follow the cmprsk R package. However, I have still some discrepancies for the confidence interval calculations. I could send a pull request depending on how serious you consider the issue with the CI. (The differences are 5% for the test data set from Scrucca.)

Describe alternatives you've considered The differences with the cmprsk implementation come from the variance estimators. I have actually implemented them using two formulas (Scrucca papers above) and the equivalent from Choudhury and get the same results, but I'm still unable to reproduce the results from the Fortran code in cmprsk.

References and existing implementations https://luca-scr.github.io/software/#competing-risks-analysis https://cran.r-project.org/web/packages/cmprsk/index.html

sebp commented 4 weeks ago

Thanks for helping to improve scikit-survival.

I'm not an expert in competing risks analysis, but I'd be happy to take a look at the code if you open a pull request.

mvlvrd commented 4 weeks ago

Thanks! To be safe I will make a PR for code without the Confidence Interval.