Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save fonnesbeck/5416434 to your computer and use it in GitHub Desktop.
Save fonnesbeck/5416434 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"metadata": {
"name": "Bayesian Survival Models (Part 2)"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Bayesian Survival Models (continued)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Imputation of missing values\n",
"\n",
"In the previous Titanic example, there were several passengers that did not have their ages recorded. The simplest solution is to discard these records from the analysis, which we did. However, this so-called \"complete-case\" analysis is not optimal; it discards the partial information contained on those records, and may lead to bias, depending on the nature of the missingness. \n",
"\n",
"Instead, we can impute these missing values by treating them as unknown quantities, just as we would with a variable. All we need is a model for age, and to include this as part of the overall model. This is easily done in a Bayesian context, and easily implemented in PyMC."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"titanic = pd.read_csv(\"http://biostat.mc.vanderbilt.edu/wiki/pub/Main/DataSets/titanic3.csv\")"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 1
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here is the distribution of known ages. Although this distribution looks slighlty bimodal, for simplicity we will use a negative binomial distribution to model age, and use this to impute the missing values. Note that this implicitly assumes a missing completely at random (MCAR) scenario, which may or may not be true here."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"titanic.age.dropna().hist(bins=80)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "pyout",
"prompt_number": 2,
"text": [
"<matplotlib.axes.AxesSubplot at 0x1086fd910>"
]
},
{
"output_type": "display_data",
"png": "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\nTkRkiP8DwTrZrTr+XCwAAAAASUVORK5CYII=\n",
"text": [
"<matplotlib.figure.Figure at 0x10b073c50>"
]
}
],
"prompt_number": 2
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"PyMC supports imputation via [*masked arrays* in Numpy](http://docs.scipy.org/doc/numpy/reference/maskedarray.generic.html). A Numpy `masked_array` simply combines a standard array with a binary mask that hides invalid (here, missing) values. Specifically, when an element of the mask is `True`, the corresponding element of the array is said to be masked (invalid)."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"foo = [3, 5, None, 17, -3]\n",
"foo_masked = np.ma.masked_equal(foo, None)\n",
"foo_masked"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "pyout",
"prompt_number": 3,
"text": [
"masked_array(data = [3 5 -- 17 -3],\n",
" mask = [False False True False False],\n",
" fill_value = ?)\n"
]
}
],
"prompt_number": 3
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"A PyMC data stochastic node that is passed a `masked_array` as treats the unmasked values as regular data, but then turns the masked values into Stochastic nodes, to be estimated with the rest of the model."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from pymc import Dirichlet, Categorical, Normal, deterministic, invlogit, Bernoulli, MCMC, Matplot, Gamma, NegativeBinomial\n",
"\n",
"def titanic_model2(dataset):\n",
" \n",
" pclass, survived, sex, age, parch, sibsp = [np.array(dataset[col]) for \n",
" col in ['pclass', 'survived', 'sex', 'age', 'parch', 'sibsp']]\n",
" \n",
" female = sex=='female'\n",
" \n",
" # Imputation of age\n",
" age_masked = np.ma.masked_equal(dataset.age.fillna(20.2221).tolist(), 20.2221)\n",
" # Negative binomial parameters\n",
" mu = Gamma('mu', 1, 0.01, value=25)\n",
" alpha = Gamma('alpha', 1, 0.01, value=10)\n",
" # Imputation distribution\n",
" age = NegativeBinomial('age', mu=mu, alpha=alpha, value=age_masked, observed=True)\n",
" \n",
" k = 8\n",
" \n",
" betas = Normal('betas', np.zeros(k), np.ones(k)*0.001, value=[0]*k)\n",
" \n",
" @deterministic\n",
" def p(b=betas, age=age):\n",
" return invlogit(b[0] + b[1]*pclass + b[2]*female + b[3]*age + b[4]*parch + b[5]*sibsp +\n",
" b[6]*female*pclass + b[7]*age*pclass)\n",
" \n",
" y = Bernoulli('y', p, value=survived, observed=True)\n",
" \n",
" return locals()\n",
"\n"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 13
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"M_titanic_imp = MCMC(titanic_model2(titanic))"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 14
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"M_titanic_imp.sample(15000, 10000)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [****************100%******************] 15000 of 15000 complete"
]
}
],
"prompt_number": 15
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"Matplot.summary_plot([M_titanic_imp.betas])"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"png": "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\nSUVORK5CYII=\n",
"text": [
"<matplotlib.figure.Figure at 0x10ccb7350>"
]
}
],
"prompt_number": 16
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Below is the posterior distribution of one of the missing ages:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"_ = hist(M_titanic_imp.age.trace()[0], bins=80)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"png": "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\ntbW1WZZlWR0dHdbTTz9tHT9+3PVMlmVZO3futDZt2mS98cYblmW5f/5WrlxpNTc3X3af25ksy7LK\ny8ut3bt3W5ZlWZ2dnVZLS0tS5LKsi32wfPly6++//3Y1U3Nzs7Vy5UqrtbXV6urqsl5//XWrpqbG\n1UwtLS3WE088YTU3N1utra3W888/b504cSLuTP22zJIsV4kGAgFlZGRcdl91dbVmzZolSQoGg/rl\nl18GNJPf79e4ceMkSV6vV7m5uTpz5ozruW644QZJF9/hdXd3Ky0tzfVMp0+fVk1NjYqKinruczuT\nJFl9/tTkdqYLFy5o//79PcdpyJAhGj58uOu5Lvntt9+UlZWlMWPGuJrJ4/FIuni8Ojo61N7eroyM\nDFczHThwQBMmTFBmZqbS09M1efJk/fTTT3Fn6rdllnivEh1ITU1N8vv9kiSfz6empibXspw8eVL1\n9fXKz893PVd3d7eee+451dfXq7i4WGPGjHE905YtW7RkyRK1trb23Od2ppSUFL3yyitKSUnR/fff\nrzlz5rieqbGxUV6vVxUVFTpy5Ijy8/NVXFzseq5L9uzZo5kzZ0py9/x5PB4tW7ZMJSUlSktL09y5\nc5WXl+dqpkAgoA8++ECNjY1KS0tTKBTS5MmT487Ur2vmg0FKSopr+25ra9PGjRu1dOnSf6yFuZEr\nNTVV69evV2Njo0pLS3Xrrbe6mmnv3r3y+XwaP368fv/99ytu48ZxevXVVzVy5EgdO3ZMpaWluvnm\nm13P1NXVpcOHD2v+/Plavny53nvvPf3www+u55Kkzs5OVVdX65FHHvnHYwOdKRwO6/3339eGDRuU\nkZGht99+W3v37nU1U3p6upYuXarNmzfrwoULmjRpklJTL180iSVTv5V5PFeJDjSfz6dz587J7/fr\n7Nmz8vl8A56hs7NTZWVluueeezRjxoykySVJY8eO1fTp01VbW+tqpoMHD6q6ulqhUEiRSEStra16\n5513XD9OI0eOlCRlZ2frzjvvVF1dneuZRo8erczMzJ6L92bOnKlvv/1Wfr/f9ddUTU2NJkyYIK/X\nK8nd13ldXZ3y8vKUlZUlSSosLNQff/zh+vkrKCjoOXcff/yxRo8eHXemflszT+arRAsKClRVVSVJ\n+uabb3rKdKBYlqV3331X2dnZmjdvXlLkCofDamlpkSQ1NzerpqZGOTk5rmZavHixKisrVVFRoaee\nekqTJ0/W6tWrXc3U3t7es+QTDoeT4jhJF/8Ok5WVpUOHDqm7u7vnv+p33HGHq7kk6fvvv+9ZYpHc\nfZ1PnDhRhw8f1vnz5xWJRFRTU6MpU6a4fv4uLaGcOnVKP//8s+6+++64M/XrRUPJcJXopk2bVFtb\nq+bmZvl8Pi1atEh33XWXqx9D+uOPP7Ru3Trl5OT0/Pfp4Ycf1q233uparr/++ksVFRXq7u6W3+9X\nYWGhioqKXP/I1iW1tbXauXOn6x9NbGxs1Pr16yVJI0aMUGFhoe67776kOE7Hjx9XRUWFwuGwcnJy\ntHr1almW5WqutrY2lZSUqLy8XMOGDZPk/keDq6qq9PXXX6ujo0PTpk3TwoUL1d7e7mqmdevWqaWl\nRenp6SouLlZubm7cx4krQAHAAFwBCgAGoMwBwACUOQAYgDIHAANQ5gBgAMocAAzwv3Z9XQa7YSQd\nAAAAAElFTkSuQmCC\n",
"text": [
"<matplotlib.figure.Figure at 0x10cc77450>"
]
}
],
"prompt_number": 17
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Parametric survival models\n",
"\n",
"In the Titanic example, we were able to use a simple binomial model for the survival rate because the disaster was a discrete event. That is, the outcomes of each passenger on the passenger list was known shortly after the event occurred. In many biomedical situations, however, the study endpoint might not be reached for all subjects by the time the study is completed. The fate of these individuals, which we refer to as *right censored* is unknown to us, but treating them as known will bias estimates of the survival rate and of any treatment we may be studying.\n",
"\n",
"When we are dealing with censored events, survival analyses typically shift to analyzing *time to events* instead of the occurrence or non-occurence of events."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Some definitions\n",
"\n",
"**Density function** describes the distribution of times to events:\n",
" \n",
"$$f(t) = Pr(T=t)$$\n",
"\n",
"(or continuous equivalent)\n",
"\n",
"**Survival function** describes the probability of surviving to time $t$ or beyond:\n",
" \n",
"$$S(t) = Pr(T \\ge t)$$\n",
"\n",
"**Hazard function** describes the instantaneous failure rate, that is, the probability of an event at time $t$ given that it has not happend prior to $t$:\n",
" \n",
"$$\\lambda(t) = \\frac{f(t)}{S(t)}$$\n",
"\n",
"**Cumulative hazard function** integrates the hazard from time zero until $t$:\n",
"\n",
"$$\\Lambda(t) = \\int_0^t \\lambda(u) du$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Exponential model\n",
"\n",
"A simple parametric approach to modeling failure times is the exponential model. This model assumes that failure times are distributed identically and independently as exponential random variables:\n",
" \n",
"$$f(t_i|\\lambda) = \\lambda \\exp(-\\lambda t_i)$$\n",
"\n",
"by definition, this implies that the survival function is:\n",
"\n",
"$$S(t_i|\\lambda) = \\exp(-\\lambda t_i)$$\n",
"\n",
"Accounting for censoring, from this we can write the likelihood function for $\\lambda$ as:\n",
"\n",
"$$L(\\lambda|\\mathbf{t},\\mathbf{\\nu}) = \\prod_{i=1}^n f(t_i|\\lambda)^{\\nu_i} S(t_i|\\lambda)^{1-\\nu_i} = \\lambda^{\\sum_i \\nu_i} \\exp\\left[-\\lambda \\sum_i t_i\\right]$$\n",
"\n",
"We typically wish to model $\\lambda$ as a function of one or more covariates, such as a treatment.\n",
"\n",
"$$\\lambda_i = \\phi(x_i^{\\prime} \\mathbf{\\beta})$$ \n",
"\n",
"Substituting and re-arranging gives:\n",
"\n",
"$$L(\\lambda|\\mathbf{t},\\mathbf{\\nu}, \\mathbf{\\beta}) = \\exp\\left[\\sum_i \\nu_i x_i^{\\prime} \\mathbf{\\beta}\\right] \\exp\\left[-\\sum_i t_i \\exp(x_i^{\\prime} \\mathbf{\\beta})\\right]$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Exponential survival model for melanoma data, taken from [Bayesian Data Analysis (Ibrahim et al 2000)](http://bit.ly/ZXiVs1) Example 2.1. This is from the E1684 melanoma clinical trial comparing the effect of high-dose interferon to a control arm."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%loadpy https://raw.github.com/pymc-devs/pymc/master/pymc/examples/melanoma_data.py"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 19
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from numpy import reshape\n",
"\n",
"melanoma_data = reshape([1.57808, 0.00000, 2, 1.27, 35.9945, 1, 1.48219,\n",
"0.00000, 2, 0.76, 41.9014, 1, 0.0, 7.33425, 1, 35.00, 70.2164, 2, 2.23288,\n",
"0.00000, 1, 1.70, 33.7096, 1, 0.0, 9.38356, 2, 1.00, 47.9726, 1, 3.27671,\n",
"0.00000, 1, 11.00, 31.8219, 2, 0.0, 9.64384, 1, 6.50, 32.9479, 1, 1.66575,\n",
"0.00000, 2, 3.62, 35.9205, 1, 0.94247, 0.00000, 1, 8.50, 40.5068, 2,\n",
"1.68767, 0.00000, 2, 4.20, 57.0384, 1, 2.34247, 0.00000, 2, 5.00, 62.0630, 1,\n",
"0.89863, 0.00000, 1, 2.25, 56.5342, 1, 0.0, 9.03288, 2, 2.30, 22.9945, 2,\n",
"0.0, 9.63014, 2, 10.00, 18.4712, 1, 0.52603, 0.00000, 1, 3.35, 41.2521, 1,\n",
"1.82192, 0.00000, 2, 3.80, 29.5178, 1, 0.93425, 0.00000, 1, 0.75, 59.0493, 2,\n",
"0.0, 8.98630, 2, 0.50, 32.2877, 1, 3.35068, 0.00000, 1, 0.46, 26.4822, 1,\n",
"8.67397, 0.00000, 1, 2.55, 55.0411, 1, 0.41096, 0.00000, 2, 1.95, 55.1233, 2,\n",
"2.78630, 0.00000, 1, 2.50, 22.4055, 2, 2.56438, 0.00000, 1, 2.10, 50.8466, 1,\n",
"0.0, 8.75342, 2, 9.00, 56.0274, 1, 0.56986, 0.00000, 2, 5.00, 55.4767, 1,\n",
"0.0, 8.40000, 1, 0.55, 41.2411, 1, 0.0, 7.25205, 1, 12.50, 32.7425, 1,\n",
"4.38630, 0.00000, 2, 1.16, 45.3479, 1, 0.0, 8.36712, 2, 4.25, 42.8438, 2,\n",
"0.0, 8.99178, 2, 15.00, 51.1068, 1, 0.86575, 0.00000, 2, 0.72, 30.1808, 1,\n",
"0.0, 4.76986, 1, 1.50, 58.7014, 2, 1.15616, 0.00000, 2, 6.50, 51.5397, 1,\n",
"0.0, 7.28767, 1, 2.75, 27.1973, 1, 3.13151, 0.00000, 1, 3.83, 67.6740, 1,\n",
"0.0, 8.55068, 2, 1.80, 64.4274, 2, 0.0, 8.45753, 2, 4.75, 35.4411, 1,\n",
"4.59452, 0.00000, 1, 5.80, 35.9452, 1, 2.88219, 0.00000, 2, 0.51, 48.1370, 1,\n",
"0.89589, 0.00000, 1, 3.25, 58.6082, 1, 1.76164, 0.00000, 2, 0.90, 40.0137, 2,\n",
"0.0, 7.81370, 1, 3.45, 26.0055, 1, 0.0, 8.33425, 2, 1.38, 36.9616, 1,\n",
"2.62192, 0.00000, 1, 5.28, 25.9068, 2, 0.16164, 0.00000, 2, 3.00, 63.8055, 1,\n",
"0.0, 8.24658, 1, 2.20, 29.6986, 2, 1.52603, 0.00000, 1, 7.00, 61.6384, 1,\n",
"5.30959, 0.00000, 1, 4.00, 49.9918, 1, 0.87123, 0.00000, 2, 2.36, 37.1068, 1,\n",
"0.41644, 0.00000, 1, 1.06, 53.4658, 2, 4.24110, 0.00000, 1, 6.50, 57.7425, 2,\n",
"0.13699, 0.00000, 1, 10.00, 29.1479, 1, 7.07671, 0.00000, 2, 1.20, 59.2466,\n",
"1, 0.13151, 0.00000, 2, 15.00, 61.3507, 2, 0.0, 8.02740, 1, 0.49, 33.9205,\n",
"2, 0.0, 6.16164, 2, 1.60, 43.1918, 1, 1.29863, 0.00000, 2, 11.50, 34.1890,\n",
"2, 1.29041, 0.00000, 2, 1.90, 58.3808, 2, 0.0, 7.99726, 1, 4.80, 21.9479,\n",
"2, 0.0, 8.34795, 1, 0.55, 35.1151, 1, 0.0, 7.30137, 2, 6.50, 31.6493, 1,\n",
"2.32877, 0.00000, 2, 12.00, 56.1890, 1, 0.56438, 0.00000, 1, 7.00, 60.7123,\n",
"1, 5.62740, 0.00000, 2, 6.50, 58.8329, 2, 1.23014, 0.00000, 1, 1.60,\n",
"44.4849, 2, 0.0, 7.94521, 1, 1.15, 51.1315, 2, 5.06301, 0.00000, 1, 2.65,\n",
"34.2164, 1, 3.27671, 0.00000, 2, 2.00, 35.2301, 1, 0.0, 0.60822, 2, 2.50,\n",
"32.7425, 2, 0.65753, 0.00000, 1, 4.38, 38.0986, 2, 0.84110, 0.00000, 2,\n",
"2.93, 45.7699, 1, 0.0, 8.40000, 2, 3.00, 44.2000, 1, 0.18356, 0.00000, 1,\n",
"2.50, 71.3260, 1, 2.62466, 0.00000, 2, 2.30, 59.0795, 1, 0.0, 7.96438, 2,\n",
"2.00, 35.3836, 2, 0.0, 7.77808, 1, 0.75, 58.0438, 2, 0.22192, 0.00000, 1,\n",
"5.00, 43.2164, 1, 2.33973, 0.00000, 1, 10.00, 60.4932, 1, 0.52329, 0.00000,\n",
"1, 0.87, 32.4795, 2, 0.0, 8.04110, 2, 1.33, 60.2986, 1, 0.0, 7.83288, 1,\n",
"5.60, 47.1342, 1, 0.64110, 0.00000, 1, 2.55, 42.3233, 1, 0.38356, 0.00000,\n",
"1, 6.50, 54.4164, 1, 0.0, 7.82192, 2, 1.20, 51.4219, 1, 0.51781, 0.00000,\n",
"2, 3.00, 46.5973, 1, 0.0, 8.09863, 2, 2.55, 58.3562, 1, 0.0, 8.16712, 2,\n",
"1.61, 25.6712, 2, 4.42740, 0.00000, 1, 1.40, 29.1726, 1, 0.88493, 0.00000,\n",
"1, 2.25, 18.6795, 1, 2.78356, 0.00000, 1, 4.50, 60.9671, 2, 2.64658,\n",
"0.00000, 2, 0.81, 63.8849, 2, 0.0, 8.21370, 2, 1.30, 37.9808, 2, 0.0,\n",
"7.41918, 2, 3.20, 32.3507, 2, 0.99726, 0.00000, 1, 1.29, 42.9589, 1,\n",
"5.88493, 0.00000, 2, 4.40, 40.9562, 1, 0.41644, 0.00000, 1, 6.00, 61.9753, 1,\n",
"3.53699, 0.00000, 1, 3.93, 55.3315, 2, 0.0, 7.56164, 1, 0.60, 36.0767, 1,\n",
"0.0, 7.53151, 1, 0.75, 50.6795, 1, 0.27671, 0.00000, 1, 0.73, 66.6986, 1,\n",
"0.76986, 0.00000, 2, 0.20, 29.3479, 2, 0.0, 7.62192, 2, 3.88, 33.1863, 1,\n",
"0.0, 7.79726, 1, 2.48, 48.6356, 2, 0.64110, 0.00000, 1, 2.50, 29.4877, 1,\n",
"1.14521, 0.00000, 2, 10.00, 42.6685, 1, 2.01644, 0.00000, 1, 16.00, 24.4055,\n",
"2, 2.84384, 0.00000, 1, 4.00, 40.3890, 1, 0.0, 7.00000, 2, 1.35, 45.4192,\n",
"1, 1.27397, 0.00000, 2, 3.00, 65.3945, 1, 0.0, 7.09589, 1, 10.72, 47.5753,\n",
"2, 2.04110, 0.00000, 1, 1.50, 58.4438, 2, 0.83562, 0.00000, 1, 3.50,\n",
"59.2767, 2, 0.92329, 0.00000, 1, 1.10, 30.2630, 2, 0.07397, 0.00000, 1,\n",
"1.00, 40.7370, 1, 0.0, 7.30685, 2, 5.10, 44.7452, 1, 2.07671, 0.00000, 2,\n",
"0.50, 67.8329, 1, 0.0, 7.70959, 2, 4.03, 27.7452, 1, 0.0, 6.15890, 1,\n",
"1.80, 25.9260, 2, 0.0, 6.89315, 2, 3.50, 31.2740, 1, 3.30685, 0.00000, 1,\n",
"1.15, 58.8822, 2, 0.36164, 0.00000, 1, 1.75, 57.0575, 1, 1.97808, 0.00000,\n",
"2, 2.50, 59.8137, 1, 1.23836, 0.00000, 2, 2.10, 77.5151, 1, 0.10685,\n",
"0.00000, 1, 1.35, 43.4219, 1, 0.0, 7.63836, 1, 4.50, 52.2082, 1, 2.06301,\n",
"0.00000, 1, 0.50, 36.3205, 2, 0.0, 7.42466, 2, 2.30, 25.9781, 1, 0.50959,\n",
"0.00000, 1, 4.00, 49.4411, 1, 0.65753, 0.00000, 1, 5.40, 57.9589, 1, 0.0,\n",
"6.93151, 1, 6.00, 65.5644, 1, 0.0, 7.23288, 2, 5.10, 72.3425, 1, 6.01096,\n",
"0.00000, 1, 4.50, 68.8548, 1, 0.33699, 0.00000, 1, 1.45, 50.4438, 2, 0.0,\n",
"6.47123, 2, 3.38, 48.2877, 1, 0.94795, 0.00000, 1, 3.00, 46.9479, 2,\n",
"2.91781, 0.00000, 2, 1.20, 33.6000, 2, 1.59726, 0.00000, 2, 7.30, 51.1644, 2,\n",
"0.84932, 0.00000, 2, 1.67, 47.7836, 1, 1.38356, 0.00000, 1, 4.00, 53.8795, 2,\n",
"3.81644, 0.00000, 2, 2.10, 38.7068, 2, 0.0, 7.06849, 1, 10.00, 69.3205, 2,\n",
"0.0, 7.04110, 2, 3.50, 66.0219, 1, 1.00274, 0.00000, 2, 1.10, 36.0329, 2,\n",
"0.0, 6.34795, 2, 0.40, 63.4603, 1, 1.18082, 0.00000, 1, 0.70, 48.8986, 2,\n",
"0.97534, 0.00000, 1, 5.00, 45.0575, 1, 2.16712, 0.00000, 1, 0.85, 57.6712, 2,\n",
"0.0, 6.85479, 1, 4.80, 45.2000, 1, 1.38356, 0.00000, 1, 1.20, 49.0438, 1,\n",
"1.71507, 0.00000, 2, 1.30, 51.4630, 1, 0.79452, 0.00000, 2, 5.80, 34.5479, 1,\n",
"0.0, 6.86301, 2, 6.00, 47.6438, 2, 0.0, 6.50411, 1, 3.00, 38.7233, 2,\n",
"0.42466, 0.00000, 2, 1.88, 54.0658, 1, 0.98630, 0.00000, 1, 2.60, 45.7397, 1,\n",
"0.0, 6.13699, 2, 2.70, 47.2822, 2, 3.80000, 0.00000, 2, 6.00, 62.6411, 1,\n",
"0.0, 6.48493, 1, 4.00, 62.0192, 2, 0.0, 6.96438, 2, 1.71, 41.0904, 2, 0.0,\n",
"6.78082, 2, 1.60, 50.2712, 2, 0.56164, 0.00000, 2, 1.50, 49.5288, 2,\n",
"2.67123, 0.00000, 1, 3.00, 70.8192, 1, 1.56712, 0.00000, 2, 0.90, 59.0712, 1,\n",
"2.07397, 0.00000, 2, 4.00, 53.9041, 1, 0.33973, 0.00000, 1, 2.80, 44.7342, 1,\n",
"3.37808, 0.00000, 2, 0.80, 22.1397, 1, 3.15068, 0.00000, 1, 0.70, 72.8575, 1,\n",
"0.0, 6.81096, 2, 0.90, 61.4521, 1, 3.20822, 0.00000, 2, 12.00, 61.2904, 1,\n",
"0.62740, 0.00000, 1, 5.78, 34.7507, 1, 1.64384, 0.00000, 1, 0.60, 67.4164, 2,\n",
"1.40822, 0.00000, 1, 12.00, 53.2493, 1, 0.0, 6.06575, 1, 4.00, 49.0082, 1,\n",
"1.66301, 0.00000, 2, 0.45, 56.7699, 1, 1.36986, 0.00000, 2, 1.30, 34.0247, 2,\n",
"5.46849, 0.00000, 1, 0.81, 34.3014, 2, 0.42740, 0.00000, 1, 3.20, 45.0712, 2,\n",
"1.13973, 0.00000, 2, 4.00, 54.7671, 2, 1.73699, 0.00000, 2, 4.77, 42.8548, 2,\n",
"0.0, 5.54521, 2, 2.20, 36.6301, 2, 0.85205, 0.00000, 1, 3.00, 43.2466, 1,\n",
"0.43014, 0.00000, 1, 3.00, 53.3562, 1, 1.20822, 0.00000, 2, 0.80, 35.3534, 1,\n",
"4.36164, 0.00000, 1, 4.00, 36.5233, 1, 0.52877, 0.00000, 2, 5.00, 52.7863, 1,\n",
"0.0, 6.51507, 1, 2.00, 24.4329, 2, 2.89863, 0.00000, 2, 3.85, 58.7178, 1,\n",
"0.0, 6.20274, 2, 0.76, 45.5479, 1, 1.21644, 0.00000, 2, 0.75, 43.3014, 2,\n",
"0.0, 6.00000, 2, 6.50, 51.4055, 2, 0.0, 6.25479, 1, 0.85, 38.9671, 2, 0.0,\n",
"6.49863, 1, 4.30, 68.2658, 1, 1.13699, 0.00000, 2, 2.10, 59.4493, 2,\n",
"1.69589, 0.00000, 1, 1.50, 30.0192, 1, 0.0, 6.41096, 2, 2.00, 22.1562, 2,\n",
"0.0, 6.02192, 1, 11.00, 54.7671, 1, 3.04932, 0.00000, 2, 4.88, 45.0384, 1,\n",
"0.0, 5.62740, 2, 5.20, 39.7589, 1, 0.72603, 0.00000, 1, 3.04, 41.3808, 1,\n",
"0.73425, 0.00000, 2, 8.00, 34.9671, 1, 1.47945, 0.00000, 2, 1.60, 46.3479, 1,\n",
"0.37808, 0.00000, 2, 1.10, 29.9233, 2, 0.0, 5.75890, 2, 3.00, 32.8740, 1,\n",
"1.48219, 0.00000, 2, 10.00, 39.5397, 2, 0.0, 5.88493, 1, 1.95, 55.4822, 1,\n",
"0.0, 1.80274, 1, 2.00, 32.3562, 1, 1.40548, 0.00000, 2, 3.70, 41.8027, 2,\n",
"0.0, 4.74795, 1, 2.90, 35.3452, 2, 0.0, 5.24658, 1, 1.80, 50.4795, 1,\n",
"0.29041, 0.00000, 1, 6.00, 61.3507, 2, 0.0, 5.83836, 1, 1.50, 67.3562, 1,\n",
"0.0, 5.32055, 2, 1.75, 53.8548, 2, 5.16712, 0.00000, 2, 5.00, 78.7315, 2,\n",
"0.0, 5.59178, 2, 0.63, 62.7233, 1, 0.0, 5.77808, 1, 1.15, 65.1507, 1,\n",
"0.53425, 0.00000, 2, 1.50, 34.8274, 1, 0.0, 2.22466, 1, 0.98, 33.8466, 2,\n",
"3.59726, 0.00000, 1, 5.00, 67.8822, 1, 0.0, 5.32329, 1, 5.50, 66.0712, 2,\n",
"1.78630, 0.00000, 2, 1.00, 55.0658, 2, 0.70411, 0.00000, 2, 10.00, 50.5123,\n",
"1, 0.0, 4.94795, 2, 5.00, 42.4055, 2, 0.0, 5.45479, 2, 3.75, 58.1068, 2,\n",
"4.32877, 0.00000, 1, 10.00, 26.0137, 1, 1.16164, 0.00000, 2, 3.00, 54.4685,\n",
"1, 0.0, 5.20274, 2, 8.00, 54.0630, 2, 0.0, 4.40822, 1, 1.64, 34.5589, 1,\n",
"1.41096, 0.00000, 1, 4.95, 58.5068, 1, 0.0, 4.92877, 2, 1.45, 63.9370, 1,\n",
"0.0, 5.42192, 2, 12.00, 49.8274, 2, 0.98904, 0.00000, 1, 2.05, 50.5562, 1,\n",
"0.36438, 0.00000, 1, 3.60, 40.4795, 2, 0.0, 4.38082, 1, 8.30, 61.7479, 2,\n",
"0.77260, 0.00000, 2, 0.45, 41.6712, 1, 4.90959, 0.00000, 2, 3.00, 25.5096, 1,\n",
"1.26849, 0.00000, 1, 4.40, 61.2000, 1, 0.58082, 0.00000, 2, 1.10, 53.1260, 1,\n",
"0.0, 4.95616, 1, 1.05, 40.4658, 1, 0.0, 5.12329, 1, 1.71, 60.3068, 1, 0.0,\n",
"4.74795, 1, 6.30, 48.7425, 2, 0.0, 4.90685, 2, 0.50, 46.7562, 2, 1.41918,\n",
"0.00000, 1, 5.10, 34.8932, 2, 0.44110, 0.00000, 1, 6.00, 33.3096, 1, 0.0,\n",
"4.29863, 2, 1.50, 35.7589, 1, 0.0, 4.63836, 2, 0.36, 49.8575, 1, 0.0,\n",
"4.81370, 1, 3.00, 57.3726, 2, 4.50137, 0.00000, 2, 1.24, 29.7726, 2,\n",
"3.92329, 0.00000, 2, 0.70, 51.8822, 2, 0.0, 4.86027, 2, 0.80, 65.3123, 2,\n",
"0.52603, 0.00000, 1, 1.00, 52.0658, 2, 2.10685, 0.00000, 2, 3.38, 60.9534, 2,\n",
"0.0, 4.24384, 1, 1.52, 32.6055, 2, 3.39178, 0.00000, 1, 2.20, 51.5123, 2,\n",
"0.0, 4.36164, 2, 2.10, 48.6548, 1, 0.0, 4.81918, 2, 1.40, 43.8438, 2],\n",
"(255, 6))\n",
"\n",
"# Censoring indicator\n",
"censored = (melanoma_data[:,0] == 0).astype(int)\n",
"# Time\n",
"t = sum(melanoma_data[:,0:2],1)\n",
"# Treatment\n",
"treat = melanoma_data[:,2].astype(int)-1\n",
"# Breslow scale\n",
"breslow = melanoma_data[:,3]\n",
"# Age and sex\n",
"age = melanoma_data[:,4]\n",
"sex = melanoma_data[:,5].astype(int)-1"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 20
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from pymc import Lambda, observed\n",
"\n",
"def exp_survival_model():\n",
"\n",
" # Convert censoring indicators to indicators for failure event\n",
" failure = (censored==0).astype(int)\n",
" \n",
" # Intercept for survival rate\n",
" beta0 = Normal('beta0', mu=0.0, tau=0.0001, value=0.0)\n",
" # Treatment effect\n",
" beta1 = Normal('beta1', mu=0.0, tau=0.0001, value=0.0)\n",
"\n",
" # Survival rates\n",
" lam = Lambda('lam', lambda b0=beta0, b1=beta1, t=treat: exp(b0 + b1*t))\n",
"\n",
" @observed\n",
" def survival(value=t, lam=lam, f=failure):\n",
" \"\"\"Exponential survival likelihood, accounting for censoring\"\"\"\n",
" return sum(f*log(lam) - lam*value)\n",
" \n",
" return locals()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 21
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"E = MCMC(exp_survival_model())\n",
"E.sample(10000, 5000)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [****************100%******************] 10000 of 10000 complete"
]
}
],
"prompt_number": 22
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"E.beta1.summary()"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"beta1:\n",
" \n",
"\tMean SD MC Error 95% HPD interval\n",
"\t------------------------------------------------------------------\n",
"\t-0.274 0.162 0.009 [-0.633 -0.003]\n",
"\t\n",
"\t\n",
"\tPosterior quantiles:\n",
"\t\n",
"\t2.5 25 50 75 97.5\n",
"\t |---------------|===============|===============|---------------|\n",
"\t-0.603 -0.377 -0.273 -0.16 0.043\n",
"\t\n"
]
}
],
"prompt_number": 23
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"Matplot.plot(E.beta1)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Plotting beta1\n"
]
},
{
"output_type": "display_data",
"png": "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\n",
"text": [
"<matplotlib.figure.Figure at 0x11091e6d0>"
]
}
],
"prompt_number": 24
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Weibull model\n",
"\n",
"[Dellaportas and Smith (1993)](http://www.jstor.org/stable/10.2307/2986324) analyse data from [Grieve (1987)](http://www.jstor.org/stable/2348525) on photocarcinogenicity in four groups (irradiated control, vehicle control, test substance, positive control), each containing 20 mice, who have recorded a survival time and whether they died or were censored at that time. We will use a Weibull distribution to model the survival times:\n",
" \n",
"$$f(x \\mid \\alpha, \\beta) = \\frac{\\alpha x^{\\alpha - 1}\\exp(-(\\frac{x}{\\beta})^{\\alpha})}{\\beta^\\alpha}$$\n",
"\n",
"The baseline hazard function for this model is:\n",
" \n",
"$$\\lambda_0(t) = \\alpha t^{\\alpha-1}$$\n",
"\n",
"if we set $\\beta_i = \\exp(-\\beta^{\\prime}z_i)$ then we have:\n",
" \n",
"$$t_i \\sim \\text{Weibull}(\\alpha, \\beta_i)$$\n",
"\n",
"In this model, we account for censored observations by using a truncated Weibull, with the censoring time as the lower bound."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# treatment group assignments\n",
"group = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \n",
"1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, \n",
"2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, \n",
"3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3)\n",
"\n",
"# censoring\n",
"is_censored = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, \n",
"0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, \n",
"0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, \n",
"0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0)\n",
"\n",
"# censoring time\n",
"last_t = (40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, \n",
"40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, \n",
"40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 10, 40, 40, 40, 40, \n",
"40, 40, 40, 40, 40, 24, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, \n",
"40, 40, 40, 40, 20, 40, 40, 40, 40, 29, 10, 40, 40, 40, 40, 40, \n",
"40)\n",
"\n",
"# number of treatment groups\n",
"M = 4\n",
"\n",
"# number of individuals\n",
"N = 80\n",
"\n",
"# failure time for each mouse\n",
"t = (12, 17, 21, 25, 11, 26, 27, 30, 13, 12, 21, 20, 23, 25, 23, \n",
"29, 35, 50, 31, 36, 32, 27, 23, 12, 18, 50, 50, 38, 29, 30, 50, \n",
"32, 50, 50, 50, 50, 25, 30, 37, 27, 22, 26, 50, 28, 19, 15, 12, \n",
"35, 35, 10, 22, 18, 50, 12, 50, 50, 31, 24, 37, 29, 27, 18, 22, \n",
"13, 18, 29, 28, 50, 16, 22, 26, 19, 50, 50, 17, 28, 26, 12, 17, \n",
"26)\n",
"t = np.array(t)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 25
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from pymc import Weibull, potential, Gamma\n",
"\n",
"def mice_model():\n",
" \n",
" beta = Normal(\"beta\", 0, 0.0001, value=np.ones(M)*-10)\n",
" alpha = Gamma(\"alpha\", 1.0, 0.0001, value=4)\n",
" \n",
" theta = Lambda(\"theta\", lambda b=beta: 1./np.exp(b[np.array(group)]))\n",
" median_survival = Lambda(\"median_survival\", lambda b=beta, a=alpha: (np.log(2)*np.exp(-b))**(1/a))\n",
" veh_control = Lambda(\"veh_control\", lambda b=beta: b[1]-b[0])\n",
" test_sub = Lambda(\"test_sub\", lambda b=beta: b[2]-b[0])\n",
" pos_control = Lambda(\"pos_control\", lambda b=beta: b[3]-b[0])\n",
" \n",
" t_masked = np.ma.masked_equal(t, 50)\n",
" \n",
" time = Weibull(\"time\", alpha, theta, value=t_masked, observed=True)\n",
" \n",
" @potential\n",
" def censor(time=time):\n",
" if np.any((time < last_t)[t_masked.mask]):\n",
" return -np.inf\n",
" return 0\n",
" \n",
" return locals()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 26
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"MM = MCMC(mice_model())"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 28
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"MM.sample(20000, 10000)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [****************100%******************] 20000 of 20000 complete"
]
}
],
"prompt_number": 29
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"Matplot.plot(MM.median_survival)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Plotting median_survival_0\n",
"Plotting"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
" median_survival_1\n",
"Plotting"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
" median_survival_2\n",
"Plotting"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
" median_survival_3\n"
]
},
{
"output_type": "display_data",
"png": "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\nluir3a7uUu2/9u4V3aW/areru/QXgJOTE/PmzQO6T3+Bfru6S3+NGjVKbweUruivRqfzqiuWV8vN\nza2TVG5vb09ubm6jxwiCIAiCINxqmqxYnpmZSXZ2Nvb29hw/fpwXXnhB7xhfX18iIiIIDAwkISEB\nCwuLJrP1u3L+UhAEQRAEoT00mhMFuqz8b775Bo1Gw+TJk5kxYwb79+8Hbg7p/fDDD0RHR2Nqasqz\nzz4rbwkjCIIgCIJwq2oyiBIEQRAEQRDq6tiN3wRBEARBEG5RIogSBEEQBEFoBRFECYIgCIIgtEK7\nbkBc0++//862bdu4cuUK77zzjl7xzfDwcA4dOoRSqWThwoUMHToUgIyMDD777DMqKyvx9fWtU/uk\np9q2bRsHDx7E2toa0NV0GTlyJNBwX9xKYmNj2bRpk7w4Yfr06V3dpA73/PPPY2ZmhoGBAUqlknfe\neYfy8nLWrVtHVlYWvXv35m9/+xumpqZd3dQ2W79+PdHR0VhbW/P+++8DNHqtt8NrXhCE24TUQTIy\nMqQrV65Ib775ppSUlCTfnp6eLi1btkyqqqqSsrKypMWLF0tarVaSJEl69dVXpUuXLkmSJElvv/22\ndPbs2Y5qXqfaunWrtGfPnjq319cXGo2mC1rYcTQajbR48WIpKytLqqqqkpYtWyalp6d3dbM63HPP\nPScVFxfr3fbdd99JO3fulCRJkn755Rfp+++/74qmtbvY2FgpOTlZWrp0qXxbQ9d6O7zmBUG4fXTY\ndJ6Liwt9+/atc3tUVBSBgYEYGhrSq1cvnJ2duXTpEvn5+ahUKgYPHgzo9sSJiorqqOZ1OqmeRZD1\n9UViYmIXtK7jJCYm4uzsTK9evTA0NCQwMLDL91vqLLV/5qdPn2bChAkATJw48ZZ5fXt5eWFhYaF3\nW0PXeju85gVBuH102HReQ/Lz8/Hw8JC/d3BwIC8vD0NDQ71K5/b29uTl5XV28zrM3r17OXToEEOG\nDOHRRx/FwsKiwb64leTl5eHo6Ch/b29vf1u8aSoUCt566y0UCgVBQUFMmTKFwsJCuRCtjY0NhYWF\nXdzKjtPQtd4Or3lBEG4fbQqiVq1aRUFBQZ3bH3roIfz8/Nry1D1OY30RFBTE/PnzKS8v57vvvuPb\nb7/l2Wefrfd5FApFRzdV6ASrVq3Czs6OjIwM3nnnHVxcXPTuv51+zk1d6+3UF4Ig3FraFET94x//\n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\nQmCC\n",
"text": [
"<matplotlib.figure.Figure at 0x10aaadf90>"
]
}
],
"prompt_number": 30
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Semiparametric survival models\n",
"\n",
"Parametric models are effective if the underlying survival time distribution is known. However, the exact form of the underlying survival distribution is usually unknown and we may not be able to find an appropriate model. Semiparametric survival models relax the assumption of a known, parametric form for the survival function. The most popular semiparametric model is the Cox proportional hazards model, which replaces the assumption of a parametric survival time distribution with an assumption of proportional hazards. In other words, the ratio in the risk of death/failure between two groups does not vary over time.\n",
"\n",
"The proportional hazards assumption implies that the hazard function given a set of covariates $Z$ can be written as a function of a *baseline* hazard function and a function of only the covariates $g(Z)$. Using a simplified example, where $Z = 1$ for treated and $Z = 0$ for control individuals, and $\\lambda_1(t)$ is the hazard rate for the treated group and $\\lambda_0(t)$ the hazard for control, then we can write:\n",
" \n",
"$$\\lambda_1(t) = \\lambda(t|Z=1) = \\lambda_0(t)\\exp(\\beta Z) = \\lambda_0(t)\\exp(\\beta)$$\n",
"\n",
"The Cox model can be re-expressed as a linear model for the log of the hazard ratio:\n",
"\n",
"$$\\log\\left[\\frac{\\lambda_i(t)}{\\lambda_0(t)}\\right] = Z \\mathbf{\\beta}$$\n",
"\n",
"So, while the baseline hazard is non-parametric, the linear model is parametric, making the overall model semiparametric.\n",
"\n",
"In frequentist applications, the Cox model is estimated using the partial likelihood. In Bayesian applications, since we must always specify a parametric posterior distribution, we must re-express the Cox model in order to estimate it."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### Cox regression in PyMC\n",
"\n",
"This example implements the Cox model using the counting process notation introduced by Andersen and Gill (1982) \n",
"\n",
"If $N_i(t)$ is the count of events that have occurred up until time $t$, then we can consider an *intensity* process that characterizes the incremental increase in $N_i(t)$ over some small interval $dt$:\n",
" \n",
"$$I_i(t) dt = E(dN_i(t) \\,| \\, N_i(t), Y_i(t), z_i)$$\n",
"\n",
"if subject $i$ fails during $[t,t+dt)$, then $dN_i(t)=1$, making $I_i(t) dt$ a failure rate for this interval. As $dt \\rightarrow 0$, this probability converges to the hazard. Here is the proportional hazards form:\n",
" \n",
"$$I_i(t) = Y_i(t) \\lambda_0(t) \\exp(\\beta^{\\prime}z_i)$$\n",
"\n",
"Since we cannot estimate $\\lambda_0(t)$ non-parametrically, we instead model the increments $dN_i(t)=1$ as a *counting process* with a Poisson distribution:\n",
"\n",
"$$dN_i(t) \\sim Poisson(I_i(t) dt)$$\n",
"\n",
"where the Poisson mean is:\n",
"\n",
"$$I_i(t) dt = Y_i(t) \\lambda_0(t) \\exp(\\beta^{\\prime}z_i) d\\Lambda_0(t)$$\n",
"\n",
"One approach places a prior on the unknown hazard function $d\\Lambda_0(t)=\\lambda_0(t)$, but it is cleaner to invoke the \"multinomial-Poisson trick\", which assumes independent increments in the cumulative hazard function, and whose logarithms are given flat (constant) priors. \n",
"\n",
"$$\\log(\\lambda_{ij}) = \\lambda_i + \\beta_j^{\\prime} z_i$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Survival time, in weeks:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"obs_t = 1, 1, 2, 2, 3, 4, 4, 5, 5, 8, 8, 8, 8, 11, 11, 12, 12, 15, 17, 22, 23, 6, \\\n",
" 6, 6, 6, 7, 9, 10, 10, 11, 13, 16, 17, 19, 20, 22, 23, 25, 32, 32, 34, 35"
],
"language": "python",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"outputs": [],
"prompt_number": 31
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Vector of indicator variables for failure (1) or censored (0):"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"fail = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, \\\n",
" 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 32
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Vector of indicator variables for treatment (0.5) or placebo (-0.5):"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"Z = 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, \\\n",
" 0.5, 0.5, 0.5, 0.5, 0.5, -0.5, -0.5, -0.5, -0.5, -0.5, -0.5, -0.5, -0.5, -0.5, -0.5, \\\n",
" -0.5, -0.5, -0.5, -0.5, -0.5, -0.5, -0.5, -0.5, -0.5, -0.5, -0.5"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 33
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Unique failure times, number of observations, and study duration:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"t = 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 15, 16, 17, 22, 23, 35\n",
"N_obs = len(obs_t)\n",
"T = len(t) - 1"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 34
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Calculate risk set"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"Y = np.array([[int(obs >= time) for time in t] for obs in obs_t])"
],
"language": "python",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"prompt_number": 35
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Counting process. Jump = 1 if $\\text{obs}_t \\in [ t_j, t_{j+1} )$"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"dN = np.array([[Y[i,j]*(t[j+1] >= obs_t[i])*fail[i] for i in range(N_obs)] for j in range(T)])"
],
"language": "python",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"prompt_number": 36
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Model using Poisson trick:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from pymc import Normal, Lambda, Poisson, MCMC\n",
"\n",
"beta0 = Normal('beta0', 0, 0.001, value=np.zeros(T))\n",
"beta1 = Normal('beta1', 0, 0.00001, value=0)\n",
"\n",
"# Poisson trick: independent log-normal hazard increments\n",
"Idt = Lambda('Idt', lambda b0=beta0, b1=beta1: [[Y[i,j]*np.exp(b0[j] + b1*Z[i]) for i in range(N_obs)] for j in range(T)])\n",
"\n",
"# Likelihood\n",
"dN_like = Poisson('dN_like', Idt, value=dN, observed=True)"
],
"language": "python",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"prompt_number": 37
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"Initialize MCMC sampler."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"M = MCMC([beta0, beta1, Idt, dN_like])"
],
"language": "python",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"prompt_number": 38
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"M.sample(10000, burn=5000)"
],
"language": "python",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [* 2% ] 200 of 10000 complete"
]
}
],
"prompt_number": "*"
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"beta1.summary()"
],
"language": "python",
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"prompt_number": "*"
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from pymc import Matplot\n",
"\n",
"Matplot.plot(beta1)"
],
"language": "python",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [],
"prompt_number": "*"
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment