Skip to content

Instantly share code, notes, and snippets.

@fonnesbeck
Last active May 12, 2022 11:48
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save fonnesbeck/f102691069ea9069c3c9 to your computer and use it in GitHub Desktop.
Save fonnesbeck/f102691069ea9069c3c9 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Disease Outbreak Response Decision-making Under Uncertainty: A retrospective analysis of measles in Sao Paulo"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<style>\n",
" @font-face {\n",
" font-family: \"Computer Modern\";\n",
" src: url('http://mirrors.ctan.org/fonts/cm-unicode/fonts/otf/cmunss.otf');\n",
" }\n",
" div.cell{\n",
" width: 90%;\n",
"/* margin-left:auto;*/\n",
"/* margin-right:auto;*/\n",
" }\n",
" ul {\n",
" line-height: 145%;\n",
" font-size: 90%;\n",
" }\n",
" li {\n",
" margin-bottom: 1em;\n",
" }\n",
" h1 {\n",
" font-family: Helvetica, serif;\n",
" }\n",
" h4{\n",
" margin-top: 12px;\n",
" margin-bottom: 3px;\n",
" }\n",
" div.text_cell_render{\n",
" font-family: Computer Modern, \"Helvetica Neue\", Arial, Helvetica, Geneva, sans-serif;\n",
" line-height: 145%;\n",
" font-size: 130%;\n",
" width: 90%;\n",
" margin-left:auto;\n",
" margin-right:auto;\n",
" }\n",
" .CodeMirror{\n",
" font-family: \"Source Code Pro\", source-code-pro,Consolas, monospace;\n",
" }\n",
"/* .prompt{\n",
" display: None;\n",
" }*/\n",
" .text_cell_render h5 {\n",
" font-weight: 300;\n",
" font-size: 16pt;\n",
" color: #4057A1;\n",
" font-style: italic;\n",
" margin-bottom: 0.5em;\n",
" margin-top: 0.5em;\n",
" display: block;\n",
" }\n",
"\n",
" .warning{\n",
" color: rgb( 240, 20, 20 )\n",
" }\n",
"</style>\n",
"<script>\n",
" MathJax.Hub.Config({\n",
" TeX: {\n",
" extensions: [\"AMSmath.js\"]\n",
" },\n",
" tex2jax: {\n",
" inlineMath: [ ['$','$'], [\"\\\\(\",\"\\\\)\"] ],\n",
" displayMath: [ ['$$','$$'], [\"\\\\[\",\"\\\\]\"] ]\n",
" },\n",
" displayAlign: 'center', // Change this to 'center' to center equations.\n",
" \"HTML-CSS\": {\n",
" styles: {'.MathJax_Display': {\"margin\": 4}}\n",
" }\n",
" });\n",
"</script>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"%matplotlib inline\n",
"import pandas as pd\n",
"import numpy as np\n",
"import numpy.ma as ma\n",
"from datetime import datetime\n",
"import matplotlib.pyplot as plt\n",
"import pdb\n",
"\n",
"from IPython.core.display import HTML\n",
"def css_styling():\n",
" styles = open(\"styles/custom.css\", \"r\").read()\n",
" return HTML(styles)\n",
"css_styling()"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"data_dir = \"data/\""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Import outbreak data"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"measles_data = pd.read_csv(data_dir+\"measles.csv\", index_col=0)\n",
"measles_data.NOTIFICATION = pd.to_datetime(measles_data.NOTIFICATION)\n",
"measles_data.BIRTH = pd.to_datetime(measles_data.BIRTH)\n",
"measles_data.ONSET = pd.to_datetime(measles_data.ONSET)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"measles_data = measles_data.replace({'DISTRICT': {'BRASILANDIA':'BRAZILANDIA'}})"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Sao Paulo population by district"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"sp_pop = pd.read_csv(data_dir+'sp_pop.csv', index_col=0)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"_names = sp_pop.index.values\n",
"_names[_names=='BRASILANDIA'] = 'BRAZILANDIA'\n",
"sp_pop.set_index(_names, inplace = True)"
]
},
{
"cell_type": "code",
"execution_count": 7,
"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>0 a 4 anos</th>\n",
" <th>5 a 9 anos</th>\n",
" <th>10 a 14 anos</th>\n",
" <th>15 a 19 anos</th>\n",
" <th>20 a 24 anos</th>\n",
" <th>25 a 29 anos</th>\n",
" <th>30 a 34 anos</th>\n",
" <th>35 a 39 anos</th>\n",
" <th>40 a 44 anos</th>\n",
" <th>45 a 49 anos</th>\n",
" <th>50 a 54 anos</th>\n",
" <th>55 a 59 anos</th>\n",
" <th>60 a 64 anos</th>\n",
" <th>65 a 69 anos</th>\n",
" <th>70 a 74 anos</th>\n",
" <th>75 anos e +</th>\n",
" <th>Total</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>AGUA RASA</th>\n",
" <td>5411</td>\n",
" <td>5750</td>\n",
" <td>6450</td>\n",
" <td>7122</td>\n",
" <td>7621</td>\n",
" <td>7340</td>\n",
" <td>6999</td>\n",
" <td>6984</td>\n",
" <td>6346</td>\n",
" <td>5608</td>\n",
" <td>4987</td>\n",
" <td>4212</td>\n",
" <td>4152</td>\n",
" <td>3595</td>\n",
" <td>2937</td>\n",
" <td>3637</td>\n",
" <td>89151</td>\n",
" </tr>\n",
" <tr>\n",
" <th>ALTO DE PINHEIROS</th>\n",
" <td>2070</td>\n",
" <td>2369</td>\n",
" <td>2953</td>\n",
" <td>3661</td>\n",
" <td>4612</td>\n",
" <td>4190</td>\n",
" <td>3539</td>\n",
" <td>3633</td>\n",
" <td>3448</td>\n",
" <td>3289</td>\n",
" <td>3040</td>\n",
" <td>2533</td>\n",
" <td>2298</td>\n",
" <td>1732</td>\n",
" <td>1305</td>\n",
" <td>1823</td>\n",
" <td>46495</td>\n",
" </tr>\n",
" <tr>\n",
" <th>ANHANGUERA</th>\n",
" <td>3068</td>\n",
" <td>3006</td>\n",
" <td>2755</td>\n",
" <td>2431</td>\n",
" <td>2426</td>\n",
" <td>2636</td>\n",
" <td>2695</td>\n",
" <td>2308</td>\n",
" <td>1653</td>\n",
" <td>1107</td>\n",
" <td>753</td>\n",
" <td>509</td>\n",
" <td>352</td>\n",
" <td>217</td>\n",
" <td>162</td>\n",
" <td>171</td>\n",
" <td>26249</td>\n",
" </tr>\n",
" <tr>\n",
" <th>ARICANDUVA</th>\n",
" <td>7732</td>\n",
" <td>7730</td>\n",
" <td>8373</td>\n",
" <td>8956</td>\n",
" <td>9182</td>\n",
" <td>8531</td>\n",
" <td>7813</td>\n",
" <td>7365</td>\n",
" <td>6551</td>\n",
" <td>5554</td>\n",
" <td>4887</td>\n",
" <td>3858</td>\n",
" <td>3320</td>\n",
" <td>2449</td>\n",
" <td>1611</td>\n",
" <td>1723</td>\n",
" <td>95635</td>\n",
" </tr>\n",
" <tr>\n",
" <th>ARTUR ALVIM</th>\n",
" <td>9031</td>\n",
" <td>9078</td>\n",
" <td>10000</td>\n",
" <td>11058</td>\n",
" <td>11387</td>\n",
" <td>10347</td>\n",
" <td>9125</td>\n",
" <td>8658</td>\n",
" <td>7830</td>\n",
" <td>7055</td>\n",
" <td>5919</td>\n",
" <td>4612</td>\n",
" <td>3756</td>\n",
" <td>2633</td>\n",
" <td>1727</td>\n",
" <td>1724</td>\n",
" <td>113940</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" 0 a 4 anos 5 a 9 anos 10 a 14 anos 15 a 19 anos \\\n",
"AGUA RASA 5411 5750 6450 7122 \n",
"ALTO DE PINHEIROS 2070 2369 2953 3661 \n",
"ANHANGUERA 3068 3006 2755 2431 \n",
"ARICANDUVA 7732 7730 8373 8956 \n",
"ARTUR ALVIM 9031 9078 10000 11058 \n",
"\n",
" 20 a 24 anos 25 a 29 anos 30 a 34 anos 35 a 39 anos \\\n",
"AGUA RASA 7621 7340 6999 6984 \n",
"ALTO DE PINHEIROS 4612 4190 3539 3633 \n",
"ANHANGUERA 2426 2636 2695 2308 \n",
"ARICANDUVA 9182 8531 7813 7365 \n",
"ARTUR ALVIM 11387 10347 9125 8658 \n",
"\n",
" 40 a 44 anos 45 a 49 anos 50 a 54 anos 55 a 59 anos \\\n",
"AGUA RASA 6346 5608 4987 4212 \n",
"ALTO DE PINHEIROS 3448 3289 3040 2533 \n",
"ANHANGUERA 1653 1107 753 509 \n",
"ARICANDUVA 6551 5554 4887 3858 \n",
"ARTUR ALVIM 7830 7055 5919 4612 \n",
"\n",
" 60 a 64 anos 65 a 69 anos 70 a 74 anos 75 anos e + \\\n",
"AGUA RASA 4152 3595 2937 3637 \n",
"ALTO DE PINHEIROS 2298 1732 1305 1823 \n",
"ANHANGUERA 352 217 162 171 \n",
"ARICANDUVA 3320 2449 1611 1723 \n",
"ARTUR ALVIM 3756 2633 1727 1724 \n",
"\n",
" Total \n",
"AGUA RASA 89151 \n",
"ALTO DE PINHEIROS 46495 \n",
"ANHANGUERA 26249 \n",
"ARICANDUVA 95635 \n",
"ARTUR ALVIM 113940 "
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sp_pop.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Plot of cumulative cases by district"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x104b54240>"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nAAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x104b656a0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"measles_onset_dist = measles_data.groupby(['DISTRICT','ONSET']).size().unstack(level=0).fillna(0)\n",
"measles_onset_dist.cumsum().plot(legend=False, grid=False)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"total_district_cases = measles_onset_dist.sum()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Top 5 districts by number of cases"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/Users/fonnescj/anaconda3/lib/python3.5/site-packages/ipykernel/__main__.py:2: FutureWarning: sort is deprecated, use sort_values(inplace=True) for for INPLACE sorting\n",
" from ipykernel import kernelapp as app\n"
]
},
{
"data": {
"text/plain": [
"DISTRICT\n",
"GRAJAU 1074\n",
"JARDIM ANGELA 944\n",
"CAPAO REDONDO 849\n",
"JARDIM SAO LUIZ 778\n",
"CAMPO LIMPO 692\n",
"dtype: float64"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"totals = measles_onset_dist.sum()\n",
"totals.sort(ascending=False)\n",
"totals[:5]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Age distribution of cases, by confirmation status"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA3AAAAFVCAYAAACuFA17AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmcFNW9///3Z4ZFFtkJSBCMAbc8VEQUo0HRAYFRJioE\nMV7RIEYUBQXlGhMV1BDUqyiiNypbQq6IUcBgEJElKqgBQTT3l/hlubIoaFhkRmFUZM7vj+5pu3t6\npqtneqarul/Px6Me03Pq06dOVXV196dP1SlzzgkAAAAA4H95mW4AAAAAAMAbEjgAAAAACAgSOAAA\nAAAICBI4AAAAAAgIEjgAAAAACAgSOAAAAAAIiKQJnJn9wsz+bmarzez8cFkfM3szPF0QFZtSOQAA\nAADAO0t2Hzgz+0DSaZKaSHpV0tmSVknqEw551Tl3rpnlSXrTS7mk8xw3oAMAAACAlNTzEPMPSQWS\n2klaIqmrpI3OuVJJMrMtZtZVod48T+WSukjalO6VAQAAAIBs5iWBe0PSNQolYnMltZa038ymhOcX\nh8ssxXISOAAAAABIQZUJnJl1kXSBc+7y8P8rJY2R1ELSjQolZ09K2qNQgpdKeULLly/n1EoAAAAA\nOa2goMASlSfrgTOFki+ZWX1JLSVtlnRcVExX59xmM8tPpbyqhXbv3j1JswAAAAAgO61fv77SeVUm\ncM65TWb2upm9rVBP2qPOuYNmNlHSa+GwCeHYw6mUAwAAAABSk/QaOOfcJEmT4sqWSlqaIDalcgAA\nAACAd9zIGwAAAAACggQOAAAAAALCy20EAAAAstY333yjPXsqHSAbAGpFmzZt1KBBg5SfRwIHAABy\n1jfffKPPPvtM3//+95WXx4lJAOpGWVmZPvnkE7Vr1y7lJI53KgAAkLP27NlD8gagzuXl5en73/9+\ntXr/ebcCAAA5jeQNQCZU972HdywAAAAACAgSOAAAAAAICBI4AAAAZIU33nhDAwcO1CWXXKJhw4bJ\nOaf58+erX79+GjBggBYsWCBJ2r59u4455hgdOHBAklRUVKSDBw8mrKNcdEy0goKChI9XrFih/v37\n66c//almzJgRKZ8+fbp69uypM844I6Y81XYidzEKJQAAAALv4MGDuv/++zV//nw1bdpU3377rb74\n4gs98cQTWrx4scxMAwcOjCRZZqY//vGPuuGGGyqt49ChQ9Vuz+TJk/XCCy+oWbNmMeUjRoxQkyZN\ndPDgQV177bWSpJKSkpTaidxGDxwAAAACb+3atTr33HPVtGlTSVK9evX07rvv6oILLlDDhg3VoEED\nnXvuuVq3bp3MTL169dLSpUt1+PBhSZJzrkId9evXr3Z7TjrpJC1YsEDOuYTzo8tTaSdAAgcAAIDA\n27Nnj1q3bh1T9vnnn6tVq1aR/1u1aqV9+/ZJCo0AePHFF2vhwoVV1lFdjzzyiBo2bKif//znevfd\nd6uMTbWdyG0kcAAAAAi8tm3bavfu3TFlLVu2jCRCkrRv376YBO2KK67Qn/70pyrrqK68vDwNHTpU\nM2bM0B133FFlbCrtrKxHD7mDBA4AAACB16NHD73xxhsqKSmRFLqurEePHnr99df1zTff6Ouvv9br\nr7+u008/PZIENW7cWKeddpref/99mZlOP/30mDqKi4tjlpEoefr6669VWlqqkpKSmPt6lZWVRf6W\nP66snlTbidzGICYAAAAIvMaNG+vuu+/Wz3/+c+Xl5emII47QzJkzdf3112vgwIEyM40cOVJHHnmk\nPv/880giNGLECP33f/+3JKlJkyYxdTRs2FCzZ89WkyZNJEk33HBDJEmbPXu2JOmWW27RxRdfLDPT\nuHHjIu2566679I9//EOHDx/WhAkTIuXTp0/XM888I+eczEzXXnutmjVrllI7kdvMb92wy5cvd927\nd890MwAAQA7YuXOnOnTokOlmAMhRlb0HrV+/XgUFBQm7WzmFEgAAAAACggQOAAAAAAKCBA4AAAAA\nAoIEDgAAAAACggQOAAAAAALCt7cR+HfxTu0u3hlT1rZ5B32vOSNFAQAAAMhNvk3gdhfv1H3PXR9T\ndtfQp0jgAABArfr0i6/12Rff1Fr97Y5soPZHNqy1+gFkN98mcAAAAJnw2Rff6PbFm2ut/ocKu3hO\n4Pbu3atx48Zp69atatKkiVq2bKk5c+Zo9erVeuKJJzR37tyEzxszZozefvttHThwQCeeeKJeeOEF\nSdL27dt12mmn6c0339RJJ52kvXv3qqCgQBs2bJAkrVmzRhMmTNB7772nk08+WSNHjtRll10mSXLO\n6d5779WyZct05JFHKi8vT0888YQ6d+4cWe7IkSO1fv16rVmzJqY9AwcO1H333adu3bqlvL0AxCKB\nAwAA8Knx48erb9++uvLKKyVJJSUlMkt4b98Yjz32mObOnav3339fkydPjplXv359Pfroo3r66acr\nPO/MM8/U4sWL1a1bN82bN08tW7aMzJs9e7Z2796tN998U5J04MABNWrUKDL/66+/1tq1a9WpUyf9\n4x//0MknnxyZZ2ae2g0gOQYxAQAA8KHi4mKtW7cukrxJUrNmzTw/3zkn51yF8h/+8IfasWOHtm7d\nmlJ75syZo9tuuy3yf5MmTZSX991XyWXLlumCCy7Q5ZdfrgULFqRUNwDvSOAAAAB8aNu2berUqVO1\nn19Vj9dNN92kxx57LKVesW3btsWcLhlvwYIFGjRokAoLC7VkyZKU2grAuyoTODNrZmYro6bicHkf\nM3szPF0QFZ9SOQAAAOpeYWGh1q1bp08//TQt9ZWWlur111/XXXfdpcGDB2v37t1677330lI3gFhV\nXgPnnCuRdL4kmdkpkm620E81EyX1CYe9KmmFmeV5LTezlS5Rn36UVvkt9KsBD1coAwAAyAWdO3fW\n1q1b5ZxL+/VjZqaRI0fq8ccfT6k9W7ZsUZcuXSrMW7p0qX72s59p0qRJkqQXX3xRCxcu1GmnnZa2\nNgMISeUUytGSHpd0nKSNzrlS51yppC1m1lVSV6/lkioe+XEabC3Rrr53xkwNtpakun4AAACB1Lx5\nc/Xs2VMzZ86MlKVy3VqS38o1ZMgQvfPOO5Umh/HPHzZsmB544AGVlZVJkvbv36/i4mJJ0sKFC9Wv\nX79IbEFBgV5++eWU2gPAG0+jUJpZa0lHO+c+MLMfS9pvZlPCs4sltZZkKZZvStM6AAAApE27Ixvo\nocKkvzXXqH6vHnzwQd12222aM2eOjjjiCH3ve9/TtGnTZGZ65513VFBQEIl95JFHdOqpp0qKvY3A\nli1bIrcRkL67Nq5evXq6/vrr9dRTT0Xmld9GYPfu3Ro6dGjMbQSuvvpqffzxxzr33HN15JFHqn79\n+po0aZLq1aund955R88880yknhYtWuioo47SunXrdPrpp0uSbrjhBjVu3FiS1K1bNz38cOyZVgC8\nMS+/hpjZrxTqRXvRzI6T9CtJNyqUnD0p6X6FevM8lzvnEt5gZfny5a579+7au3q91g66KWbeGS9O\nU+tzuldnPQEAACrYuXOnOnTokOlmAMhRlb0HrV+/XgUFBQm7x5P2wJlZPUkXS+oVLtqi0GmU5bo6\n5zabWX4q5cmWCwAAAACI5eUUykskLXLOlUmSc+6wmU2U9Fp4/oTqlAMAAAAAUpM0gXPOvZCgbKmk\npTUtBwAAAAB4x428AQAAACAgSOAAAAAAICBI4AAAAAAgIDzdBw4AACBXFH9+UMWfl9Za/c1bNlLz\nlo1rrX4A2Y0EDgAAIErx56V6fvraWqt/yIgzPCdwe/fu1bhx47R161Y1adJELVu21Jw5c1RaWqrR\no0dr48aNKisr07hx43TppZdKkp599ln99re/1YYNG1S/fn299NJLWrp0qZ544glJ0sCBA1VSUqIm\nTZpIkvr27atbb71V0nc38n7vvfd08sknx9zIe/LkyZo3b56OOuoolZaW6qyzztKkSZNkZpo8ebKm\nT5+uDz/8UPXq1dPQoUN18OBB/eUvf0m4zCFDhuiaa66JmSdJJ598siZNmqRmzZqlYUsD2YkEDgAA\nwKfGjx+vvn376sorr5QklZSUyMw0bdo0tWvXTtOnT9e+ffvUr18/9erVS23atJEUSvyeffZZXX31\n1RXqNDNNnTpVp556aoV5Z555phYvXqxu3bpp3rx5atmyZczzRowYoVGjRkmSBg8erGXLlqlv376S\npBYtWuiVV17RmWeeqY8++kjt27f3tMzoeTNnztR1112nefPm1WCrAdmNa+AAAAB8qLi4WOvWrYsk\nb5IiPVMLFy7UyJEjJUmtWrVSYWGhXn75ZUmhhOjiiy/W9OnTVVZWlrBu51y12lT+vP3792vfvn3q\n2LFjZJmXXnqpFixYoBdeeEGDBw+usIyqllk+b/jw4SouLtaGDRuq1T4gF5DAAQAA+NC2bdvUqVOn\nhPM+/fRTHX300ZH/O3XqpI8//jjyf+vWrfWTn/xECxYskJlVeP7YsWNVVFSkoqIivfXWW57a45zT\nrFmz1Lt3bxUVFWnixIk68cQTI/ObN2+uBg0aaPHixbrggguqXOaSJUti5kW3sXv37vrnP//pqU1A\nLuIUSgAAgCxS3ps1atQoDRs2TGPGjKkQM2XKlISnM1bFzDR8+HBdfPHFGjBgQEzyVu7WW2/Vrl27\nlJ+fX+1lOucSJp0AQuiBAwAA8KHOnTtr69atCU89bN++fUyP27Zt2yKnM5br2LGjTjzxRL366qsV\nnl+TUyg7d+6sq666SnfffXeF+ccff7x69+5d7fol6b333kuYHAIIIYEDAADwoebNm6tnz56aOXNm\npGzbtm2SpMsuu0xPP/20JGnfvn165ZVXNHDgwAp1jB49WvPnz6/Qo+Wlh6uqJOyWW27RW2+9pbff\nftvTuiSrr3zejBkz1KxZM3Xr1s1zvUCuIYEDAADwqQcffFBvvfWWevfurf79++uuu+5SSUmJRo0a\npV27dum8885TUVGR7rzzTrVu3VpSKDkrT9COP/74yCiRXqxZs0aFhYXavXu3hg4dqvnz58fML6+3\nUaNGuvfee3X77bfr22+/jZkX34ZyY8aMUWFhoQoLCyPJZ/S8Xr16af369Zo+fbrn9gK5yGrSxV0b\nli9f7rp37669q9dr7aCbYuad8eI0tT6ne4ZaBgAAss3OnTvVoUOHmDJu5A2griR6D5Kk9evXq6Cg\nIGFXOYOYAAAARGnesjEJFgDf4hRKAAAAAAgIEjgAAAAACAgSOAAAAAAICBI4AAAAAAgIEjgAAAAA\nCAgSOAAAAAAICG4jAAAAEOXg9l0q3bGr1upvdPRRatzpqFqrH0B2I4EDAACIUrpjl9YOuqnW6j/j\nxWmeEriBAweqpKREknTyySdr0qRJatasmb766itdeuml+uijj9SiRQsVFhbq7rvvjjxvyZIlmjJl\nivLz81VWVqb58+ercePQfe02bNig3/zmN/rqq6+Un5+vgoICjR8/PvLcjz76SD169NBTTz2lwYMH\nR8onT56sefPm6aijjlJpaanOOussTZo0SWamVatWadiwYerSpYvKyso0btw4DRgwoMJ6NGnSRJI0\nZMgQXXPNNVWuI4DKkcABAAD4kJlp6tSpOvXUUzVz5kxdd911mjdvno444gi98sorGjVqlPr376+B\nAwdGnvPVV19p7NixWrVqlVq1ahVT36FDh3T99ddr1qxZOumkkyQpkjyVW7BggS655BItXLgwJoEz\nM40YMUKjRo2SJA0ePFjLli1T3759JUk9e/bU3Llz9dlnn+nyyy9X27Zt1aNHjwrr4XUdAVSOa+AA\nAAB8yjknSRo+fLiKi4u1YcOGhPPLlZWVqaysTPv3769Q1/Lly9W9e/dI8iapQm/Xyy+/rN/+9rfa\nvHlzheSufFn79+/Xvn371LFjxwrLaNeune655x49/PDDVbYzlXUEEIsEDgAAwKfMLPK4e/fu+uc/\n/1llfOPGjTV16lRdccUVGjt2rLZv3x6Z99FHH+mYY46p9LmbNm1S8+bN1b59e1188cV65ZVXIvOc\nc5o1a5Z69+6toqIiTZw4USeeeGLCehK1c+zYsSoqKlJRUZGWLFlSo3UEch2nUAIAAASAcy4m2anM\nhRdeqD59+mj+/PkqKirS3LlzK022oi1cuFDbt2/XhRdeqK+++kr/+7//q8svv1xSKMkaPny4Lr74\nYg0YMKDK+hL1tk2ZMiXhKZSJnutlHYFcRg8cAABAALz33nsVEqfKkp28vDwNHjxY1113nebPny9J\nOvbYY7V58+ZK61+0aJGWL1+upUuX6o033tCOHTtiTqN0zqlz58666qqrYgZNibdu3bqY0zRTkWgd\nAcRKmsCZWUczW2lmb5rZw+GyPuH/3zSzC6JiUyoHAABA5cp7s2bMmKFmzZqpW7duCedH+/LLLyWF\nrof74IMPdMIJJ0iSzj//fH3wwQd6//33I7Hbtm2TJH344Ydq2rSpWrRoEZl3/vnna9GiRRXqv+WW\nW/TWW2/p7bffrjDvs88+07333quxY8cmbafXdQQQy8splP8l6dfOubckyczyJE2U1Cc8/1VJK1Ip\nN7OVrqojGQAAIEMaHX2UznhxWq3W79WYMWNUVlamU045RdOnT5ekmNsIrFu3Ths2bIj0iDnndMUV\nV+jQoUMqKytT//79NWjQIElSgwYNNH36dN15550qLS2Vmemcc87RhAkTtHDhQvXr1y9m2f369dPj\njz+uK6+8UtJ3vX2NGjXSvffeq9tuu01vvPGGJGnNmjXq27evysrKNH78eJ1xxhkV1qP8NgKXXHKJ\nfvnLX1a5jgAqZ1XlUWaWL+kd59wZUWXHS7rDOfeL8P+zJE1SqDfPc7lzblOiZS5fvtx1795de1ev\nr3APljNenKbW53Sv9soCAABE27lzpzp06JDpZgDIUZW9B61fv14FBQUJz5FO1gPXVtIRZrZQUjNJ\nj0v6VNJ+M5sSjimW1FqSpVieMIEDAAAAACSWLIHbq1DCNUhSvqTVkq6V1ELSjQolZ09K2qNQT1sq\n5QAAAACAFFSZwDnnDpnZDkntnXOfmNnXkjZLOi4qrKtzbnP4dEvP5elaAQAAAADIFV4GMflPSc+Y\nWXNJzzvnDprZREmvhedPkCTn3OFUygEAAAAAqUmawDnntksqjCtbKmlpgtiUytPh38U7tbt4Z0xZ\n2+Yd9L3mXJAMAAAAILt46YHztd3FO3Xfc9fHlN019CkSOAAAAABZJ/AJHAAAQDolOrsnnThTCEBN\nkMABAABESXR2TzqlcqbQqaeeqptvvlkjRoyQJJ199tl6/vnn1bFjRx08eFCjR4/Wxo0bVVZWpnHj\nxunSSy/1VG+bNm105plnyjkn55zuv/9+9ejRQ5I0efJkzZs3T0cdFbrh+AknnKBHHnkk8lznnE45\n5RQVFBTo0Ucfjan3xRdf1LRp09SgQQNJ0g033KBLLrlEkjRw4ECVlJREbug9ZMgQXXPNNVWu56FD\nhzRq1ChJ0v/93/+pRYsWatWqldq1a6dZs2Z5Wtc5c+bo1ltv1QcffBBzv62qtm35NmjZsqVat26t\n++67TyeccIKn5c2YMUNz587Vhx9+qFNPPVWPPfaYunTpIklq3bq17r33Xo0aNUrvvfee+vTpo0WL\nFunss8/WqlWrNGzYMJ1wwgk6ePCgLrvsMo0ePVqSYuYdOnRIrVu31rRp09SmTRtJ0quvvqr7779f\n+fn5Ovroo/XEE0+oWbNmkr7bn+3bt9ehQ4d0xx13qE+fPhXqLffSSy+pfv36SZdZlb1792rcuHHa\nunWrmjRpopYtW2rOnDkys6Sv26OPPlo7duxIWO/AgQN13333qVu3bhXmVfW6dc7p3nvv1bJly3Tk\nkUcqLy9PTz75pDp16qQhQ4boyy+/1J49e3TgwAF17txZkvSHP/xBbdu2rXJ/btmyRTfffLNKS0tV\nv359PfroozrppJMkSaNGjdKBAwc0e/ZsSdL48eN12mmn6Yorrki6/ZIhgQMAAPCxp556SsOHD1de\nXp7Mvruv77Rp09SuXTtNnz5d+/btU79+/dSrVy9PX7AbN26sxYsXS5LWrFmjO+64Q8uWLZMkmZlG\njBgRSZzirVmzRieccIJWrVqlw4cPKz8/X5L0r3/9S48++qgWLVqkFi1ayDmngwcPRp5nZpo6dapO\nPfVUz+v5gx/8INLOUaNGqX///ho4cGDS9Yu2YMECXXLJJXrppZd0ww03JF1m/DZ49913NWzYMC1f\nvlxHHnlk0uVde+21uvDCCzV06FD99a9/jZnXqFEj/e1vf9OoUaP03HPP6dhjj42Z37NnT82dO1df\nffWVLrroIvXo0UNnn312zDxJmjJliqZNm6YJEyboyy+/1O23367FixerY8eOmjp1qh544AH99re/\nrbAu27dvV//+/bVu3To1atRIknTWWWfp2WefTbgulS0zmfHjx6tv37668sorJUklJSWR7ZvsdRu9\nH+KZWaXzq3rdzp49W7t379abb74pSTpw4EBk/Z9//nlJ0ty5c/X+++9r8uTJMc+tan+OHTtWN998\nswYMGKB169bppptu0ooVKyLzly5dqk2bNqlr165Vrleq8tJWEwAAANLKzPTjH/9Y8+bNqzBv4cKF\nGjlypCSpVatWKiws1Msvv5zyMjZt2hTpdSjnnKs0/qWXXtKVV16pnj176m9/+1uk/E9/+pN++ctf\nqkWLFpG2l/e2Jau3qvX02q5E9u7dq927d+vuu+/WwoULU1pm+bJ69OihoqIi/eEPf/C83MramZeX\np5NPPllr167VRx99pC5duiSMPeKII9SrVy9t3Lixwrxvv/1WW7dujeyzZcuWqVevXurYsaMkafjw\n4RXWtXwZnTp1UocOHfTJJ58kbWtVy6xKcXGx1q1bF0neJEV6A6X0vW4TqWxd5syZo9tuuy3yf5Mm\nTZSXF5sGlfdGe613z5492rZtmwYMGCBJOv3005WXl6fNm7+7W9qgQYMq9FKnAwkcAACAj40cOVK/\n//3vK3yJ/PTTT3X00UdH/u/UqZM+/vhjT3WWlpaqqKhIJ554oj788ENNnTo1Ms85p1mzZqmoqEhF\nRUV66KGHYuYtX75c/fv316BBg2IShW3btumHP/xhlcsdO3ZspN4lS5Z4Ws+aWLRokX7605+qU6dO\nysvLq7B9vC6ze/fu+te//pWWNg0dOlQ33XST+vfvLylxj1NJSYlWrVqlM888M1K2du1aDRgwQKee\neqpOP/10/eIXv5AkffLJJzrmmGMicU2bNtW3336rQ4cOVah306ZN+uKLL2Li165dG9knw4YNi4mv\nbJlV2bZtmzp16lTp/Jq8bqtS1et227ZtSZPPVHvIPv7445jtKIVO/4xel759++rDDz9My/pF4xRK\nAAAAH2vfvr26d++uv/zlL2mrs1GjRvrLX/6iW2+9VQ0bNozpKTMzDR8+POGpaO+8844+//xzFRUV\nqaysTJ988knMaZTl7rnnHv39739Xx44dNX369Ej5lClTKj2FsjbWc+HChfr888+1dOlS7dmzRwsW\nLNDNN9+c8jLLysrS1qbjjjtOt956qwoLC/Xaa6/FzCtPpvLz8zVmzJjI9VSSdOaZZ2rOnDnq1atX\nlQlSvPLE5tVXX1WzZs00a9Ys1av3XQpwxhlnRE6TjFfdZWZCVa/bTLrxxhs1derUtJ5CGfgErlV+\nC/1qwMMVygAAALKBmWn06NG67rrrYsrbt2+vjz/+OHLq3LZt2ypcU5XMXXfdpXPOOUeXX365unbt\nGimvrEdqwYIFevTRR1VYGLpF8K233qoVK1aob9++OuaYY7Rx40adffbZmjhxojZs2KC77767xutZ\nXf/+979VUlKi119/XZK0a9cuXXXVVTEJnNdlrl+/XieeeGJa2iWFeuESqSqZcs4pPz9fDzzwgMaN\nG6dVq1apQYMG6tixY0wi+MUXX6hevXqqX7++pJolNpUtsyqdO3fW1q1b5ZxLmLSk43VbVXsra9OW\nLVsig4+kQ8eOHbV9+/aYsh07dkTWSwpt+0svvVSPPPKIjj/++LQtO/CnUDbYWqJdfe+MmRpsLcl0\nswAAANLmBz/4gTp37hxzfc1ll12mp59+WpK0b98+vfLKKykP8NGqVSvddtttGj9+fNLYsrIyLV26\nVL17946U9evXTwsWLJAk/cd//Ieeeuop7dmzR5ISnsKX7FTFROtZXYsWLVJBQUHk/6OOOkplZWXa\ntm1bSst89913tWjRIl199dU1blM69OrVSz/60Y/02GOPSZIKCgq0evXqyHVts2bNqjAaaU1PS41f\nZlWaN2+unj17aubMmZGyrVu3Rh7X9HVbnXUZNmyYHnjggUhP6v79+1VcXFyjetu0aaPOnTtr6dKl\nkkKvE+dcTJLonFNeXp5GjBihv/71r2nrhQt8AgcAAJCtor/w3XLLLTp8+HDk/1GjRmnXrl0677zz\nVFRUpDvvvFOtW7dOeRm/+MUvtG/fPr344ouRshkzZqiwsFCFhYWRHqvVq1era9euaty4cSTu3HPP\n1cqVK3Xo0CGdcMIJuu222zR48GD169dPv/71rysMmT5mzJhIveVf4pOtZ2XbI5mFCxeqX79+MWV9\n+/bVSy+9VCE20TJnzJih888/X7/73e/0xz/+0dMIlOXPGz58uHbs2KGLLrrIczKabITF6Hn33Xef\nnn76aW3fvl1NmzbVAw88oCuuuEK9e/fWu+++WyEhr6reNWvWRPZJYWGhDhw4kHSZyTz44IN66623\n1Lt3b/Xv31933323SkpCHSzJXrelpaUqKCiITPGDx9xwww2ReePGjYuZl+h1K0lXX321OnfurHPP\nPVcDBgzQsGHDKtyqoLLtX9X+fPjhh/XYY4/p/PPP169//Ws9/vjjFeqUpCuuuEKtWrVKut28snRe\nKJoOy5cvd927d9fe1eu1dtBNMfPOeHGaWp/TPabMaxwAAEC8nTt3xtwbTOJG3gDqTqL3ICl02m5B\n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\ngg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x106045c50>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"by_conclusion = measles_data.groupby([\"YEAR_AGE\", \"CONCLUSION\"])\n",
"counts_by_cause = by_conclusion.size().unstack().fillna(0)\n",
"ax = counts_by_cause.plot(kind='bar', stacked=True, xlim=(0,50), figsize=(15,5))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Vaccination data"
]
},
{
"cell_type": "code",
"execution_count": 12,
"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>BIRTHS</th>\n",
" <th>VAX</th>\n",
" <th>POP</th>\n",
" <th>SIA</th>\n",
" </tr>\n",
" <tr>\n",
" <th>YEAR</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1980</th>\n",
" <td>3896442</td>\n",
" <td>0.57</td>\n",
" <td>121740438</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1981</th>\n",
" <td>3933136</td>\n",
" <td>0.73</td>\n",
" <td>124610790</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1982</th>\n",
" <td>3952137</td>\n",
" <td>0.66</td>\n",
" <td>127525420</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1983</th>\n",
" <td>3952735</td>\n",
" <td>0.68</td>\n",
" <td>130455659</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1984</th>\n",
" <td>3935224</td>\n",
" <td>0.73</td>\n",
" <td>133364277</td>\n",
" <td>0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" BIRTHS VAX POP SIA\n",
"YEAR \n",
"1980 3896442 0.57 121740438 0\n",
"1981 3933136 0.73 124610790 0\n",
"1982 3952137 0.66 127525420 0\n",
"1983 3952735 0.68 130455659 0\n",
"1984 3935224 0.73 133364277 0"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"vaccination_data = pd.read_csv('data/BrazilVaxRecords.csv', index_col=0)\n",
"vaccination_data.head()"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"YEAR\n",
"1980 0.57\n",
"1981 0.73\n",
"1982 0.66\n",
"1983 0.68\n",
"1984 0.73\n",
"1985 0.67\n",
"1986 0.67\n",
"1987 0.64\n",
"1988 0.62\n",
"1989 0.60\n",
"1990 0.78\n",
"1991 0.85\n",
"1992 0.91\n",
"1993 0.85\n",
"1994 0.77\n",
"1995 0.87\n",
"1996 0.80\n",
"1997 0.99\n",
"Name: VAX, dtype: float64"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"vaccination_data.VAX[:18]"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"vax_97 = np.r_[[0]*(1979-1921+1), vaccination_data.VAX[:17]]\n",
"n = len(vax_97)\n",
"FOI_mat = np.resize((1 - vax_97*0.9), (n,n)).T"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Mean age of infection for those born prior to vaccination coverage, assuming R0=16\n",
"A = 4.37"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 0.487, 0.343, 0.406, 0.388, 0.343,\n",
" 0.397, 0.397, 0.424, 0.442, 0.46 , 0.298, 0.235, 0.181,\n",
" 0.235, 0.307, 0.217])"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"(1 - vax_97*0.9)[:-1]"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 64.84 , 63.84 , 62.84 , 61.84 , 60.84 , 59.84 , 58.84 ,\n",
" 57.84 , 56.84 , 55.84 , 54.84 , 53.84 , 52.84 , 51.84 ,\n",
" 50.84 , 49.84 , 48.84 , 47.84 , 46.84 , 45.84 , 44.84 ,\n",
" 43.84 , 42.84 , 41.84 , 40.84 , 39.84 , 38.84 , 37.84 ,\n",
" 36.84 , 35.84 , 34.84 , 33.84 , 32.84 , 31.84 , 30.84 ,\n",
" 29.84 , 28.84 , 27.84 , 26.84 , 25.84 , 24.84 , 23.84 ,\n",
" 22.84 , 21.84 , 20.84 , 19.84 , 18.84 , 17.84 , 16.84 ,\n",
" 15.84 , 14.84 , 13.84 , 12.84 , 11.84 , 10.84 , 9.84 ,\n",
" 8.84 , 7.84 , 6.84 , 5.84 , 5.353, 5.01 , 4.604,\n",
" 4.216, 3.873, 3.476, 3.079, 2.655, 2.213, 1.753,\n",
" 1.455, 1.22 , 1.039, 0.804, 0.497, 0.28 ])"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.tril(FOI_mat).sum(0)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 0.5 , 0.217, 0.307, 0.235, 0.181, 0.235, 0.298, 0.46 ,\n",
" 0.442, 0.424, 0.397, 0.397, 0.343, 0.388, 0.406, 0.343,\n",
" 0.487, 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. , 1. , 1. , 1. , 1. ,\n",
" 1. , 1. , 1. , 1. ])"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"natural_susc = np.exp((-1/A) * np.tril(FOI_mat).sum(0))[::-1]\n",
"vacc_susc = (1 - vax_97*0.9)[::-1]\n",
"vacc_susc[0] = 0.5\n",
"vacc_susc"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"\n",
"sia_susc = np.ones(len(vax_97))\n",
"birth_year = np.arange(1922, 1998)[::-1]\n",
"by_mask = (birth_year > 1983) & (birth_year < 1992)\n",
"sia_susc[by_mask] *= 0.2"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"downsample = lambda x: np.array([x[s].mean() for s in age_slices])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Stochastic Disease Transmission Model\n",
"\n",
"As a baseline for comparison, we can fit a model to all the clinically-confirmed cases, regardless of lab confirmation status. For this, we will use a simple SIR disease model, which will be fit using MCMC.\n",
"\n",
"This model fits the series of 2-week infection totals in each district $i$ as a set of Poisson models:\n",
"\n",
"\\\\[Pr(I(t)_{i} | \\lambda(t)_i) = \\text{Poisson}(\\lambda(t)_i) \\\\]\n",
"\n",
"Where the outbreak intensity is modeled as:\n",
"\n",
"\\\\[\\lambda(t)_i = \\beta [I^{(w)}(t-1)_i]^{\\alpha} S(t-1)_i\\\\]\n",
"\n",
"\\\\[\\alpha \\sim \\text{Exp}(1)\\\\]\n",
"\n",
"We will assume here that the transmission rate is constant over time (and across districts):\n",
"\n",
"\\\\[\\beta \\sim \\text{Gamma}(1, 0.1)\\\\]\n",
"\n",
"To account for the influence of infected individuals from neighboring districts on new infections, the outbreak intensity was modeled using a spatial-weighted average of infecteds across districts, where populations were weighted as an exponential function of the distance between district centroids:\n",
"\n",
"\\\\[w_{d} = \\text{exp}(-\\theta d)\\\\]\n",
"\n",
"\\\\[\\theta \\sim \\text{Exp}(1)\\\\]\n",
"\n",
"### Confirmation Sub-model\n",
"\n",
"Rather than assume all clinical cases are true cases, we can adjust the model to account for lab confirmation probability. This is done by including a sub-model that estimates age group-specific probabilities of confirmation, and using these probabilities to estimate the number of lab-confirmed cases. These estimates are then plugged into the model in place of the clinically-confirmed cases.\n",
"\n",
"We specified a structured confirmation model to retrospectively determine the age group-specific probabilities of lab confirmation for measles, conditional on clinical diagnosis. Individual lab confirmation events $c_i$ were modeled as Bernoulli random variables, with the probability of confirmation being allowed to vary by age group:\n",
"\n",
"$$c_i \\sim \\text{Bernoulli}(p_{a(i)})$$\n",
"\n",
"where $a(i)$ denotes the appropriate age group for the individual indexed by i. There were 16 age groups, the first 15 of which were 5-year age intervals $[0,5), [5, 10), \\ldots , [70, 75)$, with the 16th interval including all individuals 75 years and older.\n",
"\n",
"Since the age interval choices were arbitrary, and the confirmation probabilities of adjacent groups likely correlated, we modeled the correlation structure directly, using a multivariate logit-normal model. Specifically, we allowed first-order autocorrelation among the age groups, whereby the variance-covariance matrix retained a tridiagonal structure. \n",
"\n",
"$$\\begin{aligned}\n",
"\\Sigma = \\left[{\n",
"\\begin{array}{c}\n",
" {\\sigma^2} & {\\sigma^2 \\rho} & 0& \\ldots & {0} & {0} \\\\\n",
" {\\sigma^2 \\rho} & {\\sigma^2} & \\sigma^2 \\rho & \\ldots & {0} & {0} \\\\\n",
" {0} & \\sigma^2 \\rho & {\\sigma^2} & \\ldots & {0} & {0} \\\\\n",
" \\vdots & \\vdots & \\vdots & & \\vdots & \\vdots\\\\\n",
" {0} & {0} & 0 & \\ldots & {\\sigma^2} & \\sigma^2 \\rho \\\\\n",
"{0} & {0} & 0 & \\ldots & \\sigma^2 \\rho & {\\sigma^2} \n",
"\\end{array}\n",
"}\\right]\n",
"\\end{aligned}$$\n",
"\n",
"From this, the confirmation probabilities were specified as multivariate normal on the inverse-logit scale.\n",
"\n",
"$$ \\text{logit}(p_a) = \\{a\\} \\sim N(\\mu, \\Sigma)$$\n",
"\n",
"Priors for the confirmation sub-model were specified by:\n",
"\n",
"$$\\begin{aligned}\n",
"\\mu_i &\\sim N(0, 100) \\\\\n",
"\\sigma &\\sim \\text{HalfCauchy}(25) \\\\\n",
"\\rho &\\sim U(-1, 1)\n",
"\\end{aligned}$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Age classes are defined in 5-year intervals."
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"age_classes = [0,5,10,15,20,25,30,35,40,100]\n",
"measles_data.dropna(subset=['YEAR_AGE'], inplace=True)\n",
"measles_data['YEAR_AGE'] = measles_data.YEAR_AGE.astype(int)\n",
"measles_data['AGE_GROUP'] = pd.cut(measles_data.AGE, age_classes, right=False)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Lab-checked observations are extracted for use in estimating lab confirmation probability."
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"CONFIRMED = measles_data.CONCLUSION == 'CONFIRMED'\n",
"CLINICAL = measles_data.CONCLUSION == 'CLINICAL'\n",
"DISCARDED = measles_data.CONCLUSION == 'DISCARDED'"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Extract confirmed and clinical subset, with no missing county information."
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"lab_subset = measles_data[(CONFIRMED | CLINICAL) & measles_data.COUNTY.notnull()].copy()"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"age = lab_subset.YEAR_AGE.values\n",
"ages = lab_subset.YEAR_AGE.unique()\n",
"counties = lab_subset.COUNTY.unique()\n",
"y = (lab_subset.CONCLUSION=='CONFIRMED').values"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA3AAAAFJCAYAAADaAM+bAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3X2UHFWd8PHvb0IS8mJCEjARIwibBHEPiOEdBVySrIAE\nDbgQ3MOLkJWQsIGIII9nFcKCC7KKsICyBIjoggGWNzVIgIQXA7sgL7rP+rAkUWAF5RASBiQDhMx9\n/ujO2DPTM1M1Mz0zNfP9nNMn3b+6fetW367K/PpW3YqUEpIkSZKkvq+utxsgSZIkScrGBE6SJEmS\nCsIETpIkSZIKwgROkiRJkgrCBE6SJEmSCsIETpIkSZIKIlMCFxFDI+KFiJhXfr0kIh6LiJURcWJF\nuekR8Uj5cUhHcUmSJElSdltlLDcXeLLidQKOTSm9uCUQEXXAImB6OXQvsKJaPCJWJm9AJ0mSJEm5\ndDgCFxHDgRnAXUBULmpRdDLwXEqpIaXUAKyNiMnV4sCkbmm9JEmSJA0gWUbgFgBXAuMrYm8CN0XE\nemBhSmkNMBZ4PSIuK5epB8ZRSvSqxVd3Q/slSZIkacBoN4GLiNHAJ1NKF0fESVviKaUF5eV7AJcC\ns4DXgG2AeZSStquBdZRG+arFq3rggQc8tVKSJEnSgDZt2rSWZzwCHY/AfQLYOiJuBnYCtoqIB1NK\n/11e/jawqfx8LTCl4r2TU0prImJQtXh7K506dWoHzZIkSZKk/umpp55qc1m7CVxKaRmwDKA82+SI\nlNJ/R8SPgQ9QOpVyfrns5ohYBNxXfvv57cUlSZIkSflknYWSlNIPKp7PbqPMcmB51rgkSZIkKTtv\n5C1JkiRJBWECJ0mSJEkFkfkUSkmSJEk9a926dbz77ru93QzVwLbbbsuQIUNyv88ETpIkSeqD/vSn\nPxERbL/99r3dFHWzxsZGXnrpJcaPH587ifMUSkmSJKkPqq+vZ+zYsb3dDNVAXV0dH/zgB1m3rs3b\nY7f93hq0R5IkSVIXRQQRVe/lrH6grq5zqZgJnCRJkiQVhAmcJEmSJBWECZwkSZKkVh5++GFmzpzJ\n5z73OU444QRSStx+++18+tOf5rDDDuOOO+4A4MUXX+TDH/4wb731FgBHHnkkGzdurFrHFpVlKk2b\nNq3q8xUrVnDooYfy2c9+luuuu64pvnjxYvbdd1/23nvvZvG87SwSZ6GUJEmS1MzGjRu58MILuf32\n2xk5ciTvvfceb775JldddRXLli0jIpg5c2ZTkhUR3HjjjZx22mlt1rFp06ZOt+fiiy/mtttuY9So\nUc3ic+bMYcSIEWzcuJFTTjkFgDfeeCNXO4vGEThJkiRJzTzxxBMcdNBBjBw5EoCtttqKX/7ylxxy\nyCEMHTqUIUOGcNBBB/Hkk08SERx44IEsX76czZs3A5BSalXH4MGDO92ej370o9xxxx2klKour4zn\naWcRmcBJkiRJambdunWMGzeuWWzDhg3NbmswduxY1q9fD5RmVDziiCO48847262js77zne8wdOhQ\nvvCFL/DLX/6y3bJ521k0JnCSJEmSmtluu+149dVXm8XGjBnTlAgBrF+/vlmCdtxxx/GjH/2o3To6\nq66ujtmzZ3Pddddx7rnntls2TzvbGtHry0zgJEmSJDWz11578fDDD/PGG28ApevK9tprLx566CHe\nffdd3nnnHR566CH23HPPpiRo+PDhfPzjH+dXv/oVEcGee+7ZrI76+vpm66iWPL3zzjs0NDTwxhtv\nNLtPWmNjY9O/W563VU/edhaNk5hIkiRJamb48OF84xvf4Atf+AJ1dXVsvfXWXH/99Zx66qnMnDmT\niGDu3Lm8733vY8OGDU2J0Jw5c/je974HwIgRI5rVMXToUJYsWcKIESMAOO2005qStCVLlgBw5pln\ncsQRRxARnHXWWU3t+frXv85//dd/sXnzZs4///ym+OLFi7n22mtJKRERnHLKKYwaNSpXO4sm+tqw\n4QMPPJCmTp3a282QJEmSetXLL7/M9ttv39vNUA211cdPPfUU06ZNqzo86CmUkiRJklQQJnCSJEmS\nVBAmcJIkSZJUECZwkiRJklQQJnCSJEmSVBB99jYC9Rs2Ur+hoVV89JhhjB4zvBdaJEmSJEm9qw8n\ncA3csviJVvFj5uxtAidJkqQB6Y9vvsMrb75bs/rHv28IE943tGb1q+syJXARMRR4DvhWSumqiJgO\nnFdefF5KaUW5XK64JEmSpOxeefNdzl62pmb1X3r4pEwJ3GuvvcZZZ53F888/z4gRIxgzZgw//OEP\naWhoYMGCBTz33HM0NjZy1llnMWvWLABuuukmLrroIp555hkGDx7MXXfdxfLly7nqqqsAmDlzJm+8\n8UbTjb5nzJjBwoULAXj88cc5//zzefrpp9ltt92YO3cuRx11FAAXX3wxS5cu5QMf+AANDQ3st99+\n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\ns/z+979vFn/++edbjWJt8dJLL/HhD3+46fXIkSN577332LRpU1Ns7ty5fP/736+aOD3xxBMceeSR\nHHnkkZx++umtlrc1WtjQ0MCRRx7JrrvuyrPPPssVV1zRbPns2bM5/fTTm07zbGudJ5xwQtX6AaZO\nncpvfvObNpd3hqdQSpIkSeo28+bN44orriAico9atWXChAlMnTqVu+++u9Wyvffem5tvvjl3ncOG\nDePuu+9m4cKFDB06tGlEcIspU6awcOFCDj/8cO67775miWDWdXZlm9viCJwkSZKkzAYPHsy7777b\n9LoysYkIZs2axapVq3j11Veblu20006sXr26an0TJ07khRdeaHr95ptvstVWWzF48OBm9S5YsIB/\n+Zd/6e7N4etf/zr/9m//VrV9s2fPbjrtszOefPJJPvrRj3alea2YwEmSJEnKbJddduHRRx8F4Jln\nnmGnnXZqWpZSoq6ujjlz5vCzn/2sKX788cdz7bXXsn79egA2bdrESy+9BMC0adNYtWpV0+sbbriB\nWbNmtVrvTjvtxI477siaNWtytbejUbCxY8fyla98hXPOOSdXvR155ZVXuOCCC/jyl7/crfV6CqUk\nSZKkzM4880xOO+007rnnHt57771msztuGXE77rjj+Na3vtUUnzJlCmeddRZHHXUUQ4cOJaXEqaee\nytFHH83IkSO55JJLOO6446irq2OHHXbgyiuvbFXnlnXfddddzZa1dY0bNL+NwNq1a5vdRqDSF7/4\nRW688Ub+/d//naOPPrrd7Y8IHn/8cQ4//PCm2K233sqIESOals2YMYPGxkbOOecc9t5773bryytq\ncV5mVzzwwANp6tSpvPjb16re4+KYOXuzw87jeqFlkiRJUs95+eWX2X777ZvFvJF3/1KtjwGeeuop\npk2bVjUzdQROkiRJKojRY4abYA1wXgMnSZIkSQVhAidJkiRJBWECJ0mSJEkFYQInSZIk9UEppZrc\nCFp9Q2NjY6feZwInSZIk9UGjR49uum+a+pfGxkZeeukltt1229zv7XAWyoi4EDgAaAS+lFL6bUQs\nAXYB3gaWpJR+UC47HTiv/NbzUkor2otLkiRJqm7kyJG8/fbbvPzyy73dFNXA+PHjGTJkSO73dZjA\npZT+ASAiPgF8FTgVSMCxKaUXt5SLiDpgETC9HLoXWFEtHhErk+PBkiRJUrs6M0Kj/i3PfeD2A/5f\nxeuWN5abDDyXUmoAiIi1ETGZ0mmazeLAJGB1p1stSZIkSQNQpgQuIh4GJgAHlkNvAjdFxHpgYUpp\nDTAWeD0iLiuXqQfGUUr0qsVN4CRJkiQph0wJXErpoIjYB/gBcGhKaQFAROwBXArMAl4DtgHmUUra\nrgbWURqBqxaXJEmSJOWQ5xTKP1K69q3S28Cm8vO1wJSKZZNTSmsiYlC1eO6WSpIkSdIAl2UWyqXA\ntpSStdPLsR8DH6B0KuV8gJTS5ohYBNxXfuv57cUlSZIkSflkmYXy2Cqx2W2UXQ4szxrvLvUbNlK/\noaFZbPSYYYweM7xWq5QkSZKkHpfnFMo+q35DA7csfqJZ7Jg5e5vASZIkSepX6nq7AZIkSZKkbEzg\nJEmSJKkgTOAkSZIkqSBM4CRJkiSpIEzgJEmSJKkgTOAkSZIkqSBM4CRJkiSpIEzgJEmSJKkgTOAk\nSZIkqSBM4CRJkiSpIEzgJEmSJKkgTOAkSZIkqSBM4CRJkiSpIEzgJEmSJKkgTOAkSZIkqSBM4CRJ\nkiSpIEzgJEmSJKkgTOAkSZIkqSBM4CRJkiSpIEzgJEmSJKkgTOAkSZIkqSBM4CRJkiSpIDpM4CLi\nwohYERH3R8TO5dj0iHik/DikomyuuCRJkiQpu606KpBS+geAiPgE8NWImAssAqaXi9wLrIiIuqzx\niFiZUkrdtxmSJEmS1P91mMBV2A/4f8Bk4LmUUgNARKyNiMmURvMyxYFJwOru2wxJkiRJ6v8yJXAR\n8TAwATgQ2Bl4PSIuKy+uB8YBkTNuAidJkiRJOWRK4FJKB0XEPsAPgAXANsA8SsnZ1cA6SiNteeKS\nJEmSpBzynEL5RyABa4ApFfHJKaU1ETEoT7zTLZYkSZKkAarDBC4ilgLbAm8Dp6eUGiNiEXBfucj5\nACmlzXnikiRJkqR8ssxCeWyV2HJgeVfjkiRJkqTsvJG3JEmSJBWECZwkSZIkFYQJnCRJkiQVhAmc\nJEmSJBWECZwkSZIkFYQJnCRJkiQVhAmcJEmSJBWECZwkSZIkFYQJnCRJkiQVhAmcJEmSJBWECZwk\nSZIkFYQJnCRJkiQVhAmcJEmSJBWECZwkSZIkFYQJnCRJkiQVhAmcJEmSJBWECZwkSZIkFYQJnCRJ\nkiQVhAmcJEmSJBWECZwkSZIkFYQJnCRJkiQVhAmcJEmSJBWECZwkSZIkFUSHCVxEfD8iVkbEQxGx\n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\ndR0AAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x108379080>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"_lab_subset = lab_subset.replace({\"CONCLUSION\": {\"CLINICAL\": \"UNCONFIRMED\"}})\n",
"by_conclusion = _lab_subset.groupby([\"YEAR_AGE\", \"CONCLUSION\"])\n",
"counts_by_cause = by_conclusion.size().unstack().fillna(0)\n",
"ax = counts_by_cause.plot(kind='bar', stacked=True, xlim=(0,50), figsize=(15,5), grid=False)"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"(39982, 16)"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lab_subset.shape"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"22097"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"y.sum()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Proportion of lab-confirmed cases older than 20 years"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"0.60257048468117846"
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"(measles_data[CONFIRMED].YEAR_AGE>20).mean()"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[0, 5, 10, 15, 20, 25, 30, 35, 40, 100]"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"age_classes"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"Index(['[0, 5)', '[5, 10)', '[10, 15)', '[15, 20)', '[20, 25)', '[25, 30)',\n",
" '[30, 35)', '[35, 40)', '[40, 100)'],\n",
" dtype='object')"
]
},
"execution_count": 30,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#Extract cases by age and time.\n",
"age_group = pd.cut(age, age_classes, right=False)\n",
"age_index = np.array([age_group.categories.tolist().index(i) for i in age_group])\n",
"age_groups = age_group.categories\n",
"age_groups"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"age_slice_endpoints = [g[1:-1].split(',') for g in age_groups]\n",
"age_slices = [slice(int(i[0]), int(i[1])) for i in age_slice_endpoints]"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"# Get index from full crosstabulation to use as index for each district\n",
"dates_index = measles_data.groupby(\n",
" ['ONSET', 'AGE_GROUP']).size().unstack().index"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"unique_districts = measles_data.DISTRICT.dropna().unique()"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"excludes = ['BOM RETIRO']"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"0 a 4 anos 844130\n",
"5 a 9 anos 830880\n",
"10 a 14 anos 858750\n",
"15 a 19 anos 904972\n",
"20 a 24 anos 945244\n",
"25 a 29 anos 902086\n",
"30 a 34 anos 835888\n",
"35 a 39 anos 764605\n",
"40 a 44 anos 662946\n",
"45 a 49 anos 538872\n",
"50 a 54 anos 437744\n",
"55 a 59 anos 332195\n",
"60 a 64 anos 282850\n",
"65 a 69 anos 218202\n",
"70 a 74 anos 164842\n",
"75 anos e + 203482\n",
"dtype: float64"
]
},
"execution_count": 35,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"N = sp_pop.drop(excludes).ix[unique_districts].sum().drop('Total')\n",
"N"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[0, 5) 844130\n",
"[5, 10) 830880\n",
"[10, 15) 858750\n",
"[15, 20) 904972\n",
"[20, 25) 945244\n",
"[25, 30) 902086\n",
"[30, 35) 835888\n",
"[35, 40) 764605\n",
"[40, 100) 2841133\n",
"dtype: float64"
]
},
"execution_count": 36,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"N_age = N.iloc[:8]\n",
"N_age.index = age_groups[:-1]\n",
"N_age[age_groups[-1]] = N.iloc[8:].sum()\n",
"N_age"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Compile bi-weekly confirmed and unconfirmed data by Sao Paulo district"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"sp_counts_2w = lab_subset.groupby(\n",
" ['ONSET', 'AGE_GROUP']).size().unstack().reindex(dates_index).fillna(0).resample('2W', how='sum')\n",
"\n",
"# All confirmed cases, by district\n",
"confirmed_data = lab_subset[lab_subset.CONCLUSION=='CONFIRMED']\n",
"confirmed_counts = confirmed_data.groupby(\n",
" ['ONSET', 'AGE_GROUP']).size().unstack().reindex(dates_index).fillna(0).sum()\n",
"\n",
"all_confirmed_cases = confirmed_counts.reindex_axis(measles_data['AGE_GROUP'].unique()).fillna(0)"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"# Ensure the age groups are ordered\n",
"I_obs = sp_counts_2w.reindex_axis(measles_data['AGE_GROUP'].unique(), \n",
" axis=1).fillna(0).values.astype(int)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Check shape of data frame\n",
"\n",
"- 28 bi-monthly intervals, 9 age groups"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"assert I_obs.shape == (28, len(age_groups))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Prior distribution on susceptible proportion:\n",
"\n",
"$$p_s \\sim \\text{Beta}(2, 100)$$"
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"(array([ 3.54700000e+03, 3.56100000e+03, 1.77800000e+03,\n",
" 7.17000000e+02, 2.53000000e+02, 1.05000000e+02,\n",
" 2.40000000e+01, 1.00000000e+01, 4.00000000e+00,\n",
" 1.00000000e+00]),\n",
" array([ 1.19543150e-04, 1.23316291e-02, 2.45437151e-02,\n",
" 3.67558011e-02, 4.89678870e-02, 6.11799730e-02,\n",
" 7.33920590e-02, 8.56041450e-02, 9.78162309e-02,\n",
" 1.10028317e-01, 1.22240403e-01]),\n",
" <a list of 10 Patch objects>)"
]
},
"execution_count": 40,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nA/t6s4qyIgE6AAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x106725b00>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from pymc import rbeta\n",
"plt.hist(rbeta(2, 100, 10000))"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([[ 1, 3, 0, 1, 0, 0, 0, 0, 1],\n",
" [ 4, 13, 7, 18, 1, 2, 0, 1, 4],\n",
" [ 3, 12, 2, 14, 0, 1, 1, 2, 5],\n",
" [ 4, 10, 2, 17, 0, 2, 2, 2, 2],\n",
" [ 6, 15, 7, 19, 1, 3, 1, 7, 6],\n",
" [ 19, 27, 20, 34, 0, 7, 2, 13, 8],\n",
" [ 9, 27, 6, 26, 1, 1, 1, 6, 8],\n",
" [ 13, 27, 13, 20, 1, 4, 2, 5, 2],\n",
" [ 28, 32, 16, 21, 2, 6, 1, 9, 9],\n",
" [ 42, 39, 46, 31, 6, 17, 2, 13, 18],\n",
" [ 93, 69, 72, 40, 4, 18, 6, 19, 26],\n",
" [ 157, 95, 153, 64, 12, 47, 5, 31, 42],\n",
" [ 359, 183, 315, 169, 26, 95, 18, 76, 68],\n",
" [ 807, 363, 622, 282, 65, 234, 34, 162, 136],\n",
" [1168, 660, 1035, 388, 87, 398, 63, 257, 166],\n",
" [1442, 913, 1193, 536, 137, 430, 48, 318, 292],\n",
" [1350, 1051, 1255, 643, 116, 476, 68, 366, 339],\n",
" [1314, 933, 1261, 525, 160, 474, 91, 448, 339],\n",
" [1218, 773, 1061, 444, 146, 458, 75, 424, 320],\n",
" [ 712, 485, 629, 292, 80, 262, 67, 267, 214],\n",
" [ 368, 295, 382, 187, 47, 163, 26, 122, 92],\n",
" [ 181, 162, 192, 130, 27, 97, 10, 43, 65],\n",
" [ 122, 151, 88, 102, 14, 43, 10, 27, 36],\n",
" [ 72, 95, 63, 64, 6, 36, 2, 15, 18],\n",
" [ 32, 46, 39, 52, 7, 15, 2, 20, 14],\n",
" [ 20, 42, 30, 42, 2, 9, 2, 8, 17],\n",
" [ 7, 23, 5, 15, 1, 4, 3, 3, 7],\n",
" [ 1, 1, 2, 1, 0, 1, 0, 0, 0]])"
]
},
"execution_count": 41,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"I_obs"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"obs_date = '1997-12-01' #'1997-06-15'\n",
"obs_index = sp_counts_2w.index <= obs_date\n",
"I_obs_t = I_obs[obs_index]"
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 0.24959899, 0.16916038, 0.22193589, 0.1069447 , 0.02469168,\n",
" 0.08609219, 0.01406821, 0.06923664, 0.05827132])"
]
},
"execution_count": 43,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.sum(I_obs_t, (0)) / float(I_obs_t.sum())"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from pymc import rgamma"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"(array([ 79., 883., 2575., 3032., 2071., 960., 310., 72.,\n",
" 14., 4.]),\n",
" array([ 4.85288825, 7.95871261, 11.06453697, 14.17036133,\n",
" 17.27618569, 20.38201005, 23.48783441, 26.59365877,\n",
" 29.69948313, 32.80530749, 35.91113185]),\n",
" <a list of 10 Patch objects>)"
]
},
"execution_count": 45,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAX4AAAEBCAYAAAB/rs7oAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAADu1JREFUeJzt3UGInOd9x/HvTxJSk6BUlVwsXwoRWqVHk5QQ4joGeVMS\nQw4+KaekycWpHGQMMb6USguB1OggAkVNDiX2xY0JFHoxaCVriUUxpBCIL0mk3YTYNNhFFhIbkCxH\n/vcwr+h4Ge3u7O7svOL5fmBg5z+veJ99sL8782pnlKpCktSOHdNegCRpexl+SWqM4Zekxhh+SWqM\n4Zekxhh+SWrMquFP8r0kF5NcSHKom72Y5I0kC0m+MXTsbJJL3e3oWnNJ0nRkPb/Hn+QR4OtV9VSS\nHwMnq+qtocd3AJeA2W50rqq+OGoOPFa+eUCSpmbXOo/7PPCroftZ8fgMcLmqbgIkWUoyw+AVxUfm\nwGHgyqZWLUnasDXDn+R14CDwaDdaBl5Ocg14tqoWgf3A9SRnumNuAAcY/IAYNTf8kjQla4a/u2Tz\nOeAl4MtVdQIgycPAaeBJ4D1gH3CcQezPAlcZPOMfNZckTcl6L/W8A6y8Ln8L+KD7egk4MvTYTFUt\nJtk5an6vk7z22mte+5ekDXj88cdXXoK/p1XDn+QV4AEGkf9ON/sJ8BCDSz5PA1TVnSRzwPnuj55a\nbb6az3zmM+tduyQJ+MUvfjHW8auGv6qOjZh97R7HzgPz651LkqbDN3BJUmMMvyQ1xvBLUmMMvyQ1\nxvBLUmMMvyQ1xvBLUmMMvyQ1xvBLUmMMvyQ1xvBLUmMMvyQ1xvBLUmMMvyQ1xvBLUmMMvyQ1xvBL\nUmMMvyQ1xvBLUmMMvyQ1xvBLUmMMvyQ1xvBLUmMMvyQ1ZtXwJ/lekotJLiQ51M1mk1zqbkeHjh1r\nLkmajl2rPVhV/wiQ5BHg+STfBuaA2e6Qc8DFJDvWO0+yUFW1td+GJGm9Vg3/kM8DvwJmgMtVdRMg\nyVKSGQavHNY1Bw4DV7b221DfvbP8Pu8u3574eR7cu5uDe/dM/DzS/WzN8Cd5HTgIPAocAq4nOdM9\nfAM4AGTMueFvzLvLt3nu1cWJn+f0E4cNv7SGNcNfVV9M8jngJeAEsA84ziDqZ4GrDJ7ZjzOXJE3J\nei/1vAMUsAgcGZrPVNVikp3jzDe1YknSpqwa/iSvAA8At4DvVNWHSeaA890hpwCq6s44c0nS9Kz1\nWz3HRszmgfnNziVJ0+EbuCSpMYZfkhpj+CWpMYZfkhpj+CWpMYZfkhpj+CWpMYZfkhpj+CWpMYZf\nkhpj+CWpMYZfkhpj+CWpMYZfkhpj+CWpMYZfkhpj+CWpMYZfkhpj+CWpMYZfkhpj+CWpMYZfkhpj\n+CWpMYZfkhqza7UHk/wQ+DSDHxDfrKrfJnmxm90CXqyql7pjZ4GT3R89WVUXV5urH95Zfp93l29P\n/Dy373w48XNIWp9Vw19V3wZIchR4DvgHoIBjVfXW3eOS7ADmgNludA64OGqeZKGqaku/C23Yu8u3\nee7VxYmf5+TspyZ+Dknrs2r4hywD7w/dz4rHZ4DLVXUTIMlSkhkGrxQ+MgcOA1c2tWpJ0oatN/zf\nAn7Qfb0MvJzkGvBsVS0C+4HrSc50x9wADjD4ATFqbvglaUrWDH+SrwK/qapfA1TViW7+MHAaeBJ4\nD9gHHGcQ+7PAVQbP+EfNJUlTstZf7n4WeKyqvjvi4VvAB93XS8CRocdmqmoxyc5R880sWJK0OWs9\n4/8p8HaSBeDNqnomySvAQQaXfJ4GqKo7SeaA892fO7XaXJI0PWv9Vs+hEbNj9zh2Hphf71ySNB2+\ngUuSGmP4Jakxhl+SGmP4Jakxhl+SGmP4Jakxhl+SGmP4Jakxhl+SGmP4Jakxhl+SGmP4Jakxhl+S\nGmP4Jakxhl+SGmP4Jakxhl+SGmP4Jakxhl+SGmP4Jakxhl+SGmP4Jakxhl+SGmP4Jakxu1Z7MMkP\ngU8z+AHxzar6bZJZ4GR3yMmqutgdO9ZcmoTdO8Mv/7A88fM8uHc3B/fumfh5pElYNfxV9W2AJEeB\n55IcB+aA2e6Qc8DFJDvWO0+yUFW1td+GNHDt5p+Yu/C7iZ/n9BOHDb/uW6uGf8gycBuYAS5X1U2A\nJEtJZhi8IljXHDgMXNnab0OStF7rDf+3gB8AB4DrSc508xvdLGPODb8kTcma4U/yVeA3VfXrJEeA\nfcBxBlE/C1xl8Mx+nLkkaUrW+svdzwKPVdV3u9EScGTokJmqWkyyc5z5VixckrQxaz3j/ynwdpIF\n4M2qeibJHHC+e/wUQFXdGWcuSZqetX6r59CI2Twwv9m5JGk6fAOXJDXG8EtSYwy/JDXG8EtSYwy/\nJDXG8EtSYwy/JDXG8EtSYwy/JDXG8EtSYwy/JDXG8EtSYwy/JDXG8EtSYwy/JDXG8EtSYwy/JDXG\n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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1088c5400>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.hist(rgamma(16,1,size=10000))"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"4.1772247118855148"
]
},
"execution_count": 46,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"75./age.mean() "
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"from pymc import MCMC, Matplot, AdaptiveMetropolis, Slicer, MAP\n",
"from pymc import (Uniform, DiscreteUniform, Beta, Binomial, Normal, CompletedDirichlet,\n",
" Poisson, NegativeBinomial, negative_binomial_like, poisson_like,\n",
" Lognormal, Exponential, binomial_like,\n",
" TruncatedNormal, Binomial, Gamma, HalfCauchy, normal_like,\n",
" MvNormalCov, Bernoulli, Uninformative, \n",
" Multinomial, rmultinomial, rbinomial,\n",
" Dirichlet, multinomial_like)\n",
"from pymc import (Lambda, observed, invlogit, deterministic, potential, stochastic,)\n",
"\n",
"def measles_model(obs_date, confirmation=True, spatial_weighting=False, all_traces=True):\n",
" \n",
" n_periods, n_age_groups = I_obs.shape\n",
" \n",
" ### Confirmation sub-model\n",
" \n",
" if confirmation:\n",
"\n",
" # Specify priors on age-specific means\n",
" age_classes = np.unique(age_index)\n",
"\n",
" mu = Normal(\"mu\", mu=0, tau=0.0001, value=[0]*len(age_classes))\n",
" sig = HalfCauchy('sig', 0, 25, value=1)\n",
" var = sig**2\n",
" cor = Uniform('cor', -1, 1, value=0)\n",
"\n",
" # Build variance-covariance matrix with first-order correlation \n",
" # among age classes\n",
" @deterministic\n",
" def Sigma(var=var, cor=cor):\n",
" I = np.eye(len(age_classes))*var\n",
" E = np.diag(np.ones(len(age_classes)-1), k=-1)*var*cor\n",
" return I + E + E.T\n",
"\n",
" # Age-specific probabilities of confirmation as multivariate normal \n",
" # random variables\n",
" beta_age = MvNormalCov(\"beta_age\", mu=mu, C=Sigma, \n",
" value=[1]*len(age_classes))\n",
" p_age = Lambda('p_age', lambda t=beta_age: invlogit(t))\n",
"\n",
" @deterministic(trace=False)\n",
" def p_confirm(beta=beta_age):\n",
" return invlogit(beta[age_index])\n",
"\n",
"\n",
" # Confirmation likelihood\n",
" lab_confirmed = Bernoulli('lab_confirmed', p=p_confirm, value=y, \n",
" observed=True)\n",
"\n",
"\n",
" '''\n",
" Truncate data at observation period\n",
" '''\n",
" obs_index = sp_counts_2w.index <= obs_date\n",
" I_obs_t = I_obs[obs_index] \n",
" \n",
"\n",
" # Index for observation date, used to index out values of interest \n",
" # from the model.\n",
" t_obs = obs_index.sum() - 1\n",
" \n",
" if confirmation:\n",
" \n",
" @stochastic(trace=all_traces, dtype=int)\n",
" def I(value=(I_obs_t).astype(int), n=I_obs_t, p=p_age):\n",
" # Binomial confirmation process\n",
" return np.sum([binomial_like(x, x.sum(), p) for x in value])\n",
"\n",
" else:\n",
" \n",
" I = I_obs_t\n",
" \n",
" assert I.shape == (t_obs +1, n_age_groups)\n",
" \n",
" # Transmission parameter\n",
" beta = HalfCauchy('beta', 0, 25, value=8) \n",
"\n",
"# # Downsample annual series to observed age groups\n",
"# downsample = lambda x: np.array([x[s].mean() for s in age_slices])\n",
" \n",
"# A = Lambda('A', lambda beta=beta: 75./(beta - 1))\n",
"# lt_sum = downsample(np.tril(FOI_mat).sum(0)[::-1])\n",
"# natural_susc = Lambda('natural_susc', lambda A=A: np.exp((-1/A) * lt_sum))\n",
" \n",
"\n",
" natural_susc = Beta('natural_susc', 1, 1, value=[0.02]*n_age_groups)\n",
" @deterministic\n",
" def p_susceptible(natural_susc=natural_susc): \n",
" return downsample(sia_susc) * downsample(vacc_susc) * natural_susc\n",
" \n",
" # Estimated total initial susceptibles\n",
" S_0 = Binomial('S_0', n=N_age.astype(int), p=p_susceptible)\n",
"\n",
" S = Lambda('S', lambda I=I, S_0=S_0: S_0 - I.cumsum(0))\n",
" \n",
" # Check shape\n",
" assert S.value.shape == (t_obs+1., n_age_groups)\n",
"\n",
" S_t = Lambda('S_t', lambda S=S: S[-1]) \n",
" \n",
" # Force of infection\n",
" @deterministic\n",
" def lam(beta=beta, I=I, S=S): \n",
" return (beta * I.sum(1) * (S / N_age.values).T).T\n",
" \n",
" # Check shape\n",
" assert lam.value.shape == (t_obs+1, n_age_groups)\n",
" \n",
" # Poisson likelihood for observed cases\n",
" @potential\n",
" def new_cases(I=I, lam=lam):\n",
" return negative_binomial_like(I[1:], lam[:-1], I[:-1]+1)\n",
" \n",
"\n",
" return locals()"
]
},
{
"cell_type": "code",
"execution_count": 59,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"iterations = 500000\n",
"burn = 400000"
]
},
{
"cell_type": "code",
"execution_count": 60,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" [-----------------100%-----------------] 500000 of 500000 complete in 981.2 sec"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/Users/fonnescj/GitHub/pymc/pymc/StepMethods.py:1272: UserWarning: \n",
"Covariance was not positive definite and proposal_sd cannot be computed by \n",
"Cholesky decomposition. The next jumps will be based on the last \n",
"valid covariance matrix. This situation may have arisen because no \n",
"jumps were accepted during the last `interval`. One solution is to \n",
"increase the interval, or specify an initial covariance matrix with \n",
"a smaller variance. For this simulation, each time a similar error \n",
"occurs, proposal_sd will be reduced by a factor .9 to reduce the \n",
"jumps and increase the likelihood of accepted jumps.\n",
" warnings.warn(adjustmentwarning)\n"
]
}
],
"source": [
"M = MCMC(measles_model('1997-06-15', confirmation=True))\n",
"M.use_step_method(AdaptiveMetropolis, M.natural_susc)\n",
"M.sample(iterations, burn)\n"
]
},
{
"cell_type": "code",
"execution_count": 61,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" [-----------------100%-----------------] 500000 of 500000 complete in 968.8 sec"
]
}
],
"source": [
"M.sample(iterations, burn)"
]
},
{
"cell_type": "code",
"execution_count": 62,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nAAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x10c06bda0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"Matplot.summary_plot(M.p_susceptible)"
]
},
{
"cell_type": "code",
"execution_count": 63,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Plotting beta\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/Users/fonnescj/anaconda3/lib/python3.5/site-packages/matplotlib/collections.py:590: FutureWarning: elementwise comparison failed; returning scalar instead, but in the future will perform elementwise comparison\n",
" if self._edgecolors == str('face'):\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAlcAAAFxCAYAAABeJo0yAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xl8VPW9//HXJyFhx0BYRVCRgLuCerWuFahVa+211lKv\ntC61ri1W69bWqtRbRWiLevtTr9Wr1l1vtVI39mtRcUVFRVYREGQJENaQhOT7+2NmwiQ5M2cmOcmZ\nk7yfjwea+c53zvme70zmfPL9fs73mHMOEREREQlGXtgNEBEREWlNFFyJiIiIBEjBlYiIiEiAFFyJ\niIiIBEjBlYiIiEiAFFyJiIiIBEjBlYiIiEiAGh1cmdn9ZjbLzF43s0HxskfMbE68/PzgmikikvJ7\nZ5SZzY7/G5FUN5ByEZFsWVMXEY1/CZ3jnLvczB4GbnHOrQikdSIiHhLfO8AVwBvAqPhTU5xzJ5pZ\nHjC7KeXASU6rLItII7QLYBtbgYqkxxbANkVE0tkKVAIlwCLnXDmAmS01sxJio/JNKgcGA4tb+LhE\npBUIIri6CLg7/vNW4Ekz2whc7ZxbEsD2RUTqS3zvFANlZjYpXr45XmYBlSu4EpGsNSm4MrPvAgud\ncwsAnHNj4+WHAxOBs1K9dsaMGRpuF2ljRo4c2eSR7eTvHTMbAhQRmx404F6glNhIVBDlnvT9JdI2\nZfod1ujgysyOIJaTcK3H0zuBKr9tDB8+vLG7F5GImTt3bpO34fG9sxQYklSlxDm3xMzygyhP15a2\n8v21YlM5t89annH9y7/Rn8P6da193KNHDwA2btwYeNtEWlI232FNGbl6DlhpZrOAec65q8zsGaAv\nsenBK5uwbRERL17fO+OAafHnbwVwzlUHUZ7L7rnnHgDGjh3brPtxwBcbyzOuX1nd+gf1WqrvJboa\nHVw55wZ5lI1uWnNERFJL8b0zFZjaXOW5Sif28KjvxY8WERUREREJkIIrERERkQApuBIRiaB77rmn\nNvdHWpb6XvwEsc6ViIi0MOX9hEd9L340ciUiIiISIAVXIiIiIgFScCUiEkHK+wmP+l78RDLnasWK\nFTz44IP8/ve/9637xhtvsGDBAi6++OKs99OU14qINCfl/YRHfS9+IhlcAbz//vtMmDCBBQsWcPfd\nd9O1a1f+/Oc/s2XLFsrKyrjtttsoLCzkiSeeoLS0lKqqKi6//HIAHn30UVatWsXChQt56KGHaNeu\nYTdUVFR4vvbKK6+kf//+lJaWct1119GvXz/P7d11112UlZVRWFjINddcQ4cOHRq0r2vXrg32KyIi\nItEWyeDKzBg2bBjXX389kydPZsqUKRxyyCHMmTOHE044gaqqKj777DOOOeYYxowZw+eff15n9Gn0\n6NF8/PHHLFq0iGXLllFSUtJgH+3bt/d8LcCYMWMYOHBgyu2ZGWVlZdx66621dRYsWODZPhEREWld\nIhlcAVRXVwNQVVVFQUEB+fn5DBw4sMFwrZlRU1NT+7i8vJxLLrmEa665hl69erFr166U+6j/2oTi\n4uK02ysoKGjwunbt2nm2T0SkMXR/u/Co78VPZIOrefPmcfvtt7N8+XLuuece2rdvT8+ePfnd735H\nly5duOSSS+jevTuDBg1i4sSJrF27lp///Od07twZ5xyTJ09mzZo17NixI+U+6r+2e/fuDerk5+c3\n2N4RRxxBUVER48aNo1OnTlx22WUMHjzYs30iIo2hE3t41Pfix5wL5w7mM2bMcMOHDw9l3yLS8ubO\nncvIkSMt7HYEIcjvr5EjRzJjxoysXvPoo49y/vnnN9t+t23bxv3338+1117L8k3l/OzvC9Jua/07\nL9Pr6O8A8IdT9+OovbrVPtejRw8ANm7c2KT2ioQtm+8wLcUgIhIxf/vb35p1+126dOHaa6/NuP76\nd15uxtaIRI+CKxGREG3bto1f/OIXjBo1ivHjx9eWT58+nW9/+9uceuqpTJ48ubb88ssvZ/HixQwf\nPpyzzz67tvyJJ57gvPPO4/jjj+e///u/ffdbWVnJTTfdxLe+9S1uu+222vKnnnqKM888k5EjR9ap\nv+6tF5l/9+UsuPcq1r/9Um35sqfHs3P9Shbefw2rpz/WqD6IGq1zJX40LSgiLULTgt4OO+ww3nzz\nTTp37szpp5/Oww8/TO/evfnmN7/Jq6++Svv27fne977H888/T/v27QHvKb3ExT0VFRWMGjWK2bNn\np93vwQcfzMyZMykuLubEE0/kzTffrPN8Yh+JacGF91/Dfj8ZR7tODZeQmX/PFRw49l4ALjyyH/v2\n6Fj73OmH7wvAKx8t82zH3kUd6NetvU8viYQvm++wyCa0S7TdN+crLjiyHx0L8sNuikioevbsSZcu\nXQA49NBDWb16Nfn5+axevZpzzz0XgM2bN7NmzRr23nvvlNt56623mDJlCp07d6a8vNx3v3369KF3\n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\nB+OH4xl6WvOeAAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1088b6e80>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"Matplot.plot(M.beta)"
]
},
{
"cell_type": "code",
"execution_count": 64,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nw8nMzJLz/wGopg42JQuLXgAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x10735c3c8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"Matplot.summary_plot(M.p_age)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.5.0"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment