Last active
May 5, 2024 23:32
-
-
Save AustinRochford/4c6b07e51a2247d678d6 to your computer and use it in GitHub Desktop.
Bayesian Survival Analysis PyMC3 Tutorial
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
{ | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# Bayesian Survival Analysis\n", | |
"\n", | |
"[Survival analysis](https://en.wikipedia.org/wiki/Survival_analysis) studies the distribution of the time to an event. Its applications span many fields across medicine, biology, engineering, and social science. This tutorial shows how to fit and analyze a Bayesian survival model in Python using [`pymc3`](https://pymc-devs.github.io/pymc3/getting_started/).\n", | |
"\n", | |
"We illustrate these concepts by analyzing a [mastectomy data set](https://vincentarelbundock.github.io/Rdatasets/doc/HSAUR/mastectomy.html) from `R`'s [`HSAUR`](https://cran.r-project.org/web/packages/HSAUR/index.html) package." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 1, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [], | |
"source": [ | |
"%matplotlib inline" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 2, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"Couldn't import dot_parser, loading of dot files will not be possible.\n" | |
] | |
} | |
], | |
"source": [ | |
"from matplotlib import pyplot as plt\n", | |
"import numpy as np\n", | |
"import pymc3 as pm\n", | |
"from pymc3.distributions.timeseries import GaussianRandomWalk\n", | |
"import seaborn as sns\n", | |
"from statsmodels import datasets\n", | |
"from theano import tensor as T" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"Fortunately, [`statsmodels.datasets`](http://statsmodels.sourceforge.net/0.6.0/datasets/index.html) makes it quite easy to load a number of data sets from `R`." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 3, | |
"metadata": { | |
"collapsed": true | |
}, | |
"outputs": [], | |
"source": [ | |
"df = datasets.get_rdataset('mastectomy', 'HSAUR', cache=True).data\n", | |
"df.event = df.event.astype(np.int64)\n", | |
"df.metastized = (df.metastized == 'yes').astype(np.int64)\n", | |
"n_patients = df.shape[0]\n", | |
"patients = np.arange(n_patients)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 4, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/html": [ | |
"<div>\n", | |
"<table border=\"1\" class=\"dataframe\">\n", | |
" <thead>\n", | |
" <tr style=\"text-align: right;\">\n", | |
" <th></th>\n", | |
" <th>time</th>\n", | |
" <th>event</th>\n", | |
" <th>metastized</th>\n", | |
" </tr>\n", | |
" </thead>\n", | |
" <tbody>\n", | |
" <tr>\n", | |
" <th>0</th>\n", | |
" <td>23</td>\n", | |
" <td>1</td>\n", | |
" <td>0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>1</th>\n", | |
" <td>47</td>\n", | |
" <td>1</td>\n", | |
" <td>0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>2</th>\n", | |
" <td>69</td>\n", | |
" <td>1</td>\n", | |
" <td>0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>3</th>\n", | |
" <td>70</td>\n", | |
" <td>0</td>\n", | |
" <td>0</td>\n", | |
" </tr>\n", | |
" <tr>\n", | |
" <th>4</th>\n", | |
" <td>100</td>\n", | |
" <td>0</td>\n", | |
" <td>0</td>\n", | |
" </tr>\n", | |
" </tbody>\n", | |
"</table>\n", | |
"</div>" | |
], | |
"text/plain": [ | |
" time event metastized\n", | |
"0 23 1 0\n", | |
"1 47 1 0\n", | |
"2 69 1 0\n", | |
"3 70 0 0\n", | |
"4 100 0 0" | |
] | |
}, | |
"execution_count": 4, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"df.head()" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 5, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"44" | |
] | |
}, | |
"execution_count": 5, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"n_patients" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"Each row represents observations from a woman diagnosed with breast cancer that underwent a mastectomy. The column `time` represents the time (in months) post-surgery that the woman was observed. The column `event` indicates whether or not the woman died during the observation period. The column `metastized` represents whether the cancer had [metastized](https://en.wikipedia.org/wiki/Metastatic_breast_cancer) prior to surgery.\n", | |
"\n", | |
"This tutorial analyzes the relationship between survival time post-mastectomy and whether or not the cancer had metastized." | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"#### A crash course in survival analysis\n", | |
"\n", | |
"First we introduce a (very little) bit of theory. If the random variable $T$ is the time to the event we are studying, survival analysis is primarily concerned with the survival function\n", | |
"\n", | |
"$$S(t) = P(T > t) = 1 - F(t),$$\n", | |
"\n", | |
"where $F$ is the [CDF](https://en.wikipedia.org/wiki/Cumulative_distribution_function) of $T$. It is mathematically convenient to express the survival function in terms of the [hazard rate](https://en.wikipedia.org/wiki/Survival_analysis#Hazard_function_and_cumulative_hazard_function), $\\lambda(t)$. The hazard rate is the instantaneous probability that the event occurs at time $t$ given that it has not yet occured. That is,\n", | |
"\n", | |
"$$\\begin{align*}\n", | |
"\\lambda(t)\n", | |
" & = \\lim_{\\Delta t \\to 0} \\frac{P(t < T < t + \\Delta t\\ |\\ T > t)}{\\Delta t} \\\\\n", | |
" & = \\lim_{\\Delta t \\to 0} \\frac{P(t < T < t + \\Delta t)}{\\Delta t \\cdot P(T > t)} \\\\\n", | |
" & = \\frac{1}{S(t)} \\cdot \\lim_{\\Delta t \\to 0} \\frac{S(t + \\Delta t) - S(t)}{\\Delta t}\n", | |
" = -\\frac{S'(t)}{S(t)}.\n", | |
"\\end{align*}$$\n", | |
"\n", | |
"Solving this differential equation for the survival function shows that\n", | |
"\n", | |
"$$S(t) = \\exp\\left(-\\int_0^s \\lambda(s)\\ ds\\right).$$\n", | |
"\n", | |
"This representation of the survival function shows that the cumulative hazard function\n", | |
"\n", | |
"$$\\Lambda(t) = \\int_0^t \\lambda(s)\\ ds$$\n", | |
"\n", | |
"is an important quantity in survival analysis, since we may consicesly write $S(t) = \\exp(-\\Lambda(t)).$\n", | |
"\n", | |
"An important, but subtle, point in survival analysis is [censoring](https://en.wikipedia.org/wiki/Survival_analysis#Censoring). Even though the quantity we are interested in estimating is the time between surgery and death, we do not observe the death of every subject. At the point in time that we perform our analysis, some of our subjects will thankfully still be alive. In the case of our mastectomy study, `df.event` is one if the subject's death was observed (the observation is not censored) and is zero if the death was not observed (the observation is censored)." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 6, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"0.59090909090909094" | |
] | |
}, | |
"execution_count": 6, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"df.event.mean()" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"Just over 40% of our observations are censored. We visualize the observed durations and indicate which observations are censored below." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 7, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n/foN1ahRE/Xu3UPGGP3+93+QJD37bE+NHfuGPvjgPVWrVl15efZZY3YYN91PzqVsa5Fjth41dg/q\nbD1qbL2IiLBSv5YZs4dd2bZRkmJju3JpGgD8HI3Zg8glAwCKIsfsQeSSAQBFcVc2AAA2Qo7Zg8gl\nAwCKYo3Zg67etlHi5i8AAJeyPe5KLrl79540ZQA+acuWTRo+PL7QY0lJM5WS8r6HRlR6PXvG6dix\nY5YegxmzhxCTAuDPrv4CEW/ijnHTmD2AmBQAXNav3wuKirpde/d+r3vvraP4+OE6duyoRo8eJWOM\nqlWrpmHD/qTTp09p/Pg/KycnV05ngOLjhysyspq6dPmdWraM0bfffqPQ0FBNmPC2vv/+O02alKjA\nwEAFBgbpjTfGSZLGjPmjMjIuKDc3Vy+/PEj33hut2NiOqlPnPjVp8j+qX7/hf7+y06GQkBANG/ZH\nhYaGavLkCdq581vVrFlLOTk5lteEuJQHEJMC4CknPlik/Vs3u/T/yWFNmiriD7Gleu133+3Rn/88\nXrfdVkkdOz6mCxcuaNas6Xr66Tg1b95C06dP0Z49u/TJJ4sVG9tNTZr8j9LSvtD8+UmKjx+mo0eP\nqF27x9W370D17t1De/d+ryVLPlPHjp3Vtu1j2rJlk06fPqmVK5erQYOGeuaZ/9WePbs1ZcokTZs2\nS0ePHtH48ZNUu/YdGjjwRQ0ZMkxRUbdr8eIPtHjx+2rR4lfaseNbzZnzrtLTjys2tqPL6nY9zJgB\nAB7hcDh0++23q1KlcElSlSoRunDhgv71r+/08suDJUkvvTRA0uXZ7sGDB/S3vyUpPz9flSpVkiSF\nhFTQnXde3gs6IqKqMjIuqEWLVpo4cZwOHjyg1q1/o5o1a+u773br2WcvT36io+/T4cOHJF2+z6d2\n7TskSbt379L48X+WJOXk5Oi+++pp//7/FGwhWbVqpKpXj7K8LsSlPICYFABPifhDrCJe6uXW/ydX\nqhSuCxcKH+/s2TOqUKFCwfaMPzFyOgOUn194Rh8YGKTRo99UeHjlQo+XK+e85niNGzfVnDnv6ssv\nv9CYMX9U374D5XA4lJ//09YQV7Z6DAwMLHgsODhYU6fOLPReq1evKLQFZdFxWYG7sj2A7RsB+JMa\nNWrqxIn0glnqmTNntGXLZjVocH+xz4+OrqvNmzdKkubMmaFNmzaobt16Wrt2taTL+zUvX7602Nca\n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\nqlOnjp5//nkNHjxY+fn5ioiIUGJiooKCgjw8Uu+zZ88e9evXTz169FDXrl119OhRDRky5Jq6fvrp\np3r33XcEBpLbAAAM/klEQVQVEBCgp556Sp07d/b00L1K0TonJCRo586duu222yRJzz//vFq1akWd\nyyAxMVFbtmxRbm6uevfurfr163Muu1jRGq9cudI157GxyPr1603v3r2NMcbs3bvXdOnSxapD+Z2v\nv/7aDBgwoNBjCQkJZunSpcYYYyZNmmT+/ve/e2JoXu3ixYume/fuZtSoUWbBggXGmOLrmpGRYdq2\nbWvOnz9vMjMzTfv27c3Zs2c9OXSvcr06//Of/yz0POpcemlpaaZXr17GGGPOnDljWrVqxbnsYter\nsSvOY8suZbMDlbVMkfj5hg0b1Lp1a0lSTEyM0tLSPDEsrxYUFKSZM2eqSpUqBY8VV9ft27erQYMG\nCg0NVfny5dWoUSNt2bLFU8P2OsXVWbr2nP7mm2+ocyk1bdpUkydPliSFhYXp0qVL2rhxI+eyCxVX\n47y8PJecx5Y1Znagso7D4dC+ffv04osv6plnntGXX36pS5cuKTAwUNLlWqenp3t4lN7H6XRec/m/\nuLqePHlS4eHhBc+pXLky5/ZNKK7OkrRgwQI9++yzevXVV3XmzBnqXAZOp7Pga5I//PBDtWrVShcv\nXuRcdqHiaux0Ol1yHlu6xnw1c4MdqFBytWrVUr9+/dSuXTsdPHhQcXFxysvLK/h90U9scI3r1ZV6\nl12HDh1UqVIlRUdHa9asWZo2bZoaNWpU6DnU+eatWLFCixcvVlJSktq0aVPwOOey66xYsUIpKSma\nO3euvv32W5ecx5bNmEuzAxVKJjIyUu3atZMk1ahRQ1WqVNGPP/6o7OxsSdLx48dVtWpVTw7RZ4SE\nhFxT16Ln9vHjxxUZGempIfqEhx9+WNHR0ZKkX//61/rXv/5Fncto3bp1mjlzpmbPnq3Q0FDOZQus\nW7dOs2bN0pw5cxQaGuqy89iyxty8eXMtW7ZMkkq0AxVK7v/+7/80bdo0SdKpU6d0+vRp/f73v9fS\npUslSampqWrZsqUnh+jVrv5E26xZs2vqev/99+vbb7/V+fPnlZGRoS1btqhx48aeGq7XurrOAwYM\n0HfffSfp8rr+vffeS53L4Pz580pMTNTMmTNVsWJFSZzLrnalxjNmzCiosavOY0s3sWAHKmtkZGTo\ntdde07lz55Sfn6++ffvqvvvuU3x8vLKyshQVFaVx48bJ6XR6eqheZdu2bRoxYoROnTolp9Op2267\nTXPmzNHrr79+TV2XLVumpKQkORwOxcXFqX379p4evtcors79+/fXjBkzVKFCBVWoUEFjx45VeHg4\ndS6l5ORkTZs2TbVr15Z0+b6U8ePHa/jw4ZzLLlK0xpLUqVMnvfvuu2U+j9ldCgAAG+GbvwAAsBEa\nMwAANkJjBgDARmjMAADYCI0ZAAAboTEDAGAjNGb4tEOHDik6Olrvv/9+oce3bNmi6Ohobdy4sVTv\nu3XrVh08eFCSFBcX59JNQ2bNmqU1a9a47P2slpmZqeXLl5fqtfv27dOuXbtcPCLAu9GY4fNq1aql\nTz75pNBjn3zyie68885Sv2dKSooOHTpU1qEV64UXXlCrVq0seW8r7Ny5U6mpqaV6bWpqqnbu3Oni\nEQHezW2bWACe4HA4VLVqVeXk5OjgwYOqUaOGcnJytHnzZjVs2LDgayE//PBDJScnKzg4WFWqVNGf\n//xnhYaGqnHjxnrxxRe1bt06nThxQpMnT9b+/fu1bNky7dixQwkJCZKkNWvWaO7cuTpw4ID69u2r\nDh06aMmSJZo7d65uueUWSdLYsWNVo0aNgrFd+Qa38+fPKzc3VzExMerTp48SEhLUuHFjNWvWTH36\n9FGLFi20fft2ZWRkaObMmapatapWr16tv/71rypfvrxq166tN954Q3l5eXrjjTd04MABZWRkqH37\n9urRo0eheixevFjr1q2TJO3atUtPPPGEcnJytH79eknSvHnzdMstt+jtt99WWlqaAgICFBkZqQkT\nJkiShg8frh9++EGSVLduXcXHx2vYsGE6f/68Jk6cqEGDBmnSpEnaunWrMjMz1bRpUw0ZMkSSNH36\ndK1atUoBAQF68sknVa9ePS1YsEBhYWEKCQnRgw8+qGHDhunixYvKycnR888/r0cffVRTp07ViRMn\ndOrUKe3Zs0e9evXSrl27tHPnTkVERGjGjBmKjY3VK6+8ogcffFCS1LNnTz377LN8NS28k4v2jAZs\n6eDBg6Zbt25m4cKFZurUqcYYY5YvX27GjBljEhISzPr1683hw4dNq1atTEZGhjHGmPHjxxc8t06d\nOmbt2rXGGGOmTp1qRo8ebYwxplu3buarr74q+OeJEycaY4zZtGmTad++vTHGmA4dOphvvvnGGGPM\n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\n", | |
"text/plain": [ | |
"<matplotlib.figure.Figure at 0x7f5bd313d6d0>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"fig, ax = plt.subplots(figsize=(8, 6))\n", | |
"\n", | |
"blue, _, red = sns.color_palette()[:3]\n", | |
"\n", | |
"ax.hlines(patients[df.event.values == 0], 0, df[df.event.values == 0].time,\n", | |
" color=blue, label='Censored');\n", | |
"\n", | |
"ax.hlines(patients[df.event.values == 1], 0, df[df.event.values == 1].time,\n", | |
" color=red, label='Uncensored');\n", | |
"\n", | |
"ax.scatter(df[df.metastized.values == 1].time, patients[df.metastized.values == 1],\n", | |
" color='k', zorder=10, label='Metastized');\n", | |
"\n", | |
"ax.set_xlim(left=0);\n", | |
"ax.set_xlabel('Months since mastectomy');\n", | |
"\n", | |
"ax.set_ylim(-0.25, n_patients + 0.25);\n", | |
"\n", | |
"ax.legend(loc='center right');" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"When an observation is censored (`df.event` is zero), `df.time` is not the subject's survival time. All we can conclude from such a censored obsevation is that the subject's true survival time exceeds `df.time`.\n", | |
"\n", | |
"This is enough basic surival analysis theory for the purposes of this tutorial; for a more extensive introduction, consult Aalen et al.^[Aalen, Odd, Ornulf Borgan, and Hakon Gjessing. Survival and event history analysis: a process point of view. Springer Science & Business Media, 2008.]" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"#### Bayesian proportional hazards model\n", | |
"\n", | |
"The two most basic estimators in survial analysis are the [Kaplan-Meier estimator](https://en.wikipedia.org/wiki/Kaplan%E2%80%93Meier_estimator) of the survival function and the [Nelson-Aalen estimator](https://en.wikipedia.org/wiki/Nelson%E2%80%93Aalen_estimator) of the cumulative hazard function. However, since we want to understand the impact of metastization on survival time, a risk regression model is more appropriate. Perhaps the most commonly used risk regression model is [Cox's proportional hazards model](https://en.wikipedia.org/wiki/Proportional_hazards_model). In this model, if we have covariates $\\mathbf{x}$ and regression coefficients $\\beta$, the hazard rate is modeled as\n", | |
"\n", | |
"$$\\lambda(t) = \\lambda_0(t) \\exp(\\mathbf{x} \\beta).$$\n", | |
"\n", | |
"Here $\\lambda_0(t)$ is the baseline hazard, which is independent of the covariates $\\mathbf{x}$. In this example, the covariates are the one-dimensonal vector `df.metastized`.\n", | |
"\n", | |
"Unlike in many regression situations, $\\mathbf{x}$ should not include a constant term corresponding to an intercept. If $\\mathbf{x}$ includes a constant term corresponding to an intercept, the model becomes [unidentifiable](https://en.wikipedia.org/wiki/Identifiability). To illustrate this unidentifiability, suppose that\n", | |
"\n", | |
"$$\\lambda(t) = \\lambda_0(t) \\exp(\\beta_0 + \\mathbf{x} \\beta) = \\lambda_0(t) \\exp(\\beta_0) \\exp(\\mathbf{x} \\beta).$$\n", | |
"\n", | |
"If $\\tilde{\\beta}_0 = \\beta_0 + \\delta$ and $\\tilde{\\lambda}_0(t) = \\lambda_0(t) \\exp(-\\delta)$, then $\\lambda(t) = \\tilde{\\lambda}_0(t) \\exp(\\tilde{\\beta}_0 + \\mathbf{x} \\beta)$ as well, making the model with $\\beta_0$ unidentifiable.\n", | |
"\n", | |
"In order to perform Bayesian inference with the Cox model, we must specify priors on $\\beta$ and $\\lambda_0(t)$. We place a normal prior on $\\beta$, $\\beta \\sim N(\\mu_{\\beta}, \\sigma_{\\beta}^2),$ where $\\mu_{\\beta} \\sim N(0, 10^2)$ and $\\sigma_{\\beta} \\sim U(0, 10)$.\n", | |
"\n", | |
"A suitable prior on $\\lambda_0(t)$ is less obvious. We choose a semiparametric prior, where $\\lambda_0(t)$ is a piecewise constant function. This prior requires us to partition the time range in question into intervals with endpoints $0 \\leq s_1 < s_2 < \\cdots < s_N$. With this partition, $\\lambda_0 (t) = \\lambda_j$ if $s_j \\leq t < s_{j + 1}$. With $\\lambda_0(t)$ constrained to have this form, all we need to do is choose priors for the $N - 1$ values $\\lambda_j$. We use independent vague priors $\\lambda_j \\sim \\operatorname{Gamma}(10^{-2}, 10^{-2}).$ For our mastectomy example, we make each interval three months long." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 8, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [], | |
"source": [ | |
"interval_length = 3\n", | |
"interval_bounds = np.arange(0, df.time.max() + interval_length + 1, interval_length)\n", | |
"n_intervals = interval_bounds.size - 1\n", | |
"intervals = np.arange(n_intervals)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"We see how deaths and censored observations are distributed in these intervals." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 9, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n1KmLWrVqrQMH9mv06JG6446SKl/+t09mcTMIZwBAgTt06KCqV6+Roy0gIEBHjx5RXFyc3ntvjowx\n6tu3l1q0aCXLsnTy5EmNGzdZCQkb9c9/LlTt2nW1ceO3mj//n8rKytKKFV8pPT1ds2ZN0wcffKbA\nwEBFR7+kxMTNsixLWVlZevfdWdq+fatOnjyuqVNnKiMjQ716dVfTps31wQez1atXHz3yyKMaP36s\npCyP7Q/CGQBQ4CzLUnZ29g3te/fu1sGDBzVgQG9JUnr6RR0/fkySVK/efZKkkJAQpaWl6o477lCF\nChX12muvqEWLVmrd+s/6738P6O67KygwMFCSFB7eQPv2/SBJzmked+7crt27dznXYYyUknJaBw/+\nqHvvred8XULCBjfugZwIZwBAgatUqbIWLpyfoy0jI0PJyYfUrFkzDRgQleO5LVs25Zim8eo0EePH\nv6P//CdJ8fFxWrHi/+mFFwbo2hkkMjOzFBAQIEny9b0Sgf7+/vrznzsoMrJHjnVc+Tz6yjquTh/p\nKXyVCgBQ4Bo2fEjHjx/Xt9+ul3RlTuT33puio0ePKCEhQZcvX5IxRpMnT9Dly5dz7eP48WNasOBz\n1agRpn79Bun8+fOqUKGSDh8+pPT0dEnStm2JCgurleN1tWvX1YYN38gYo8uXL2vSpHGSpIoVKykp\naY8kKTFxi7s2PVeMnAEABc6yLE2cOEWxsTGaO3eW/PyKqGHDhzVw4Mtateor9ev3vHx8fPToo82d\nI99rr7K2LEtlyoRo164dWrNmpfz8/NWuXQcFBgaqb99BeuWVAfLx8VG9evepXr37tHnz987X161b\nT+HhD6h3754yxujJJ/8qSXrmmV4aM2aUFiz4TOXK3aXsbM995syUkbcBU0biduM42APHwR4K63Fg\nykgAAH5HCGcAAGyGcAYAwGYIZwAAbIZwBgDAZghnAABshnAGAMBmCGcAAGyGcAYAwGYIZwAAbIZw\nBgDAZghnAABshnAGAMBmCGcAAGyGcAYAwGYIZwAAbIZwBgDAZghnAABshnAGAMBmCGcAAGyGcAYA\nwGYIZwAAbIZwBgDAZghnAABshnAGAMBmCGcAAGyGcAYAwGYIZwAAbIZwBgDAZghnAABshnAGAMBm\nCGcAAGyGcAYAwGYIZwAAbIZwBgDAZghnAABshnAGAMBmCGcAAGyGcAYAwGYIZwAAbIZwBgDAZghn\nAABshnAGAMBmCGcAAGyGcAYAwGYIZwAAbIZwBgDAZghnAABshnAGAMBmCGcAAGyGcAYAwGYIZwAA\nbIZwBgDAZghnAABshnAGAMBmCGcAAGyGcAYAwGYIZwAAbIZwBgDAZghnAABshnAGAMBmCGcAAGyG\ncAYAwGYIZwAAbIZwBgDAZghnAABshnAGAMBmCGcAAGyGcAYAwGYIZwAAbIZwBgDAZghnAABshnAG\nAMBmCGcAAGymiDs7j42NVWJiorKystS7d2899thj7lwdAACFgtvC+bvvvtP+/fv1+eef69y5c+rY\nsSPhDABAPrgtnBs2bKh69epJkkqUKKH09HQZY2RZlrtWCQBAoeDyM+fk5GRt3rxZkjR//ny99tpr\nOnDggMuOfX19VaxYMUnSl19+qebNmxPMAADkg8twHjp0qPz8/LRnzx4tWLBArVu31ptvvpnvFaxa\ntUoLFy7UiBEjflOhAAB4i3yd1q5fv74mTZqk7t27q3nz5vrggw/y1fn69es1c+ZMzZ49W0FBQS6X\nDwkpka9+7eZi8YBc2925PYc+m59re8WnIn5TP4dusR93ul3b+nvwaVxSru1Ptw7L9/J5LYtb83v9\nvVTY3K7jcLPvsYLiMpwvXryoHTt2aOXKlZo3b54yMjL0888/u+z4woULio2N1Ycffqg77rgjX8Wc\nOnUhX8vZTVra5Vzb3bk9t2ud1/dTvHiA0tIu2+pYFMT+LShXt/Xqcbgqr23Nbd8Uxv1SUEJCSrA/\nbeB2Hgc7/T75tT84XIbzs88+qxEjRqhLly4KDg7W+PHj1a5dO5crXb58uc6dO6dBgwY522JjY3Xn\nnXfms2wAALyTy3Bu27at2rZt63z88ssvy8fH9b1LIiIiFBFR+E47AgDgbi7DedmyZZo9e7bOnz8v\nY4wkybIs/etf/3J3bQAAeCWX4TxlyhTFxMRwOhoAAA9xGc6VK1dWw4YNPVELAABQPsI5PDxcEydO\n1IMPPihfX19ne6NGjdxaGAAA3splOG/YsEGStHXr1hzthDMAAO7hMpw//vhjT9QBAAB+4fI7UQcO\nHNDf/vY3hYeH6/7771evXr108OBBT9QGAIBXcjlyHjVqlJ599lk1bNhQxhht3LhR//jHPzR37lxP\n1AcAgNdxOXI2xqh58+YqXry4goKC9NhjjykrK8sTtQEA4JVchnNWVpZ27drlfLxjxw45HA63FgUA\n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\nJGn37t0KDQ0lmAEAyAe3fZUqPDxcderUUdeuXeXr66uRI0e6a1UAABQqbjutDQAAbg13CAMAwGYI\nZwAAbIZwBgDAZtx6b+384h7cBSMhIUGDBg3SPffcI0mqWbOmnnvuOUVFRcnhcCgkJESxsbHy9/cv\n4EoLp6SkJPXv3189e/ZUt27ddOzYMQ0ePPiGfb906VJ99NFH8vHxUZcuXdS5c+eCLr1Quf44DBky\nRLt371bJkiUlSc8995yaNWvGcXCz2NhYJSYmKisrS71791bdunW9+/1gClhCQoLp3bu3McaY/fv3\nm4iIiAKuyHt89913ZuDAgTnahgwZYlasWGGMMWbixInm008/LYjSCr309HTTo0cP8/rrr5t58+YZ\nY3Lf92lpaaZ169bmwoUL5tKlS6Zdu3bm3LlzBVl6oZLXcfjXv/6VYzmOg3tt3LjR/P3vfzfGGHP2\n7FnTrFkzr38/FPhpbe7BXbDMdRfrf//992rZsqUkqUWLFtq4cWNBlFXo+fv7a8aMGSpTpoyzLbd9\nv2PHDt17770KCgpSQECAwsPDlZiYWFBlFzq5HQfpxvfF9u3bOQ5u1LBhQ02aNEmSVKJECV28eFGb\nNm3y6vdDgYcz9+AuOJZl6cCBA3rhhRf09NNP69tvv9XFixfl5+cn6cqxOHnyZAFXWTj5+vre8HFB\nbvv+9OnTCg4Odi5TunRp3h+3UW7HQZLmzZunZ555Ri+//LLOnj3LcXAzX19f502qvvzySzVr1kzp\n6ele/X6wxWfO1zLcg9tjKlWqpP79+6tNmzZKTk5WZGSksrOznc9fP3qA5+S17zkm7te+fXuVKlVK\nYWFhmjlzpqZOnarw8PAcy3Ac3GPVqlVatGiR5syZo8cff9zZ7o3vhwIfOZctW1anT592Pj558qRC\nQkIKsCLvERoaqjZt2kiSKlSooDJlyujnn39WRkaGJOnEiRMqW7ZsQZboVYoVK3bDvr/+/XHixAmF\nhoYWVIleoVGjRgoLC5Mk/fGPf9R//vMfjoMHrF+/XjNmzNCsWbMUFBTk9e+HAg9n7sFdcJYtW6ap\nU6dKklJSUnTmzBk9+eSTWrFihSRp5cqVevTRRwuyxELv2r/8GzdufMO+r1+/vnbu3KkLFy4oLS1N\niYmJatCgQUGVW2hdexwGDhyoH374QdKV6wBq1KjBcXCzCxcuKDY2VjNmzNAdd9whifeDLW7fOWHC\nBG3atMl5D+6aNWsWdEleIS0tTa+88orOnz8vh8Ohfv36qVatWoqOjtbly5dVvnx5vfXWW/L19S3o\nUgudbdt4PjvTAAAJaUlEQVS2acSIEUpJSZGvr69Kliyp2bNn67XXXrth38fFxWnOnDmyLEuRkZFq\n165dQZdfaOR2HAYMGKDp06erePHiKl68uMaMGaPg4GCOgxvNnz9fU6dOVeXKlSVduR5m7NixGj58\nuNe+H2wRzgAA4H8K/LQ2AADIiXAGAMBmCGcAAGyGcAYAwGYIZwAAbIZwBgDAZghneL3Dhw8rLCxM\nX3zxRY72xMREhYWFadOmTbfU79atW5WcnCxJioyMvK2TiMycOVPr1q27bf2526VLlxQfH39Lrz1w\n4ID27NlzmysC7I1wBnTlPuNLlizJ0bZkyRJVrVr1lvtcuHChDh8+/FtLy9Xzzz+vZs2auaVvd9i9\ne7dWrlx5S69duXKldu/efZsrAuzNdhNfAJ5mWZbKli2rzMxMJScnq0KFCsrMzNSWLVtUr149560d\nv/zyS82fP1+BgYEqU6aM3nzzTQUFBalBgwZ64YUXtH79ep06dUqTJk3SwYMHFRcXp127dmnIkCGS\npHXr1un999/XoUOH1K9fP7Vv317Lly/X+++/r6JFi0qSxowZowoVKjhru3oXtwsXLigrK0stWrRQ\nnz59NGTIEDVo0ECNGzdWnz591LRpU+3YsUNpaWmaMWOGypYtq7Vr1+rdd99VQECAKleurFGjRik7\nO1ujRo3SoUOHlJaWpnbt2qlnz5459seiRYu0fv16SdKePXv0xBNPKDMzUwkJCZKkuXPnqmjRopo8\nebI2btwoHx8fhYaGaty4cZKk4cOH66effpIk1a5dW9HR0Ro2bJguXLig8ePH69VXX9XEiRO1detW\nXbp0SQ0bNtTgwYMlSdOmTdOaNWvk4+OjDh06qE6dOpo3b55KlCihYsWK6aGHHtKwYcOUnp6uzMxM\nPffcc2rVqpWmTJmiU6dOKSUlRUlJSfr73/+uPXv2aPfu3QoJCdH06dPVtWtXvfTSS3rooYckSb16\n9dIzzzzDLWphT56fQhqwl+TkZNO9e3fzySefmClTphhjjImPjzcxMTFmyJAhJiEhwRw5csQ0a9bM\npKWlGWOMGTt2rHPZmjVrmm+++cYYY8yUKVPM6NGjjTHGdO/e3WzYsMH58/jx440xxmzevNm0a9fO\nGGNM+/btzfbt240xxmzbts1s2rQpR20rV640zz33nDHGGIfDYebOnWscDocZMmSIWbBggUlOTja1\na9c2+/fvN8YYM2TIEDN37lyTnp5umjRpYs6cOWOMMWbcuHHm+++/N7NmzTLvvPOOMcaYrKws06lT\nJ5OUlJRjnQsXLjSPPfaYycjIMIcPHza1atUy33//vXM74uPjTVZWlpkxY4bJysoyxhjz7LPPmrVr\n15rdu3ebNm3aOPuaP3++uXDhglm0aJGJiooyxhizfPlyEx0d7VymX79+Zs2aNWbTpk2mS5cuxuFw\nmMzMTNOnTx/z888/O7fVGGNGjBhh5syZY4wxJiUlxTRp0sSkpqaad955x3Tv3t0YY0xCQoKpU6eO\nOXTokDHGmJYtW5q9e/eaxYsXO2tISUkxLVu2dPE/Ayg4nNYGftGmTRt9/fXXkqSlS5eqffv2zuf2\n7NmjOnXqOCdleeihh7Rr1y7n81dHY3fddZfOnz+fa/9XlwkNDdWFCxckSR07dtSQIUM0adIk+fn5\n6YEHHsjxmgYNGuj48eN68cUX9c9//lMRERE3TKlaqlQpVatWTZJUvnx5nT9/XgcOHFC5cuWcc6W/\n+uqratiwoRISEhQfH6/IyEj16NFDGRkZzs/Fr1W3bl35+fkpNDRUDofDOblAuXLllJqaKl9fX/n4\n+Kh79+6KjIxUUlKSzp07p+rVq6tUqVJ6/vnn9dlnn+nxxx9XUFCQjDHOMxAJCQnaunWrIiMjFRkZ\nqaNHj+rIkSPasWOHHnjgAVmWpSJFiui9995TiRIlctS1Y8cONW7cWNKVOX5DQ0P1448/yrIs57SO\noaGhKl26tPMMRGhoqFJTU9W2bVslJCQoNTVVK1asUIcOHXI9ToAdcFob+EWpUqVUqVIlffPNNzp0\n6JDq1q3rfO76QHQ4HDnaihT531vJ5HG7+msnELm6TI8ePdS+fXt98803GjlypP76178qIiLCuVxw\ncLCWLl2qrVu3avXq1erUqZMWL16cZ79X+7YsSw6H44YaAgIC1L9//xxz5V7Psqwb+vTx+d/f8cYY\nbdmyRYsWLdKiRYsUGBiogQMHSpL8/f31ySefaM+ePVq7dq06d+6szz777IYaIiIi9Oyzz+Zonzt3\nbq41X19bbtt6fY257RN/f3+1bt1ay5cv19dff62xY8f+6rqAgsTIGbhGhw4d9NZbb6l169bONsuy\nVLduXe3evVtpaWmSpA0bNui+++771b58fHyUmZmZ5/MOh0Pjx49XUFCQ/vKXv6h///7atm1bjmW+\n/fZbrV27Vvfff7+ioqJUrFgxpaSkSMr9j4CrbVWrVtXJkyd14sQJSVJMTIxWr16tBg0aaPny5c71\nv/XWWzeM9PP64+JaZ86cUfny5RUYGKgjR45o27Ztunz5snbt2qXFixerdu3a6tevn+rUqaOffvpJ\nPj4+ysrKknTlbMDKlSuVnZ0tSZo6daoOHjyo8PBwbdy4UVlZWcrMzFRkZKROnToly7Kc+7F+/frO\nz8NPnDihU6dOqUqVKvmqWZIiIiL00Ucfyd/fX+XLl8/Xa4CCwMgZ0P9GZC1atNDIkSP1xBNP5Hg+\nNDRUgwYNUs+ePeXv769y5crp1VdfzfHaqz9ffdykSRO9/vrrGjp0aK7r8/HxUXBwsLp27eqcw3bE\niBE5lqtSpYqio6M1Z84c+fj46JFHHtFdd92VY125rb9o0aKKiYnRgAED5Ofnp4oVK6pFixbKysrS\nvn371LVrV2VnZ6tFixb6wx/+cENt1/d5/fNNmjTR+++/r65du6patWoaMGCApk2bpsmTJysuLk7z\n589XQECAKlWqpAYNGqh06dIaP368hg0bppiYGG3btk1du3aVr6+v6tSpo4oVK6pSpUp6/PHH1a1b\nNxlj9MQTTygkJEQPP/ywYmNjJV2Za3no0KH65ptvlJGRodGjR6tYsWIua76qWrVqKlq0qDp16pTr\n84BdMGUkAK9x+PBh9e7dW0uXLmWectgaI2cAXmH69On6+uuvNXr0aIIZtsfIGQAAm+GCMAAAbIZw\nBgDAZghnAABshnAGAMBmCGcAAGyGcAYAwGb+P7pe39Y3wbxaAAAAAElFTkSuQmCC\n", | |
"text/plain": [ | |
"<matplotlib.figure.Figure at 0x7f5bd2d58510>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"fig, ax = plt.subplots(figsize=(8, 6))\n", | |
"\n", | |
"ax.hist(df[df.event == 1].time.values, bins=interval_bounds,\n", | |
" color=red, alpha=0.5, lw=0,\n", | |
" label='Uncensored');\n", | |
"ax.hist(df[df.event == 0].time.values, bins=interval_bounds,\n", | |
" color=blue, alpha=0.5, lw=0,\n", | |
" label='Censored');\n", | |
"\n", | |
"ax.set_xlim(0, interval_bounds[-1]);\n", | |
"ax.set_xlabel('Months since mastectomy');\n", | |
"\n", | |
"ax.set_yticks([0, 1, 2, 3]);\n", | |
"ax.set_ylabel('Number of observations');\n", | |
"\n", | |
"ax.legend();" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"With the prior distributions on $\\beta$ and $\\lambda_0(t)$ chosen, we now show how the model may be fit using MCMC simulation with `pymc3`. The key observation is that the piecewise-constant proportional hazard model is [closely related](http://data.princeton.edu/wws509/notes/c7s4.html) to a Poisson regression model. (The models are not identical, but their likelihoods differ by a factor that depends only on the observed data and not the parameters $\\beta$ and $\\lambda_j$. For details, see Germán Rodríguez's WWS 509 [course notes](http://data.princeton.edu/wws509/notes/c7s4.html).)\n", | |
"\n", | |
"We define indicator variables based on whether or the $i$-th suject died in the $j$-th interval,\n", | |
"\n", | |
"$$d_{i, j} = \\begin{cases}\n", | |
" 1 & \\textrm{if subject } i \\textrm{ died in interval } j \\\\\n", | |
" 0 & \\textrm{otherwise}\n", | |
"\\end{cases}.$$" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 10, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [], | |
"source": [ | |
"last_period = np.floor((df.time - 0.01) / interval_length)\n", | |
"\n", | |
"death = np.zeros((n_patients, n_intervals))\n", | |
"death[patients, last_period] = df.event" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"We also define $t_{i, j}$ to be the amount of time the $i$-th subject was at risk in the $j$-th interval." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 11, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [], | |
"source": [ | |
"exposure = np.greater_equal.outer(df.time, interval_bounds[:-1]) * interval_length\n", | |
"exposure[patients, last_period] = df.time - interval_bounds[last_period]" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"Finally, denote the risk incurred by the $i$-th subject in the $j$-th interval as $\\lambda_{i, j} = \\lambda_j \\exp(\\mathbf{x}_i \\beta)$.\n", | |
"\n", | |
"We may approximate $d_{i, j}$ with a Possion random variable with mean $t_{i, j}\\ \\lambda_{i, j}$. This approximation leads to the following `pymc3` model." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 12, | |
"metadata": { | |
"collapsed": true | |
}, | |
"outputs": [], | |
"source": [ | |
"SEED = 5078864 # from random.org" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 13, | |
"metadata": { | |
"collapsed": false, | |
"scrolled": false | |
}, | |
"outputs": [], | |
"source": [ | |
"with pm.Model() as model:\n", | |
" lambda0 = pm.Gamma('lambda0', 0.01, 0.01, shape=n_intervals)\n", | |
" \n", | |
" sigma = pm.Uniform('sigma', 0., 10.)\n", | |
" tau = pm.Deterministic('tau', sigma**-2)\n", | |
" mu_beta = pm.Normal('mu_beta', 0., 10**-2)\n", | |
" beta = pm.Normal('beta', mu_beta, tau)\n", | |
" \n", | |
" lambda_ = pm.Deterministic('lambda_', T.outer(T.exp(beta * df.metastized), lambda0))\n", | |
" mu = pm.Deterministic('mu', exposure * lambda_)\n", | |
" \n", | |
" obs = pm.Poisson('obs', mu, observed=death)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"We now sample from the model." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 14, | |
"metadata": { | |
"collapsed": true | |
}, | |
"outputs": [], | |
"source": [ | |
"n_samples = 40000\n", | |
"burn = 20000\n", | |
"thin = 20" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 15, | |
"metadata": { | |
"collapsed": false, | |
"scrolled": false | |
}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
" [-----------------100%-----------------] 40000 of 40000 complete in 44.2 sec" | |
] | |
} | |
], | |
"source": [ | |
"with model:\n", | |
" step = pm.Metropolis()\n", | |
" trace_ = pm.sample(n_samples, step, random_seed=SEED)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 16, | |
"metadata": { | |
"collapsed": true | |
}, | |
"outputs": [], | |
"source": [ | |
"trace = trace_[burn::thin]" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"We see that the hazard rate for subjects whose cancer has metastized is about one and a half times the rate of those whose cancer has not metastized." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 17, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"1.645592148084472" | |
] | |
}, | |
"execution_count": 17, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"np.exp(trace['beta'].mean())" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 18, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<matplotlib.figure.Figure at 0x7f5bd314dcd0>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"pm.traceplot(trace, vars=['beta']);" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 19, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<matplotlib.figure.Figure at 0x7f5bd2edc750>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"pm.autocorrplot(trace, vars=['beta']);" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"We now examine the effect of metastization on both the cumulative hazard and on the survival function." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 20, | |
"metadata": { | |
"collapsed": true | |
}, | |
"outputs": [], | |
"source": [ | |
"base_hazard = trace['lambda0']\n", | |
"met_hazard = trace['lambda0'] * np.exp(np.atleast_2d(trace['beta']).T)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 21, | |
"metadata": { | |
"collapsed": true | |
}, | |
"outputs": [], | |
"source": [ | |
"def cum_hazard(hazard):\n", | |
" return (interval_length * hazard).cumsum(axis=-1)\n", | |
"\n", | |
"def survival(hazard):\n", | |
" return np.exp(-cum_hazard(hazard))" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 22, | |
"metadata": { | |
"collapsed": true | |
}, | |
"outputs": [], | |
"source": [ | |
"def plot_with_hpd(x, hazard, f, ax, color=None, label=None, alpha=0.05):\n", | |
" mean = f(hazard.mean(axis=0))\n", | |
" \n", | |
" percentiles = 100 * np.array([alpha / 2., 1. - alpha / 2.])\n", | |
" hpd = np.percentile(f(hazard), percentiles, axis=0)\n", | |
" \n", | |
" ax.fill_between(x, hpd[0], hpd[1], color=color, alpha=0.25)\n", | |
" ax.step(x, mean, color=color, label=label);" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 23, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA7QAAAGfCAYAAABvM55yAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl8nGW9///Xdd+zZk/aJF1poWCR7QAFBctWKaigICK2\nLAUUETnIr0dRECo7lOULiMoqi0hBKloO5wh6SlkKyCJLgVKFIoXuabPOJJPMPvfvj2lD00z2ZCaT\nvJ+PRyFzr9fcySyf+7quz8c4juMgIiIiIiIikmesXDdAREREREREpD8U0IqIiIiIiEheUkArIiIi\nIiIieUkBrYiIiIiIiOQlBbQiIiIiIiKSlxTQioiIiIiISF5SQCsiIsPexo0bOeCAA5g3bx5nnnkm\nc+fO5e233x6y8/33f/83zz777JAdvy8WLlzIxo0b+7TPF7/4xSFpS3fH3bhxIyeffPKQnFdERKQr\nrlw3QEREpDd22203Fi1aBMBbb73FXXfdxQMPPDAk5zrppJOG5Lj9cdlll/V5H2PMELRk6I4rIiLS\nXwpoRUQk79TV1TFu3DgAPvzwQ6666io8Hg+WZfGrX/2K++67jylTpnDKKacAcPzxx/Poo4/y9NNP\n89RTT2FZFrNnz+a73/0u//rXv7jmmmtwu914PB5uv/12HnroISoqKpg7dy4XX3wxW7duJRKJ8KMf\n/YijjjqKefPmMXPmTF5//XWampq45557GD9+fHv7ujvm6aefzkcffcS1117LokWLOPbYY9lnn33Y\nf//9ee655/j9738PwB133EFpaSnPPPMMCxYs4D//8z/5v//7PzweD2+88QaLFi3iF7/4BT/96U8x\nxpBIJLjpppuYPHlyxms2e/Zsjj76aF599VWOOOIIUqlU+88XXXQRq1ev5tprr8UYQ2FhITfddBOF\nhYVcdNFFbN26lX322af9WB9//HGHbW+88cah+lWLiIh0S0OORUQkL3z66afMmzePOXPmcNNNN/G9\n730PgKamJq644goefvhhZsyYwV/+8hdOPPFEnn76aQBWr17N5MmTCYVCLF26lMcee4xHHnmEpUuX\nUlNTwxNPPMGpp57KokWLOPfcc6mrq2vviQwGgxx22GE88sgj/PKXv+TXv/51e3uKi4t56KGHOOKI\nI3jmmWc6tLW7Y+5s48aNXHDBBZx55pnU1tYSCoUAeP755zn22GMBsG2bQw89lNdeew2A5557jq9+\n9avU1dVxwQUX8PDDD3PyySfzhz/8ocvrt2nTJubOncuf/vQnFi1axNe+9jUef/xxlixZAsD111/P\nxRdfzKJFi/jCF77Aww8/zCuvvEIymWTx4sWccMIJBAIBAK699lquvfZaHnroIb70pS/x6KOPqvdW\nRERyQj20IiKSF3bdddf2IceffPIJ8+fP58knn6S8vJxbb72VSCRCbW0t3/jGN9hjjz0IhULU1tay\nbNkyTjjhBFauXMm6deuYN28eAG1tbWzatImjjz6aq666irVr13Lcccex2267tZ+zpKSE999/n8cf\nfxzLsggGg+3rZsyYAcC4ceNoamrq0Nbujrkzv9/PtGnTAJg1axYvvfQS+++/P16vl+rq6vbtjj32\nWJ5//nmOPPJIXnnlFebPn08wGOTuu+/mjjvuIBgMduhF3VlRURG77rorAAUFBeyzzz5YlkUqlWq/\npvvttx+Qnit7xx13UFhYyAEHHADAfvvth8/nA2DlypUsWLAAgHg8zr777tvleUVERIaSAloREck7\nu+22Gz6fj5qaGq6//nrOO+88DjvsMB588EHa2toA+MY3vsHf/vY3Xn31Vc4991xefvlljjzySK65\n5ppOx1uyZAkvvPACl1xyCZdcckn78r/85S8Eg0Eee+wxGhsb+fa3v92+zuXq+iP00EMP7fKYAIlE\nov1nt9vd/vOxxx7LI488QlNTE1/5ylfalxtjOPTQQ7n55pv56KOPmDx5MgUFBVx77bUcccQRzJkz\nh6VLl7J8+fIu22TbdofHltX1IK1YLIZlWTiO02G77cFvQUFB+82F7fqauEpERGQwaMixiIjknUAg\nQF1dHdXV1QQCASZPnkwsFmP58uXE43EgHdD+8Y9/ZNKkSXi9Xvbaay/+8Y9/EIlEcByH66+/nmg0\nyqOPPkogEOAb3/gGZ599Nh988EGH80yaNAmAZ555pv3YPcl0zKKiImprawG6zNC8//778/HHH7N8\n+XK++tWvdljn8XjYc889eeCBB9rXNTU1MXnyZBzHYdmyZcRisb5dyB3ssccevPvuuwC8+eab7Lvv\nvuy6666sWrUKgBUrVrQff8899+Sll14C4Omnn24fCi0iIpJt6qEVEZG8sH0OLaR7EK+44grcbjfz\n5s3jggsuYOLEiZxxxhlcd911HHfccUyfPp3q6mq+8Y1vADBhwgTOOussTj/9dGzbZvbs2Xi9XnbZ\n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\nAAAASUVORK5CYII=\n", | |
"text/plain": [ | |
"<matplotlib.figure.Figure at 0x7f5b3e8bc990>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"fig, (hazard_ax, surv_ax) = plt.subplots(ncols=2, sharex=True, sharey=False, figsize=(16, 6))\n", | |
"\n", | |
"plot_with_hpd(interval_bounds[:-1], base_hazard, cum_hazard,\n", | |
" hazard_ax, color=blue, label='Had not metastized')\n", | |
"plot_with_hpd(interval_bounds[:-1], met_hazard, cum_hazard,\n", | |
" hazard_ax, color=red, label='Metastized')\n", | |
"\n", | |
"hazard_ax.set_xlim(0, df.time.max());\n", | |
"hazard_ax.set_xlabel('Months since mastectomy');\n", | |
"\n", | |
"hazard_ax.set_ylabel(r'Cumulative hazard $\\Lambda(t)$');\n", | |
"\n", | |
"hazard_ax.legend(loc=2);\n", | |
"\n", | |
"plot_with_hpd(interval_bounds[:-1], base_hazard, survival,\n", | |
" surv_ax, color=blue)\n", | |
"plot_with_hpd(interval_bounds[:-1], met_hazard, survival,\n", | |
" surv_ax, color=red)\n", | |
"\n", | |
"surv_ax.set_xlim(0, df.time.max());\n", | |
"surv_ax.set_xlabel('Months since mastectomy');\n", | |
"\n", | |
"surv_ax.set_ylabel('Survival function $S(t)$');\n", | |
"\n", | |
"fig.suptitle('Bayesian survival model');" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"We see that the cumulative hazard for metastized subjects increases more rapidly initially (through about seventy months), after which it increases roughly in parallel with the baseline cumulative hazard.\n", | |
"\n", | |
"These plots also show the pointwise 95% high posterior density interval for each function. One of the distinct advantages of the Bayesian model fit with `pymc3` is the inherent quantification of uncertainty in our estimates." | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##### Time varying effects\n", | |
"\n", | |
"Another of the advantages of the model we have built is its flexibility. From the plots above, we may reasonable believe that the additional hazard due to metastization varies over time; it seems plausible that cancer that has metastized increases the hazard rate immediately after the mastectomy, but that the risk due to metastization decreases over time. We can accomodate this mechanism in our model by allowing the regression coefficients to vary over time. In the time-varying coefficent model, if $s_j \\leq t < s_{j + 1}$, we let $\\lambda(t) = \\lambda_j \\exp(\\mathbf{x} \\beta_j).$ The sequence of regression coefficients $\\beta_1, \\beta_2, \\ldots, \\beta_{N - 1}$ form a normal random walk with $\\beta_1 \\sim N(0, 1)$, $\\beta_j\\ |\\ \\beta_{j - 1} \\sim N(\\beta_{j - 1}, 1)$.\n", | |
"\n", | |
"We implement this model in `pymc3` as follows." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 24, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [], | |
"source": [ | |
"with pm.Model() as time_varying_model:\n", | |
" lambda0 = pm.Gamma('lambda0', 0.01, 0.01, shape=n_intervals)\n", | |
" \n", | |
" beta = GaussianRandomWalk('beta', tau=1., shape=n_intervals)\n", | |
" \n", | |
" lambda_ = pm.Deterministic('h', lambda0 * T.exp(T.outer(T.constant(df.metastized), beta)))\n", | |
" mu = pm.Deterministic('mu', exposure * lambda_)\n", | |
" \n", | |
" obs = pm.Poisson('obs', mu, observed=death)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"We proceed to sample from this model." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 25, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
" [-----------------100%-----------------] 40000 of 40000 complete in 49.3 sec" | |
] | |
} | |
], | |
"source": [ | |
"with time_varying_model:\n", | |
" step = pm.Metropolis()\n", | |
" time_varying_trace_ = pm.sample(n_samples, step, random_seed=SEED)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 26, | |
"metadata": { | |
"collapsed": true | |
}, | |
"outputs": [], | |
"source": [ | |
"time_varying_trace = time_varying_trace_[burn::thin]" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"We see from the plot of $\\beta_j$ over time below that initially $\\beta_j > 0$, indicating an elevated hazard rate due to metastization, but that this risk declines as $\\beta_j < 0$ eventually." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 27, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\npyeKoQDAJZdcnijO8uST/4NNm16AIAg47riv4rvf/T4eeWQtIpEwdu/ehfb2Nlx++dU46qj5WLXq\nDmzb9gk0TccZZ3wbp576dbz00kb8z/88DlEUMXv2gbjiiqvxyCNr0dnZgc7ODtxzz1o89NAD4yof\n2tXViVtvvRGcczQ3N+O6627Cjh2f4a67bofVagNjAm655XaEwyGsWPFLTJ48BZ99th377z8by5Zd\nn/TxXm8/br/9FiiKClEUsGzZ9WhqasZ3v3sGZs8+EIcffiS+8Y3TE234zne+heOO+yreeectfOUr\n88E5x9tvv4mjjpqPG25Yjs8/37knrSuDy+XCddf9Es8++xQ+++xTXH/9Utx006+SlpL961//D089\n9QSsVitmzdoPp59+5rByrr/4xXL813/9Effcc1ciyG/d+m+sWvUAmpqakj6Hxx5bj5deehFNTS2I\nRMLjvrCigE4IITl44LHnEHLPhdUNBADcv/4Z3PrzS3I+3u7duzBr1v7Dbhvs8XV0tOPVV1/GAw88\nAs45fvzj83DCCQvBGENPTw/uuGM13nzzdTzzzJM46KCD8frr/8Af//gMVFXF88//HyKRCB566H48\n+ugf4HA4sGzZT/Hee+8kcqPfd99Dw8qHxmIxnHfe93HccQsS5UOPPfZ43Hnn7QBSpz598MH78f/+\n3zk45pjjcP/9d2Pr1n8jEongpz9div33PwCPPLIWGzf+Fcccczy2bduKW265HdXVNTjjjP9AKBRK\n+vg///kpfPe738fhhx+J11//Ox599BEsW3YdOjs7cPvtd2H69H2HtaGrqxPf+taZuPDCH+PUU0/C\nffc9iPPPvxjf/vY3cMMNy7Fq1R1YuvQ6TJ48BU899QSeeup/cO65P8Ljj/8Xbr11JQYGBnDkkUfh\n1FO/jo6Odtxww88xf/6x2LDhMdx552o0NDTir3/9P0yePBVHHTUfJ5xwUqKiHGMMS5deBwD45z//\njv/932cwZ87B+NWvbh71HH7ykyvwzDNP4vHHn4SiKFi8+HTqoRNCSDGEJAC2If/PffoUQDwYjCwi\nMuiTT7agra01UdozEomiq6sTABKlUBsaGhAOh+DxeDB16j5YvvxqnHDCQixadBp27tyBKVOmwuFw\nAIiXAd2+fRuAvWVMP/74w3GXD/30022Jgic//vHlAIDPPtuONWvugSRJ6Ovrw6JFpwIApkyZgpqa\n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\nEVEE+H82J7+vYDgklAAAAABJRU5ErkJggg==\n", | |
"text/plain": [ | |
"<matplotlib.figure.Figure at 0x7f5b3ba72ad0>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"fig, ax = plt.subplots(figsize=(8, 6))\n", | |
"\n", | |
"beta_hpd = np.percentile(time_varying_trace['beta'], [2.5, 97.5], axis=0)\n", | |
"beta_low = beta_hpd[0]\n", | |
"beta_high = beta_hpd[1]\n", | |
"ax.fill_between(interval_bounds[:-1], beta_low, beta_high,\n", | |
" color=blue, alpha=0.25);\n", | |
"beta_hat = time_varying_trace['beta'].mean(axis=0)\n", | |
"ax.step(interval_bounds[:-1], beta_hat, color=blue);\n", | |
"ax.scatter(interval_bounds[last_period[(df.event.values == 1) & (df.metastized == 1)]],\n", | |
" beta_hat[last_period[(df.event.values == 1) & (df.metastized == 1)]],\n", | |
" c=red, zorder=10, label='Died, cancer metastized');\n", | |
"ax.scatter(interval_bounds[last_period[(df.event.values == 0) & (df.metastized == 1)]],\n", | |
" beta_hat[last_period[(df.event.values == 0) & (df.metastized == 1)]],\n", | |
" c=blue, zorder=10, label='Censored, cancer metastized');\n", | |
"\n", | |
"ax.set_xlim(0, df.time.max());\n", | |
"ax.set_xlabel('Months since mastectomy');\n", | |
"\n", | |
"ax.set_ylabel(r'$\\beta_j$');\n", | |
"\n", | |
"ax.legend();" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"The coefficients $\\beta_j$ begin declining rapidly around one hundred months post-mastectomy, which seems reasonable, given that only three of twelve subjects whose cancer had metastized lived past this point died during the study.\n", | |
"\n", | |
"The change in our estimate of the cumulative hazard and survival functions due to time-varying effects is also quite apparent in the following plots." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 28, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [], | |
"source": [ | |
"tv_base_hazard = time_varying_trace['lambda0']\n", | |
"tv_met_hazard = time_varying_trace['lambda0'] * np.exp(np.atleast_2d(time_varying_trace['beta']))" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 29, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<matplotlib.figure.Figure at 0x7f5b3ba72a50>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"fig, ax = plt.subplots(figsize=(8, 6))\n", | |
"\n", | |
"ax.step(interval_bounds[:-1], cum_hazard(base_hazard.mean(axis=0)),\n", | |
" color=blue, label='Had not metastized');\n", | |
"ax.step(interval_bounds[:-1], cum_hazard(met_hazard.mean(axis=0)),\n", | |
" color=red, label='Metastized');\n", | |
"\n", | |
"ax.step(interval_bounds[:-1], cum_hazard(tv_base_hazard.mean(axis=0)),\n", | |
" color=blue, linestyle='--', label='Had not metastized (time varying effect)');\n", | |
"ax.step(interval_bounds[:-1], cum_hazard(tv_met_hazard.mean(axis=0)),\n", | |
" color=red, linestyle='--', label='Metastized (time varying effect)');\n", | |
"\n", | |
"ax.set_xlim(0, df.time.max() - 4);\n", | |
"ax.set_xlabel('Months since mastectomy');\n", | |
"\n", | |
"ax.set_ylim(0, 2);\n", | |
"ax.set_ylabel(r'Cumulative hazard $\\Lambda(t)$');\n", | |
"\n", | |
"ax.legend(loc=2);" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 30, | |
"metadata": { | |
"collapsed": false | |
}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA7QAAAGfCAYAAABvM55yAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl8VPX1//HXvXeWzGRlSRARRKmC4gJV+m3rBorW1lqt\n2kq1UNdWv+rPtraudamKW1HrvlsVba39Wm2Ltta91m4qKqICFTeWAAnJJLMv997fH4FIyAQSmD3v\n5+OBJrPc+8nNZOaee87nfAzXdV1EREREREREyoxZ7AGIiIiIiIiIbAkFtCIiIiIiIlKWFNCKiIiI\niIhIWVJAKyIiIiIiImVJAa2IiIiIiIiUJQW0IiIiIiIiUpYU0IqIVIjly5czefJkZs6cyaxZs5gx\nYwZvvPFG3vb3xBNP8Nxzz+Vt+wNx1VVXsXz58gE953/+53/yMpZNbXf58uUcffTRA9rej3/8Y5LJ\nJM3NzSxYsACA888/n5deemmTz/vrX/8KlNbvaUPrf65cO+200zjhhBNob2/nsMMO48YbbxzQ8194\n4QXS6XTOxyUiIvnhKfYAREQkd3bccUfmzp0LwOuvv87tt9/Offfdl5d9ffOb38zLdrfEhRdeOODn\nGIaRh5Hkfrs33HADAP/85z+Jx+Pssccem93H8uXLmTdvHoccckhJ/Z42tP7nyrX58+fzn//8h9de\ne42xY8fyox/9aEDP/9WvfsUXv/hFvF5vXsYnIiK5pYBWRKRCtbS0sM022wCwaNEiLrvsMnw+H6Zp\nctNNN3HPPfew/fbb861vfQuAww47jEceeYSnnnqKefPmYZom06dP58QTT+S9997j8ssvx+v14vP5\n+OUvf8kDDzzA0KFDmTFjBueeey6rV68mkUhw5plnMnXqVGbOnMk+++zDv/71L9rb27nzzjsZOXJk\n9/g2tc3jjz+eJUuWcMUVVzB37lwOOeQQdtttNyZNmsTzzz/Pgw8+CMCtt95KfX09f/3rX7nooov4\n3//9X/7yl7/g8/n4z3/+w9y5c/nZz37GT37yEwzDIJPJcO211zJ69Oisx2z69OkcdNBB/OMf/2D/\n/ffHcZzur8855xwWL17MFVdcgWEYVFdXc+2111JdXc0555zD6tWr2W233bq39cEHH/R47DXXXJN1\nnz/96U+ZOXMme+yxByeffDL77LMPJ510EnfddRcjRozg5ptv5te//jW33norXq+3+xj+/e9/Z+7c\nuaxatYo5c+awyy67dG/z8ssv55133uG2227DdV2GDBnCTjvtxIMPPojH4+G9997jtNNO45VXXuH9\n99/npz/9KdOnT+evf/0rv/rVr/B4POy2226cd9553dtsb29nxowZPPPMM0BX5nfx4sUceeSRvV5b\n4XCYc889l+rqao477jiefvppfvGLXwBw0UUXcdBBB3HllVcyb948Lr/8ckaMGMHChQtpbm5mzpw5\n7Lrrrlx55ZW8+eab7LTTTnz88cdcf/31jBo1qns8r7/+OjfeeCMej4eRI0dyxRVXcP311xOLxTj1\n1FNZu3Ytzc3N3HjjjRx33HH87Gc/I51OY1kWV155JSNHjuTJJ5/k4YcfxjRNTjjhBNLpNG+//Tbf\n//73uf/++zn33HNpbW0llUpx1llnsd9++/Xzr09ERApFJcciIhXko48+YubMmRx77LFce+21nHTS\nSUBXMHLJJZfw0EMPsddee/GnP/2JI444gqeeegqAxYsXM3r0aCKRCM888wy/+c1vePjhh3nmmWdo\nbm7m97//Pd/5zneYO3cup556Ki0tLd1Zwo6ODvbdd18efvhhbrzxRm6++ebu8dTW1vLAAw+w//77\nd5fArrepbW5s+fLlnHHGGcyaNYs1a9YQiUSArvLQQw45BADLsvjSl77EP//5TwCef/55Dj30UFpa\nWjjjjDN46KGHOProo/n1r3/d5/FbsWIFM2bM4He/+x1z587lq1/9Ko899hiPP/44ALNnz+bcc89l\n7ty5fOELX+Chhx7i1VdfxbZtHn30Ub7xjW8QCoUAuOKKK7jiiit44IEH+PKXv8wjjzyS9ef7whe+\nwFtvvYXjOHg8HhYuXAjAm2++2V2+XFdXx1FHHcWsWbM48MADAfD5fNx3333MmjWLJ554osc2Tznl\nFKZMmcIZZ5zR4/ZFixYxZ84cfv7zn3P99ddzzTXXcNlll/HEE08Qi8W48847eeihh5g7dy7Nzc3M\nnz+/+7lDhgxh5MiRfPDBB93H/tBDD8362jIMg/fff585c+aw//77s2DBApLJJI7jMH/+/B6BoWEY\npFKp7p/lySefZMmSJcyfP5/HH3+ck046iXfeeafXsZs9ezZ33HEHDz74IMOGDeMvf/kL559/PjU1\nNdxzzz2cf/75TJkyhR/96EfcdNNNnHTSSTzwwAPMmjWL22+/nWg0yh133MGvf/1r7rvvPubNm8cR\n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\nYI7jcMIJJzB79uw+O0xvKJVK8fTTT3PkkUcSi8X42te+xgsvvLDJEnARERmclKEVERmknn32WW6+\n+ebuxkUi+bBs2TLOPPNMDj/88H4Fs9BVOr5w4ULmzp2LaZr88Ic/VDArIiJZKUMrIiIiIiIiZUmX\nO0VERERERKQsKaAVERERERGRsqSAVkRERERERMqSAloREREREREpSwpoRUREREREpCwpoBURERER\nEZGypIBWREREREREypICWhERERERESlLCmhFRERERESkLCmgFRERERERkbKkgFZERERERETKkgJa\nERERERERKUsKaEVERERERKQsKaAVERERERGRsqSAVkRERERERMqSAloREREREREpSwpoRURERERE\npCwpoBUREREREZGypIBWREREREREylJRAtrrrruOGTNmcMwxx/Dss8/2uO8f//gH3/rWt5gxYwa3\n3357MYYnIiIyKC1atIjp06fzyCOP9LpPn88iIlKKPIXe4b/+9S8++OADHn30UUKhEN/85jc5+OCD\nu++fPXs2999/P01NTXz3u9/lK1/5CuPGjSv0MEVERAaVeDzOtddey7777pv1fn0+i4hIKSp4hnbK\nlCn88pe/BKC2tpZYLIbrugAsW7aM+vp6RowYgWEYHHDAAfzzn/8s9BBFREQGHZ/Px1133cXw4cN7\n3afPZxERKVUFD2gtyyIYDALwf//3f0ydOhXDMABoaWlh6NCh3Y8dOnQoLS0thR6iiIjIoGNZFj6f\nL+t9+nwWEZFSVfCS4/Wee+45Hn/8ce6///7u29YHtuutz9xuiuu6vZ4nIiL5E1u2jFRbO4ZZ/n0F\n17THiMTSPW6bfOg+RRpN6Rro5/NfjvkeQ2d+DzAAFwwDXLr+7/GC14fh9YDXBzU1mP6qrv303Ov6\nvXU/FddYtyl33b19f/57PSY+r4Xfa+LzeQj6PdQEfVimzhlERCpJUQLaV155hbvvvpt7772Xmpqa\n7tubmppobW3t/n716tU0NTVtcluGYdDSEs7bWOUzjY21OtYFoONcGDrOWya1qpl0e3u/LyQ2NAQJ\nhWJ5HtWW6+yME0vYxR5GyRvo57Pjutz0r0iveHP8UA/TxlYByc9udJuhuhaGj4A8XiRxHBcHl9qA\nl4YaP3XVvoq4IK73ssLQcS4MHefCKMfj3NhY2+d9Bb+8Hg6Hue6667jzzjupq6vrcd+oUaOIRCKs\n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\ntLW14fTTT8ctt9wCAHjyySfx1ltvQdd1XHDBBRg/fjyef/55BAIBeL1enHHGGVi4cCFaW1sRi8Uw\nb948TJs2DY8//jjq6+vR2NiInTt34oorrsCOHTtQU1ODiooKPPXUU5g9ezZ++9vf4owzzgAA/OpX\nv8Kll16Ks88+Ox0vKyIiGgSOzRybiQZFiApIbW2tzJkzR1544QV5/PHHRURk7dq1smjRIlmwYIFs\n3LhR9u7dK1OmTJFwOCwiIvfff3/nsWPHjpX169eLiMjjjz8u99xzj4iIzJkzR95///3Ofy9evFhE\nRD788EM577zzRERk5syZ8vHHH4uIyLZt22Tz5s1d2rZmzRqZN2+eiIgopWTZsmWilJIFCxbI3//+\nd6mtrZWTTz5ZPv/8cxERWbBggSxbtkxaW1tl8uTJcuDAARERefDBB2XTpk3yzDPPyGOPPSYiIpZl\nyYUXXig7d+7scs1XXnlFfvzjH0s0GpU9e/bISSedJJs2ber8OdauXSuWZcmSJUvEsiwREbn88stl\n3bp1UlNTI+eee27nuZYvXy6hUEhWrFghN998s4iIrFq1Sm699dbOY6655hp56623ZPPmzXLxxReL\nUkpisZjMnz9fDh061Pmziojccccd8uyzz4qISGNjo0yePFlaWlrksccekzlz5oiIyMaNG2X8+PGy\ne/duERE555xz5D//+Y+8+uqrnW1obGyUc845p59XBhERZQvHZo7NRIPBJcdUkM4991y8/vrrAICV\nK1di5syZnc/t2LED48ePh9frBQCcccYZ+OSTTzqf77izOGLECDQ3Nyc8f8cxwWAQoVAIAPCzn/0M\nCxYswCOPPALTNHHaaad1+Z5JkyZh3759+M1vfoN//OMfmDVrFjRN63JMSUkJxowZAwCoqqpCc3Mz\ndu3aheHDh6OkpAQAcNNNN+H000/Hxo0bsXbtWlRXV+Oyyy5DNBrt3Et0pAkTJsA0TQSDQSilMGnS\nJADA8OHD0dLSAsMwoOs65syZg+rqauzcuRNNTU341re+hZKSElx55ZV48cUXMX36dPj9fohI5930\njRs3YuvWraiurkZ1dTW++uor7N27F9u3b8dpp50GTdPgcDjw5z//GYFAoEu7tm/fjjPPPBMAUFpa\nimAwiP/973/QNA0TJ07s7N+ysrLOu+nBYBAtLS34yU9+go0bN6KlpQVvvPEGLrjggoT/T0RENHRw\nbP4Gx2ai5HHJMRWkkpISjB49GuvXr8fu3bsxYcKEzue6D1RKqS6PORzf/Np0DA7dGYbR45jLLrsM\nM2fOxPr163HnnXfiF7/4BWbNmtV5XGlpKVauXImtW7fizTffxIUXXohXX3211/N2nFvTNCilerTB\n5XLh2muvxfTp03vtB03TepxT17+5zyUi+Oijj7BixQqsWLECbrcb119/PQDA6XTihRdewI4dO7Bu\n3TpcdNFFePHFF3u0YdasWbj88su7PL5s2bKEbe7etkQ/a/c2JuoTp9OJGTNmYNWqVXj99ddx//33\n93ktIiLKPo7N3/ysHJuJkscZWipYF1xwAe677z7MmDGj8zFN0zBhwgTU1NQgHA4DAN5//31897vf\n7fNcuq4jFov1+rxSCosXL4bf78dPf/pTXHvttdi2bVuXY9577z2sW7cO3/ve93DzzTfD6/WisbER\nQOLBueOxE044Afv370ddXR0AYNGiRXjzzTcxadIkrFq1qvP69913X4+71r0N+kc6cOAAqqqq4Ha7\nsXfvXmzbtg3t7e345JNP8Oqrr+Lkk0/GNddcg/Hjx+OLL76AruuwLAtA/M72mjVrYNs2AOCJJ57A\nl19+iYkTJ2LDhg2wLAuxWAzV1dWor6+Hpmmd/Xjqqad27iGqq6tDfX09jj/++KTaDACzZs3Cc889\nB6fTiaqqqqS+h4iIsotjM8dmooHiDC0VnI47iVOnTsWdd96J888/v8vzwWAQN9xwA+bOnQun04nh\nw4fjpptu6vK9Hf/u+Hry5Mm46667cNtttyW8nq7rKC0txezZs1FUVAQAuOOOO7ocd/zxx+PWW2/F\ns88+C13XcdZZZ2HEiBFdrpXo+h6PB4sWLcJ1110H0zQxatQoTJ06FZZl4b///S9mz54N27YxdepU\nDBs2rEfbup+z+/OTJ0/G0qVLMXv2bIwZMwbXXXcdnnzySTz66KNYvXo1li9fDpfLhdGjR2PSpEko\nKyvD4sWLsXDhQixatAjbtm3D7NmzYRgGxo8fj1GjRmH06NGYPn06LrnkEogIzj//fFRUVOD73/8+\nHnjgAQDA9ddfj9tuuw3r169HNBrFPffcA6/X22+bO4wZMwYejwcXXnhhwueJiGjo4NiMHufo3jdH\nfs2xmegbmiR7S4WIKIfs2bMHV111FVauXNlj6RMRERFlHsdmSgfO0BJR3nnqqafw+uuv45577uGA\nSURENARwbKZ04QwtERERERER5SQmhSIiIiIiIqKcxICWiIiIiIiIchIDWiIiIiIiIspJDGiJiIiI\niIgoJzGgJSIiIiIiopz0/wFQEMrGzyGWBQAAAABJRU5ErkJggg==\n", | |
"text/plain": [ | |
"<matplotlib.figure.Figure at 0x7f5b3eadcf50>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"fig, (hazard_ax, surv_ax) = plt.subplots(ncols=2, sharex=True, sharey=False, figsize=(16, 6))\n", | |
"\n", | |
"plot_with_hpd(interval_bounds[:-1], tv_base_hazard, cum_hazard,\n", | |
" hazard_ax, color=blue, label='Had not metastized')\n", | |
"plot_with_hpd(interval_bounds[:-1], tv_met_hazard, cum_hazard,\n", | |
" hazard_ax, color=red, label='Metastized')\n", | |
"\n", | |
"hazard_ax.set_xlim(0, df.time.max());\n", | |
"hazard_ax.set_xlabel('Months since mastectomy');\n", | |
"\n", | |
"hazard_ax.set_ylim(0, 2);\n", | |
"hazard_ax.set_ylabel(r'Cumulative hazard $\\Lambda(t)$');\n", | |
"\n", | |
"hazard_ax.legend(loc=2);\n", | |
"\n", | |
"plot_with_hpd(interval_bounds[:-1], tv_base_hazard, survival,\n", | |
" surv_ax, color=blue)\n", | |
"plot_with_hpd(interval_bounds[:-1], tv_met_hazard, survival,\n", | |
" surv_ax, color=red)\n", | |
"\n", | |
"surv_ax.set_xlim(0, df.time.max());\n", | |
"surv_ax.set_xlabel('Months since mastectomy');\n", | |
"\n", | |
"surv_ax.set_ylabel('Survival function $S(t)$');\n", | |
"\n", | |
"fig.suptitle('Bayesian survival model with time varying effects');" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"collapsed": true | |
}, | |
"source": [ | |
"We have really only scratched the surface of both survival analysis and the Bayesian approach to survival analysis. More information on Bayesian survival analysis is available in Ibrahim et al.^[Ibrahim, Joseph G., Ming‐Hui Chen, and Debajyoti Sinha. Bayesian survival analysis. John Wiley & Sons, Ltd, 2005.] (For example, we may want to account for individual frailty in either or original or time-varying models.)\n", | |
"\n", | |
"This tutorial is available as an [IPython](http://ipython.org/) notebook [here](https://gist.github.com/AustinRochford/4c6b07e51a2247d678d6). It is adapted from a blog post that first appeared [here](http://austinrochford.com/posts/2015-10-05-bayes-survival.html)." | |
] | |
} | |
], | |
"metadata": { | |
"kernelspec": { | |
"display_name": "Python 2", | |
"language": "python", | |
"name": "python2" | |
}, | |
"language_info": { | |
"codemirror_mode": { | |
"name": "ipython", | |
"version": 2 | |
}, | |
"file_extension": ".py", | |
"mimetype": "text/x-python", | |
"name": "python", | |
"nbconvert_exporter": "python", | |
"pygments_lexer": "ipython2", | |
"version": "2.7.6" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 0 | |
} |
@markdickson vars is now varnames. That said I am having issues where all samples of Beta end up being zero.
Please see "http://docs.pymc.io/notebooks/survival_analysis.html" for good/updated code
How do you validate the predictions and test their accuracy?
Great summary.
I got a "can't pickle fortran objects" error which was unrelated to your notebook. I updated conda and it ran normally.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Using Anaconda 2.4.0 and the latest pymc3, there's an error executing cell 18:
pm.traceplot(trace, vars=['beta']);
gives the error
TypeError Traceback (most recent call last)
in ()
----> 1 pm.traceplot(trace, vars=['beta']);
TypeError: traceplot() got an unexpected keyword argument 'vars'
Is this notebook out of date?