{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# eypsurv\n", "This notes demonstrates the basic usage of `epysurv`" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import sys\n", "sys.path.append(\"..\")" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import pandas as pd\n", "from epysurv import data as epidata" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "plt.rc(\"figure\", figsize=(16, 8))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's first get some data and plot it. We use the case counts of Salmonella Newport from Germany between 2004 and 2013. The data is already split into training and test set. We see that there are no outbreaks in the training set, but some around the end of 2011 in the test set." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
n_casesn_outbreak_casesoutbreak
2004-01-0500False
2004-01-1200False
2004-01-1920False
2004-01-2620False
2004-02-0210False
\n", "
" ], "text/plain": [ " n_cases n_outbreak_cases outbreak\n", "2004-01-05 0 0 False\n", "2004-01-12 0 0 False\n", "2004-01-19 2 0 False\n", "2004-01-26 2 0 False\n", "2004-02-02 1 0 False" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train, test = epidata.salmonella()\n", "train.head()" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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rtV1112nrl27auDAgWrYsKF27dqlPn36SJIaN26st956S/v27dMzzzyj6667TvXr19dvfvMbv3P56KOPasCAAVWf9fTUtGlTjRs3Trfddpu+853v+AznAAAAAGoHK5xfyQxXZmamXVRUVO2+Xbt26dZbb41ZDbj2cI4BAAAkvtyVudVuLxiwIE6VIBKWZRXbtp3pfT+/agsAAAAAMIpftfVj/Pjx+uijj6rdN2HCBOXm5vrZI/GcPHlS/fr1q3H/6tWr1aJFi5jVMWzYsKpf23WbPXu2+vfvH7MaAAAAAMQPwdOPefPmxbuEiLVo0UIulyveZWj58uXxLgEAAABAHPGrtgAAAAAAowieAAAAAACjCJ4AAAAAAKMInrXQunXrtHHjxrD2PXjwoN5+++0oVwQAAAAA/hE8ayGCJwAAAIDahOCpK2Hs1ltv1bhx49S1a1fde++9qqio8Lntvn379IMf/EDdunXT9773PX3++ecqLy9Xv3799L3vfU9paWkqKCiQJH377bcaPHiwunXrpttuu01LliyRJBUXF+uuu+5Sjx491L9/fx09elSSNHfuXHXp0kXp6ekaNWqU31pfe+01vfLKK8rIyNCGDRt0/Phx/fCHP1TPnj3Vs2fPqjYwH374oTIyMpSRkaHu3bvrzJkzmjJlijZs2KCMjAy98sor0Z5KAAAAAKghodqpzN48W6VlpVE9ZufmnTW51+Sg2+3du1fvvPOOfve732nEiBFatmyZxowZU2O70aNHa8qUKRo2bJgqKyt1+fJlNWjQQMuXL9cNN9ygEydO6Pbbb9f999+vlStXqm3btnr//fclSadOndKFCxf0xBNPqKCgQK1atdKSJUv0/PPPa/78+XrppZd04MABNWzYUN98843POjt06KDHHntMjRs31tNPPy1Jevjhh/Xv//7v6tu3r7788kv1799fu3btUl5enubNm6esrCyVl5crOTlZL730kvLy8vTee+9FMKsAAAAA4FxCBc946tixozIyMiRJPXr00MGDB2tsc+bMGR0+fFjDhg2TJCUnJ0uSLly4oOeee07r16/Xddddp8OHD+vYsWNKS0vTU089pcmTJ2vIkCG68847tX37dm3fvl333HOPJOnSpUtq06aNJCk9PV2jR4/WAw88oAceeMBx7R988IF27txZdfv06dMqLy9XVlaWJk6cqNGj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wRMAAAAAYBTBEwAAAABgFMETAAAAAGAUwRMAAAAAYBTBEwAAAABgFMETAAAAAGAUwRMAAAAAYBTBEwAAAABgVNDgaVlWsmVZmy3L2mJZ1g7LsmZcvb+jZVmbLMvaZ1nWEsuyGpgvFwAAAABQ2zh5x/OcpLtt2+4mKUPSAMuybpc0W9Irtm3/X0l/l/SIuTIBAAAAALVV0OBpX1F+9Wb9q//Zku6WtPTq/QslPWCkQgAAAABAreboM56WZSVZluWS9LWk/5X0uaRvbNu+eHWTQ5La+dn3UcuyiizLKjp+/Hg0agYAAAAA1CKOgqdt2yks7f8AACAASURBVJds286Q1F5SL0mdnQ5g2/brtm1n2rad2apVqzDLBAAAAADUViH9VVvbtr+RtFZSH0lNLcuqd/Vb7SUdjnJtAAAAAIA6wMlftW1lWVbTq1+nSLpH0i5dCaAPXt1srKQCU0UCAAAAAGqvesE3URtJCy3LStKVoPqubdvvWZa1U9IfLMuaJekzSb83WCcAAAAAoJYKGjxt294qqbuP+/fryuc9AQAAAADwK6TPeAIAAAAAECqCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwKigwdOyrH+yLGutZVk7LcvaYVnWhKv3N7cs638ty9p79f/NzJcLAAAAAKhtnLzjeVHSU7Ztd5F0u6TxlmV1kTRF0mrbtv9Z0uqrtwEAAAAAqCZo8LRt+6ht2yVXvz4jaZekdpKGSlp4dbOFkh4wVSQAAAAAoPYK6TOelmV1kNRd0iZJrW3bPnr1W19Jau1nn0ctyyqyLKvo+PHjEZQKAAAAAKiNHAdPy7IaS1om6d9s2z7t+T3btm1Jtq/9bNt+3bbtTNu2M1u1ahVRsQAAAACA2sdR8LQsq76uhM7Ftm3/z9W7j1mW1ebq99tI+tpMiQAAAACA2szJX7W1JP1e0i7btn/p8a0/SRp79euxkgqiXx4AAAAAoLar52CbLEk/krTNsizX1fuek/SSpHcty3pE0heSRpgpEQAAAABQmwUNnrZt/1WS5efb/aJbDgAAAACgrgnpr9oCAAAAABAqgicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAADAKIInAAAAAMAogicAAAAAwCiCJwAAAICEsrtst3JX5ip/T368S0GU1It3AQAAAADgNujmQZKuhE9JyumUE89yECW84wkAAAAgYeR0ytGCAQuU2jw13qUgigieAAAAAACjCJ4AAAAAAKMIngAAAAAAowieAAAAAACjCJ4AAAAAAKMIngAAAAAAowieAAAAAACjCJ4AAAAAAKMIngAAAAAAowieAAAAAACjCJ4AAAAAAKMIngAAAAAAowieAAAAAACjCJ4AAAAAAKMIngAAAAAAowieAAAAAACjCJ4AAAAAAKMIngAAAAAAowieAAAAAACjCJ4AAAAAAKMIngAAAAAAowieAAAAAACj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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "train.add_suffix(\"_train\").plot(drawstyle=\"steps-post\", ax=ax)\n", "test.add_suffix(\"_test\").plot(drawstyle=\"steps-post\", ax=ax)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Next we import some classical models: `EarsC1` and `FarringtonFlexible`. The API works really similiar to `scikit-learn`. Finally, we plot the predictions." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "from epysurv.models.timepoint import EarsC1, FarringtonFlexible\n", "from epysurv.visualization.model_diagnostics import plot_prediction, plot_confusion_matrix\n", "from sklearn.metrics import confusion_matrix" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "input \n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
n_casesn_outbreak_casesoutbreakalarm
2011-01-0310FalseFalse
2011-01-1000FalseFalse
2011-01-1730FalseFalse
2011-01-2430FalseFalse
2011-01-3130FalseFalse
\n", "
" ], "text/plain": [ " n_cases n_outbreak_cases outbreak alarm\n", "2011-01-03 1 0 False False\n", "2011-01-10 0 0 False False\n", "2011-01-17 3 0 False False\n", "2011-01-24 3 0 False False\n", "2011-01-31 3 0 False False" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model = EarsC1()\n", "model.fit(train)\n", "pred = model.predict(test)\n", "pred.head()" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
n_casesn_outbreak_casesoutbreakalarm
2011-08-0150FalseTrue
2011-10-3190FalseTrue
2011-11-074112TrueTrue
2012-06-1140FalseTrue
2012-06-2560FalseTrue
\n", "
" ], "text/plain": [ " n_cases n_outbreak_cases outbreak alarm\n", "2011-08-01 5 0 False True\n", "2011-10-31 9 0 False True\n", "2011-11-07 41 12 True True\n", "2012-06-11 4 0 False True\n", "2012-06-25 6 0 False True" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pred.query(\"alarm != 0\")" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAtYAAAHpCAYAAACm1HsjAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO3dfbxUZb3///eHDftGOQIGComyNTVEK0jSgGyj1veklNrXOnmTIqUc0Uy/pzza43d2WWSd1NDKmyMnBSlROd2YmWKkgodCjyDbUsl7MQwURVQ8wAb29ftjZsHaa6+5WTPXzJrZ+/V8POaxZ9btZ12zZs2HizWfy5xzAgAAAFCefmkHAAAAAPQGJNYAAACAByTWAAAAgAck1gAAAIAHJNYAAACAByTWAAAAgAf90w7Al6FDh7rW1ta0wwAAAEAvtmLFitedc8Pi5vWaxLq1tVXLly9POwwAAAD0Yma2Otc8bgUBAAAAPCCxBgAAADwgsQYAAAA8ILEGAAAAPCCxBgAAADwgsQYAAAA8ILEGAAAAPOg1dayLsWXLFq1fv15btmzR9u3b0w4HNah///5qbm7WsGHD1NzcnHY4AACgjvSZxPqtt97Sq6++qmHDhmn48OHq37+/zCztsFBDnHPavn27Nm3apJdffll77723Bg0alHZYAACgTvSZxPr111/XyJEjtdtuu6UdCmqUmWnAgAEaMmSImpqatG7dOhJrAABQtD5zj3VnZ6daWlrSDgN1oqWlRVu3bk07DAAAUEf6TGItiVs/UDTOFQAAkFSfSqwBAACASiGxBgAAADwgse6jJk+erMmTJ6cdBgAAQK9BYu3J2nfWqm1um9ZtWpd2KAAAAEgBibUnMx+aqaUvL9XMJTPTDgUAAAApILH2YO07azWnY466XJfmdMzpk73WW7duZTRLAABKMHu2NHly5i/qG4m1BzMfmqku1yVJ2uF2pNZrvXr1al1wwQU69NBDNXDgQA0cOFBHHXWU7r333qLWnzVrltra2rTXXnupqalJBx54oNrb29XZ2dltublz58rMdM899+gb3/iGRo4cqZaWFq1Zs0YvvfSSzEz/9m//pttuu02HHnqoWlpa9KEPfUgPPvigJOmBBx7QkUceqZaWFrW2tupnP/uZ97YAAKBezJ8vLVmS+Yv61mdGXqyUoLe6c0cm+ezc0ak5HXPU3tau4QOHVzWWRx99VH/4wx/02c9+Vq2trdq4caN+/vOfa8qUKVq0aJGOPfbYvOtfddVVOv7443XSSSepublZS5cu1fe+9z2tXr1a8+bN67H8v/7rv6qlpUVf+9rXtH37dg0cOFCbNm2SJN1zzz2aN2+eZsyYocbGRl155ZWaMmWKfvazn+m8887TjBkz9MUvflHXXnutpk6dqsMPP1xjxoypSLsAAABUA4l1mcK91YGg1/q6KddVNZbjjz9en/vc57pN++pXv6px48bpiiuuKJhYP/fcc92GfJ8xY4YOPvhgfec739H3v/997bPPPt2WNzMtXbpUTU1NO6cFifUzzzyjp59+euc6o0eP1qc//WmdcsopWr58uT70oQ9Jko455hgddthh+ulPf6pZs2aVfvAAAAAp41aQMkR7qwNBr3W177UOJ8VbtmzRG2+8oU2bNmny5Ml69NFHi15/x44d2rhxo15//XUdffTR6urq0ooVK3os/+Uvf7lbUh12wgkndEvEJ02aJEk64ogjdibVknTooYdq0KBBev7554s7SAAAgBpFYl2GuN7qQBr3Wnd2duqb3/ymWltb1dLSoqFDh2rYsGH6j//4D23cuLHg+gsXLtTEiRPV0tKiIUOGaNiwYWpra5Ok2PXf97735dzWqFGjur0ePHiwJGm//fbrsezgwYO1YcOGgvEBAADUMhLrEuXqrQ6k0Wt90UUX6bvf/a6mTJmi+fPna+HChVq0aJFOO+00Oefyrrts2TJNmTJFkvSTn/xEd999txYtWqS5c+dKkrq6ev4DoqWlJef2GhoaEk0vFB8AAECt4x7rEuXrrQ5U+17r2267TWeeeaauu677/m666aaC6y5YsECNjY26//77uyXM9913n/c4AQAAeiN6rEtQqLc6UO1e64aGhh49v08//bTuvPPOotY1s2490zt27NCVV17pPU4AAIDeiB7rEhTTWx2oZq/1SSedpDlz5mj33XfXuHHj9MILL+iGG27QIYccopUrV+Zd98QTT9SsWbN07LHH6owzztDmzZt1xx13xN4CAgAAgJ5IrEuwbM2ygr3Vgc4dnfrTmj9VOKKMa665Ri0tLfrVr36lOXPmaPTo0brxxhu1atWqgon1UUcdpdtuu02XX365vv71r2vPPffU5z//eZ1zzjk67LDDqhI/AABAPbPe8qOx8ePHu+XLl+ecv2rVKh1yyCFVjAj1jnMGAFANkydnRl5sa5MWL047GhRiZiucc+Pj5nGPNQAAAOABiTUAAADgAYk1AAAA4AGJNQAAAOABiTUAAADgAYk1AAAA4AGJNQAAAOABiTUAAADgAYk1AAAA4AGJNQAAAOABiTUAAADgAYk1ymJm+uIXv5h2GLHmzp0rM9Mf/vCHtEMBAAB9AIk1Crr55pt1zTXXpB0GAABATSOxLsW4cZJZ8Y9x49KOuCwk1gAAAIWRWJdiwgSpsbG4ZRsbpYkTKxtPHXv33XfTDgEAAMALEutStLdL/YpsuoaGzPJV8sorr+iss87S3nvvraamJo0ZM0ZXX321nHPdlmttbdVZZ53VY/3LLrtMZtZtuT/+8Y9avXq1zGznI+p3v/udxo0bp+bmZh1wwAH60Y9+1GOZ1tZWfexjH9PDDz+sj3/849ptt910/vnn75z/4osv6swzz9Tw4cPV1NSkgw8+WD/4wQ/U1dXVbTuzZs1SW1ub9tprLzU1NenAAw9Ue3u7Ojs7C7bPjh07NHXqVDU2Nur2228vuDwAAECx+qcdQF0aMUKaNk266SYpXzLX2JhZbvjwqoT1xhtvaOLEiVq3bp3OP/98HXDAAbr77rv1L//yL3r++ed17bXXJt7mNddco0suuUQbNmzQ1VdfHbtMR0eHfvvb3+rcc8/VtGnT9F//9V+66KKLtGXLFl1yySXdll2zZo2mTJmiM844Q2eccYYGDRokSXruuec0YcIE7b777jr//PO11157afHixbr00kv1wgsv6MYbb9y5jauuukrHH3+8TjrpJDU3N2vp0qX63ve+p9WrV2vevHk5j2Xr1q36whe+oN///ve68847dfzxxyduDwAAgJycc73icfjhh7t8nnrqqbzzE/v7351rbnZOyv1oaXFu7Vq/+83j4osvdpLcL37xi53Turq63Gc/+1knyf35z3/eOX3UqFFu6tSpPbbxrW99y2VOi10mTZrkRo0aFbtPSU6Su+eee3ZO6+zsdEceeaRraWlxb7zxRrd9SnK33nprj+0cd9xxbv/993cbN27sNv1rX/uak9Tt/Xv33Xd7rH/ZZZe5fv36uTVr1uycNmfOHCfJLVq0yL3zzjvumGOOcXvssYd76KGHYo8lyvs5AwBAjLa2TNrQ1pZ2JCiGpOUuRz7KrSClCnqtc91rXeXeakm66667dOCBB+rkk0/eOc3MdPHFF0uSfvvb31Zkv+9///t13HHH7Xw9YMAAffWrX9XmzZt7lLrbc889dcopp3Sb9uabb2rhwoU6+eSTtW3bNr3++us7H8F2H3jggZ3L77bbbpIyt3Vs3LhRr7/+uo4++mh1dXVpxYoVPeJ74403dOyxx+ovf/mLHnzwQR111FHejh0AACBAYl2OfPdaV/neakl66aWXNHr06B7Tx4wZIylzD3MlHHzwwT2mvf/974/dZ2trq/pF2uzZZ5+Vc05XXXWVhg0b1u3xiU98QpL02muv7Vx+4cKFmjhxolpaWjRkyBANGzZMbW1tkqSNGzf2iOWcc87RY489pgceeEAf/vCHyztYAACAHLjHuhy57rVOobc6qbgfIEqZXuBKamlp6THNZX9Yee6553brbQ/bf//9JUnLli3TlClTdOSRR+onP/mJRo4cqaampp0/2oz+0FGSTj75ZM2bN0+XX365fv7zn6uhocHjEQEAAGSQWJervV2aM6f7tBR6q6VM8vnXv/61x/RVq1btnB8YMmSI3nzzzR7LvvDCCz2m5UrCA88880yPaU8//XSPfeZywAEH7NxH0EOdy4IFC9TY2Kj777+/W5J+33335Vzn9NNP11FHHaWzzz5b/fv31y233NKj1xwAAKBcZBflit5rnWJv9Wc+8xk999xz+vWvf71zWnCLhSSdcMIJO6cfdNBBWrZsmTZv3rxz2ksvvaQ777yzx3YHDhyojRs39ijZF3j66ad177337ny9bds2/fjHP1Zzc3PBRFnSzls+brnllp0Jedjbb7+trVu3SpIaGhpkZt16pnfs2KErr7wy7z6+9KUv6YYbbtCtt96qs88+O+exAAAAlIoeax/CvdYp9VZL0iWXXKI77rhDp5566s5ye7/73e9077336vzzz9dhhx22c9kZM2ZowYIF+sQnPqHTTz9d69ev1/XXX69DDjmkxw8AP/KRj2jhwoW66KKLdOSRR6pfv37dfoA4ZswYnXLKKZoxY4b22WcfLViwQI888oguv/xy7bnnnkXFfsMNN2jixIk6/PDDdfbZZ2vMmDHauHGjnnzySf3yl7/UE088odbWVp144omaNWuWjj32WJ1xxhnavHmz7rjjjthbQKL++Z//Wdu2bdMFF1yg/v3768YbbyzYGw8A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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_prediction(train, test, pred)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "input \n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAtYAAAHpCAYAAACm1HsjAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO3dfZxVZbn/8e/FwDwoJ8BEIR8YTU3RCpI0IBrUOiel1H7WSSVFSzmimf5OebTX70xZZJ3U0MqHIycFKfHhlJmZYqSCh0KPIGOJ5GNiGCiKqBgwwNy/P/Zew5o1az+sve+9194zn/frNa+ZvfZa97rWvdde++Jm7es255wAAAAAlGdA2gEAAAAAfQGJNQAAAOABiTUAAADgAYk1AAAA4AGJNQAAAOABiTUAAADgwcC0A/Bl9913d62trWmHAQAAgD5s+fLlrznnhsc912cS69bWVi1btiztMAAAANCHmdnqXM9xKwgAAADgAYk1AAAA4AGJNQAAAOABiTUAAADgAYk1AAAA4AGJNQAAAOABiTUAAADgQZ+pY12MLVu2aP369dqyZYu2b9+edjioQQMHDlRzc7OGDx+u5ubmtMMBAAB1pN8k1m+++aZeeeUVDR8+XCNGjNDAgQNlZmmHhRrinNP27du1adMmvfTSS9pzzz01ZMiQtMMCAAB1ot8k1q+99pr23ntv7bLLLmmHghplZho0aJCGDRumpqYmrVu3jsQaAAAUrd/cY93Z2amWlpa0w0CdaGlp0datW9MOAwAA1JF+k1hL4tYPFI1zBQAAJNWvEmsAAACgUkisAQAAAA9IrPupyZMna/LkyWmHAQAA0GeQWHuy9u21apvbpnWb1qUdCgAAAFJAYu3JzIdnaslLSzRz8cy0QwEAAEAKSKw9WPv2Ws3pmKMu16U5HXP65aj11q1bmc0SAIASzJ4tTZ6c+Y36RmLtwcyHZ6rLdUmSdrgdqY1ar169Wueff74OPfRQDR48WIMHD9akSZN03333FbX9rFmz1NbWpj322ENNTU064IAD1N7ers7Ozh7rzZ07V2ame++9V1//+te19957q6WlRWvWrNGLL74oM9O///u/69Zbb9Whhx6qlpYWffCDH9RDDz0kSXrwwQd15JFHqqWlRa2trfrpT3/qvS8AAKgX8+dLixdnfqO+9ZuZFyslGK3u3JFJPjt3dGpOxxy1t7VrxOARVY3lscce0+9+9zt95jOfUWtrqzZu3Kif/exnmjJlihYuXKhjjjkm7/ZXXnmljjvuOJ144olqbm7WkiVL9N3vflerV6/WvHnzeq3/b//2b2ppadFXv/pVbd++XYMHD9amTZskSffee6/mzZunGTNmqLGxUVdccYWmTJmin/70pzr33HM1Y8YMfeELX9A111yjadOm6fDDD9fo0aMr0i8AAADVQGJdpvBodSAYtb52yrVVjeW4447TZz/72R7LvvKVr2js2LG6/PLLCybWzz33XI8p32fMmKGDDjpI3/72t/W9731Pe+21V4/1zUxLlixRU1NT97IgsX7mmWf09NNPd29z8MEH61Of+pROPvlkLVu2TB/84AclSUcffbQOO+ww/eQnP9GsWbNKP3gAAICUcStIGaKj1YFg1Lra91qHk+ItW7bo9ddf16ZNmzR58mQ99thjRW+/Y8cObdy4Ua+99pqOOuoodXV1afny5b3W/9KXvtQjqQ47/vjjeyTiEydOlCQdccQR3Um1JB166KEaMmSInn/++eIOEgAAoEaRWJchbrQ6kMa91p2dnfrGN76h1tZWtbS0aPfdd9fw4cP1n//5n9q4cWPB7RcsWKAJEyaopaVFw4YN0/Dhw9XW1iZJsdu/973vzdnWqFGjejweOnSoJGnfffftte7QoUO1YcOGgvEBAADUMhLrEuUarQ6kMWp94YUX6jvf+Y6mTJmi+fPna8GCBVq4cKFOPfVUOefybrt06VJNmTJFkvTjH/9Y99xzjxYuXKi5c+dKkrq6ev8DoqWlJWd7DQ0NiZYXig8AAKDWcY91ifKNVgeqfa/1rbfeqtNPP13XXttzfzfeeGPBbe+44w41NjbqgQce6JEw33///d7jBAAA6IsYsS5BodHqQLVHrRsaGnqN/D799NO66667itrWzHqMTO/YsUNXXHGF9zgBAAD6IkasS1DMaHWgmqPWJ554oubMmaNdd91VY8eO1QsvvKDrr79ehxxyiFasWJF32xNOOEGzZs3SMccco9NOO02bN2/W7bffHnsLCAAAAHojsS7B0jVLC45WBzp3dOoPa/5Q4Ygyrr76arW0tOjOO+/UnDlzdPDBB+uGG27QqlWrCibWkyZN0q233qrLLrtMX/va17Tbbrvpc5/7nM4++2wddthhVYkfAACgnllf+dLYuHHj3LJly3I+v2rVKh1yyCFVjAj1jnMGAFANkydnZl5sa5MWLUo7GhRiZsudc+PinuMeawAAAMADEmsAAADAAxJrAAAAwAMSawAAAMADEmsAAADAAxJrAAAAwAMSawAAAMADEmsAAADAAxJrAAAAwAMSawAAAMADEmsAAADAAxJrlMXM9IUvfCHtMGLNnTtXZqbf/e53aYcCAAD6ARJrFHTTTTfp6quvTjsMAACAmkZiXYqxYyWz4n/Gjk074rKQWAMAABRGYl2K8eOlxsbi1m1slCZMqGw8deydd95JOwQAAAAvSKxL0d4uDSiy6xoaMutXycsvv6wzzjhDe+65p5qamjR69GhdddVVcs71WK+1tVVnnHFGr+0vvfRSmVmP9X7/+99r9erVMrPun6jf/OY3Gjt2rJqbm7X//vvrhz/8Ya91Wltb9dGPflSPPPKIPvaxj2mXXXbReeed1/38X/7yF51++ukaMWKEmpqadNBBB+n73/++urq6erQza9YstbW1aY899lBTU5MOOOAAtbe3q7Ozs2D/7NixQ9OmTVNjY6Nuu+22gusDAAAUa2DaAdSlkSOlM8+UbrxRypfMNTZm1hsxoiphvf7665owYYLWrVun8847T/vvv7/uuece/eu//quef/55XXPNNYnbvPrqq3XxxRdrw4YNuuqqq2LX6ejo0K9//Wudc845OvPMM/Xf//3fuvDCC7VlyxZdfPHFPdZds2aNpkyZotNOO02nnXaahgwZIkl67rnnNH78eO26664677zztMcee2jRokW65JJL9MILL+iGG27obuPKK6/UcccdpxNPPFHNzc1asmSJvvvd72r16tWaN29ezmPZunWrPv/5z+u3v/2t7rrrLh133HGJ+wMAACAn51yf+Dn88MNdPk899VTe5xP729+ca252Tsr909Li3Nq1fvebx0UXXeQkuZ///Ofdy7q6utxnPvMZJ8n98Y9/7F4+atQoN23atF5tfPOb33SZ02KniRMnulGjRsXuU5KT5O69997uZZ2dne7II490LS0t7vXXX++xT0nulltu6dXOscce6/bbbz+3cePGHsu/+tWvOkk9Xr933nmn1/aXXnqpGzBggFuzZk33sjlz5jhJbuHChe7tt992Rx99tHvXu97lHn744dhjifJ+zgAAEKOtLZM2tLWlHQmKIWmZy5GPcitIqYJR61z3Wld5tFqS7r77bh1wwAE66aSTupeZmS666CJJ0q9//euK7Pd973ufjj322O7HgwYN0le+8hVt3ry5V6m73XbbTSeffHKPZW+88YYWLFigk046Sdu2bdNrr73W/RO0++CDD3avv8suu0jK3NaxceNGvfbaazrqqKPU1dWl5cuX94rv9ddf1zHHHKM//elPeuihhzRp0iRvxw4AABAgsS5Hvnutq3xvtSS9+OKLOvjgg3stHz16tKTMPcyVcNBBB/Va9r73vS92n62trRoQ6bNnn31WzjldeeWVGj58eI+fj3/845KkV199tXv9BQsWaMKECWppadGwYcM0fPhwtbW1SZI2btzYK5azzz5bjz/+uB588EF96EMfKu9gAQAAcuAe63Lkutc6hdHqpOK+gChlRoErqaWlpdcyl/1i5TnnnNNjtD1sv/32kyQtXbpUU6ZM0ZFHHqkf//jH2nvvvdXU1NT9pc3oFx0l6aSTTtK8efN02WWX6Wc/+5kaGho8HhEAAEAGiXW52tulOXN6LkthtFrKJJ9//vOfey1ftWpV9/OBYcOG6Y033ui17gsvvNBrWa4kPPDMM8/0Wvb000/32mcu+++/f/c+ghHqXO644w41NjbqgQce6JGk33///Tm3mTp1qiZNmqSzzjpLAwcO1M0339xr1BwAAKBcZBflit5rneJo9ac//Wk999xz+uUvf9m9LLjFQpKOP/747uUHHnigli5dqs2bN3cve/HFF3XXXXf1anfw4MHauHFjr5J9gaefflr33Xdf9+Nt27bpRz/6kZqbmwsmypK6b/m4+eabuxPysLfeektbt26VJDU0NMjMeoxM79ixQ1dccUXefXzxi1/U9ddfr1tuuUVnnXVWzmMBAAAoFSPWPoRHrVMarZakiy++WLfffrtOOeWU7nJ7v/nNb3TffffpvPPO02GHHda97owZM3THHXfo4x//uKZOnar169fruuuu0yGHHNLrC4Af/vCHtWDBAl144YU68sgjNWDAgB5fQBw9erROPvlkzZgxQ3vttZfuuOMOPfroo7rsssu02267FRX79ddfrwkTJujwww/XWWedpdGjR2vjxo1auXKlfvGLX+jJJ59Ua2urTjjhBM2aNUvHHHOMTjvtNG3evFm333577C0gUf/yL/+ibdu26fzzz9fAgQN1ww03FByN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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "model = FarringtonFlexible()\n", "model.fit(train)\n", "pred = model.predict(test)\n", "plot_prediction(train, test, pred)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "By looking at the confusion matrix, we can see the the `FarringtonFlexible` successfully detected all outbreak, but also produced some false positives." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_confusion_matrix(confusion_matrix(test[\"outbreak\"], pred[\"alarm\"]), class_names=[\"no outbreak\", \"outbreak\"]);" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "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.7.3" } }, "nbformat": 4, "nbformat_minor": 4 }