Last active
September 27, 2019 15:31
-
-
Save alonsosilvaallende/d27745503e015ee3290ee114457af728 to your computer and use it in GitHub Desktop.
Performance_Random_Survival_Forests.ipynb
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"nbformat": 4, | |
"nbformat_minor": 0, | |
"metadata": { | |
"colab": { | |
"name": "Performance_Random_Forests.ipynb", | |
"provenance": [], | |
"include_colab_link": true | |
}, | |
"kernelspec": { | |
"name": "python3", | |
"display_name": "Python 3" | |
} | |
}, | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "view-in-github", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"<a href=\"https://colab.research.google.com/gist/alonsosilvaallende/d27745503e015ee3290ee114457af728/performance_random_forests.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "ThcVeo2n7u2x", | |
"colab_type": "code", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 50 | |
}, | |
"outputId": "b97b8991-6217-4599-e367-c965fdf669b9" | |
}, | |
"source": [ | |
"pip install -q scikit-survival random-survival-forest pysurvival" | |
], | |
"execution_count": 4, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"\u001b[?25l\r\u001b[K |▏ | 10kB 17.7MB/s eta 0:00:01\r\u001b[K |▎ | 20kB 1.8MB/s eta 0:00:02\r\u001b[K |▍ | 30kB 2.6MB/s eta 0:00:01\r\u001b[K |▋ | 40kB 1.7MB/s eta 0:00:02\r\u001b[K |▊ | 51kB 2.1MB/s eta 0:00:02\r\u001b[K |▉ | 61kB 2.5MB/s eta 0:00:01\r\u001b[K |█ | 71kB 2.9MB/s eta 0:00:01\r\u001b[K |█▏ | 81kB 3.3MB/s eta 0:00:01\r\u001b[K |█▎ | 92kB 3.7MB/s eta 0:00:01\r\u001b[K |█▍ | 102kB 2.8MB/s eta 0:00:01\r\u001b[K |█▋ | 112kB 2.8MB/s eta 0:00:01\r\u001b[K |█▊ | 122kB 2.8MB/s eta 0:00:01\r\u001b[K |█▉ | 133kB 2.8MB/s eta 0:00:01\r\u001b[K |██ | 143kB 2.8MB/s eta 0:00:01\r\u001b[K |██▏ | 153kB 2.8MB/s eta 0:00:01\r\u001b[K |██▎ | 163kB 2.8MB/s eta 0:00:01\r\u001b[K |██▍ | 174kB 2.8MB/s eta 0:00:01\r\u001b[K |██▋ | 184kB 2.8MB/s eta 0:00:01\r\u001b[K |██▊ | 194kB 2.8MB/s eta 0:00:01\r\u001b[K |██▉ | 204kB 2.8MB/s eta 0:00:01\r\u001b[K |███ | 215kB 2.8MB/s eta 0:00:01\r\u001b[K |███▏ | 225kB 2.8MB/s eta 0:00:01\r\u001b[K |███▎ | 235kB 2.8MB/s eta 0:00:01\r\u001b[K |███▍ | 245kB 2.8MB/s eta 0:00:01\r\u001b[K |███▋ | 256kB 2.8MB/s eta 0:00:01\r\u001b[K |███▊ | 266kB 2.8MB/s eta 0:00:01\r\u001b[K |███▉ | 276kB 2.8MB/s eta 0:00:01\r\u001b[K |████ | 286kB 2.8MB/s eta 0:00:01\r\u001b[K |████▏ | 296kB 2.8MB/s eta 0:00:01\r\u001b[K |████▎ | 307kB 2.8MB/s eta 0:00:01\r\u001b[K |████▌ | 317kB 2.8MB/s eta 0:00:01\r\u001b[K |████▋ | 327kB 2.8MB/s eta 0:00:01\r\u001b[K |████▊ | 337kB 2.8MB/s eta 0:00:01\r\u001b[K |████▉ | 348kB 2.8MB/s eta 0:00:01\r\u001b[K |█████ | 358kB 2.8MB/s eta 0:00:01\r\u001b[K |█████▏ | 368kB 2.8MB/s eta 0:00:01\r\u001b[K |█████▎ | 378kB 2.8MB/s eta 0:00:01\r\u001b[K |█████▌ | 389kB 2.8MB/s eta 0:00:01\r\u001b[K |█████▋ | 399kB 2.8MB/s eta 0:00:01\r\u001b[K |█████▊ | 409kB 2.8MB/s eta 0:00:01\r\u001b[K |█████▉ | 419kB 2.8MB/s eta 0:00:01\r\u001b[K |██████ | 430kB 2.8MB/s eta 0:00:01\r\u001b[K |██████▏ | 440kB 2.8MB/s eta 0:00:01\r\u001b[K |██████▎ | 450kB 2.8MB/s eta 0:00:01\r\u001b[K |██████▌ | 460kB 2.8MB/s eta 0:00:01\r\u001b[K |██████▋ | 471kB 2.8MB/s eta 0:00:01\r\u001b[K |██████▊ | 481kB 2.8MB/s eta 0:00:01\r\u001b[K |██████▉ | 491kB 2.8MB/s eta 0:00:01\r\u001b[K |███████ | 501kB 2.8MB/s eta 0:00:01\r\u001b[K |███████▏ | 512kB 2.8MB/s eta 0:00:01\r\u001b[K |███████▎ | 522kB 2.8MB/s eta 0:00:01\r\u001b[K |███████▌ | 532kB 2.8MB/s eta 0:00:01\r\u001b[K |███████▋ | 542kB 2.8MB/s eta 0:00:01\r\u001b[K |███████▊ | 552kB 2.8MB/s eta 0:00:01\r\u001b[K |███████▉ | 563kB 2.8MB/s eta 0:00:01\r\u001b[K |████████ | 573kB 2.8MB/s eta 0:00:01\r\u001b[K |████████▏ | 583kB 2.8MB/s eta 0:00:01\r\u001b[K |████████▎ | 593kB 2.8MB/s eta 0:00:01\r\u001b[K |████████▌ | 604kB 2.8MB/s eta 0:00:01\r\u001b[K |████████▋ | 614kB 2.8MB/s eta 0:00:01\r\u001b[K |████████▊ | 624kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████ | 634kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████ | 645kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████▏ | 655kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████▎ | 665kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████▌ | 675kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████▋ | 686kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████▊ | 696kB 2.8MB/s eta 0:00:01\r\u001b[K |██████████ | 706kB 2.8MB/s eta 0:00:01\r\u001b[K |██████████ | 716kB 2.8MB/s eta 0:00:01\r\u001b[K |██████████▏ | 727kB 2.8MB/s eta 0:00:01\r\u001b[K |██████████▎ | 737kB 2.8MB/s eta 0:00:01\r\u001b[K |██████████▌ | 747kB 2.8MB/s eta 0:00:01\r\u001b[K |██████████▋ | 757kB 2.8MB/s eta 0:00:01\r\u001b[K |██████████▊ | 768kB 2.8MB/s eta 0:00:01\r\u001b[K |███████████ | 778kB 2.8MB/s eta 0:00:01\r\u001b[K |███████████ | 788kB 2.8MB/s eta 0:00:01\r\u001b[K |███████████▏ | 798kB 2.8MB/s eta 0:00:01\r\u001b[K |███████████▎ | 808kB 2.8MB/s eta 0:00:01\r\u001b[K |███████████▌ | 819kB 2.8MB/s eta 0:00:01\r\u001b[K |███████████▋ | 829kB 2.8MB/s eta 0:00:01\r\u001b[K |███████████▊ | 839kB 2.8MB/s eta 0:00:01\r\u001b[K |████████████ | 849kB 2.8MB/s eta 0:00:01\r\u001b[K |████████████ | 860kB 2.8MB/s eta 0:00:01\r\u001b[K |████████████▏ | 870kB 2.8MB/s eta 0:00:01\r\u001b[K |████████████▎ | 880kB 2.8MB/s eta 0:00:01\r\u001b[K |████████████▌ | 890kB 2.8MB/s eta 0:00:01\r\u001b[K |████████████▋ | 901kB 2.8MB/s eta 0:00:01\r\u001b[K |████████████▊ | 911kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████ | 921kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████ | 931kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████▏ | 942kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████▍ | 952kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████▌ | 962kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████▋ | 972kB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████▊ | 983kB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████ | 993kB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████ | 1.0MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████▏ | 1.0MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████▍ | 1.0MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████▌ | 1.0MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████▋ | 1.0MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████▊ | 1.1MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████ | 1.1MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████ | 1.1MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████▏ | 1.1MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████▍ | 1.1MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████▌ | 1.1MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████▋ | 1.1MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████▊ | 1.1MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████ | 1.1MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████ | 1.1MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████▏ | 1.2MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████▍ | 1.2MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████▌ | 1.2MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████▋ | 1.2MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████▊ | 1.2MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████ | 1.2MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████ | 1.2MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████▏ | 1.2MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████▍ | 1.2MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████▌ | 1.2MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████▋ | 1.3MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████▉ | 1.3MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████ | 1.3MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████ | 1.3MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████▏ | 1.3MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████▍ | 1.3MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████▌ | 1.3MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████▋ | 1.3MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████▉ | 1.3MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████ | 1.4MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████ | 1.4MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████▏ | 1.4MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████▍ | 1.4MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████▌ | 1.4MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████▋ | 1.4MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████▉ | 1.4MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████ | 1.4MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████ | 1.4MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████▏ | 1.4MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████▍ | 1.5MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████▌ | 1.5MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████▋ | 1.5MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████▉ | 1.5MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████ | 1.5MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████ | 1.5MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████▏ | 1.5MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████▍ | 1.5MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████▌ | 1.5MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████▋ | 1.5MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████▉ | 1.6MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████ | 1.6MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████ | 1.6MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████▎ | 1.6MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████▍ | 1.6MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████▌ | 1.6MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████▋ | 1.6MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████▉ | 1.6MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████ | 1.6MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████ | 1.6MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████▎ | 1.7MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████▍ | 1.7MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████▌ | 1.7MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████▋ | 1.7MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████▉ | 1.7MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████ | 1.7MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████ | 1.7MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████▎ | 1.7MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████▍ | 1.7MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████▌ | 1.8MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████▋ | 1.8MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████▉ | 1.8MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████ | 1.8MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████ | 1.8MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████▎ | 1.8MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████▍ | 1.8MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████▌ | 1.8MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████▋ | 1.8MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████▉ | 1.8MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████ | 1.9MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████ | 1.9MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████▎ | 1.9MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████▍ | 1.9MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████▌ | 1.9MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████▊ | 1.9MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████▉ | 1.9MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████ | 1.9MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████ | 1.9MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████▎ | 1.9MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████▍ | 2.0MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████▌ | 2.0MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████▊ | 2.0MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████▉ | 2.0MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████████ | 2.0MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████████ | 2.0MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████████▎ | 2.0MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████████▍ | 2.0MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████████▌ | 2.0MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████████▊ | 2.0MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████████▉ | 2.1MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████████ | 2.1MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████████ | 2.1MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████████▎ | 2.1MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████████▍ | 2.1MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████████▌ | 2.1MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████████▊ | 2.1MB 2.8MB/s eta 0:00:01\r\u001b[K |█████████████████████████████▉ | 2.1MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████████ | 2.1MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████████ | 2.2MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████████▎ | 2.2MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████████▍ | 2.2MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████████▌ | 2.2MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████████▊ | 2.2MB 2.8MB/s eta 0:00:01\r\u001b[K |██████████████████████████████▉ | 2.2MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████████ | 2.2MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████████▏| 2.2MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████████▎| 2.2MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████████▍| 2.2MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████████▌| 2.3MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████████▊| 2.3MB 2.8MB/s eta 0:00:01\r\u001b[K |███████████████████████████████▉| 2.3MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████████████| 2.3MB 2.8MB/s eta 0:00:01\r\u001b[K |████████████████████████████████| 2.3MB 2.8MB/s \n", | |
"\u001b[?25h Building wheel for scikit-survival (setup.py) ... \u001b[?25l\u001b[?25hdone\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "IPrb8wupDIqg", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"# imports\n", | |
"%matplotlib inline\n", | |
"import matplotlib.pyplot as plt\n", | |
"import pandas as pd\n", | |
"import numpy as np" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "nrpBjG5d8bcX", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"# download the dataset\n", | |
"from sksurv.datasets import load_gbsg2\n", | |
"\n", | |
"X, y = load_gbsg2()" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "LmsTK0f5DAHa", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"# function to transform y (a numpy nd array) to a dataframe\n", | |
"def target2df(y):\n", | |
" event = [y[i][0] for i in range(len(y))]\n", | |
" time = [y[i][1] for i in range(len(y))]\n", | |
" df_y = pd.DataFrame(data={'time': time, 'event': event})\n", | |
" return df_y" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "J7U6qnN_DZDg", | |
"colab_type": "code", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 33 | |
}, | |
"outputId": "d810c3e2-8fc1-493e-fa93-f07678951db3" | |
}, | |
"source": [ | |
"# tgrade: tumor grade is an ordered categorical variable so we treat it differently\n", | |
"X['tgrade'] = X['tgrade'].cat.as_ordered()\n", | |
"X['tgrade'].dtype" | |
], | |
"execution_count": 10, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"CategoricalDtype(categories=['I', 'II', 'III'], ordered=True)" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 10 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "TZTonSa6DfQA", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"# we transform the categorical variables to numerical variables\n", | |
"X['horTh'] = X['horTh'].cat.codes\n", | |
"X['menostat'] = X['menostat'].cat.codes\n", | |
"X['tgrade'] = X['tgrade'].cat.codes" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "qARWXP-HDjA4", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"from sklearn.model_selection import train_test_split\n", | |
"\n", | |
"X_trn, X_val, y_trn, y_val = train_test_split(X, y, test_size=0.2, random_state=42)" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "dQLiXmSSDmT4", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"df_y_trn = target2df(y_trn)\n", | |
"df_y_val = target2df(y_val)" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "pJaddAeGD2kw", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"T_trn = df_y_trn['time']\n", | |
"E_trn = df_y_trn['event']\n", | |
"T_val = df_y_val['time']\n", | |
"E_val = df_y_val['event']" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "vi5L6x6D79Wa", | |
"colab_type": "code", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 66 | |
}, | |
"outputId": "6a0eaf66-9d5a-44f6-c6d2-e9090bb6de69" | |
}, | |
"source": [ | |
"from pysurvival.models.survival_forest import RandomSurvivalForestModel\n", | |
"\n", | |
"rsf_pysurvival = RandomSurvivalForestModel(num_trees=20)\n", | |
"%time rsf_pysurvival.fit(X_trn, T_trn, E_trn, seed=0)" | |
], | |
"execution_count": 21, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"CPU times: user 252 ms, sys: 13 ms, total: 265 ms\n", | |
"Wall time: 161 ms\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"RandomSurvivalForestModel" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 21 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "YPIuRDmTPvYe", | |
"colab_type": "code", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 33 | |
}, | |
"outputId": "e0f37829-7fec-4390-8a67-985a6cab0c6e" | |
}, | |
"source": [ | |
"from pysurvival.utils.metrics import concordance_index\n", | |
"c_index = concordance_index(rsf_pysurvival, X_val, T_val, E_val)\n", | |
"print(f'Concordance index: {c_index:.3f}') " | |
], | |
"execution_count": 24, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Concordance index: 0.649\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "Pgk_9gSiEJb4", | |
"colab_type": "code", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 66 | |
}, | |
"outputId": "a4e00e78-e219-4bbd-94d1-1620ce1422c9" | |
}, | |
"source": [ | |
"from random_survival_forest import RandomSurvivalForest\n", | |
"\n", | |
"rsf = RandomSurvivalForest(n_estimators=20)\n", | |
"%time rsf.fit(X_trn, df_y_trn)" | |
], | |
"execution_count": 19, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"CPU times: user 30min 1s, sys: 4.58 s, total: 30min 6s\n", | |
"Wall time: 30min 7s\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"<random_survival_forest.RandomSurvivalForest.RandomSurvivalForest at 0x7f01511c3470>" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 19 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "uRacYQH3PptZ", | |
"colab_type": "code", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 33 | |
}, | |
"outputId": "db13b0b5-478e-441c-cc4a-cfa2c0ecfecd" | |
}, | |
"source": [ | |
"rsf.oob_score" | |
], | |
"execution_count": 25, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"0.5036856355634013" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 25 | |
} | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "wm-1vbpPRLnO", | |
"colab_type": "code", | |
"colab": {} | |
}, | |
"source": [ | |
"" | |
], | |
"execution_count": 0, | |
"outputs": [] | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment