{"library":"scikit-survival","title":"Scikit-Survival","description":"Scikit-survival is a Python library for survival analysis built on top of scikit-learn. It provides various survival models like Cox proportional hazards, random survival forests, and gradient boosting, along with utility functions for data preparation and evaluation. The current version is 0.27.0, and it follows an active release cadence, frequently updating to support newer versions of scikit-learn, NumPy, and pandas.","language":"python","status":"active","last_verified":"Sun May 17","install":{"commands":["pip install scikit-survival"],"cli":null},"imports":["from sksurv.ensemble import RandomSurvivalForest","from sksurv.linear_model import CoxPHSurvivalAnalysis","from sksurv.datasets import load_whas500","from sksurv.metrics import concordance_index_censored"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import numpy as np\nfrom sksurv.datasets import load_whas500\nfrom sksurv.ensemble import RandomSurvivalForest\n\nX, y = load_whas500()\n\n# Split data (simple for quickstart)\nX_train, X_test = X.iloc[:300], X.iloc[300:]\ny_train, y_test = y[:300], y[300:]\n\n# Initialize and fit a Random Survival Forest model\nrsf = RandomSurvivalForest(\n    n_estimators=100,\n    min_samples_leaf=20,\n    random_state=42\n)\nrsf.fit(X_train, y_train)\n\n# Predict survival functions and calculate concordance index\nsurv_fns = rsf.predict_survival_function(X_test, return_array=True)\npreds = rsf.predict(X_test)\n\nfrom sksurv.metrics import concordance_index_censored\nc_index = concordance_index_censored(y_test['fstat'], y_test['lenfol'], preds)[0]\n\nprint(f\"Predicted survival for first test sample: {surv_fns[0, :5].round(2)}\")\nprint(f\"Concordance Index (C-index): {c_index:.3f}\")","lang":"python","description":"This quickstart loads the WHAS500 dataset, prepares it for survival analysis, trains a RandomSurvivalForest model, and demonstrates prediction of survival functions and calculation of the concordance index. Note the use of a structured NumPy array for the `y` target, which is characteristic of survival analysis in scikit-survival.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-17","installed_version":"0.23.1","pypi_latest":"0.27.0","is_stale":true,"summary":{"python_range":"3.10–3.9","success_rate":40,"avg_install_s":14.3,"avg_import_s":4.22,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"scikit-survival","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"scikit-survival","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":13.8,"import_time_s":3.1,"mem_mb":69.3,"disk_size":"365M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"scikit-survival","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"scikit-survival","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":13.2,"import_time_s":4.98,"mem_mb":84.1,"disk_size":"384M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"scikit-survival","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"scikit-survival","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":14.3,"import_time_s":5.65,"mem_mb":82.3,"disk_size":"374M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"scikit-survival","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"scikit-survival","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":5.5,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"scikit-survival","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"scikit-survival","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":15.8,"import_time_s":3.16,"mem_mb":66.5,"disk_size":"374M"}]}}