diff --git a/module3/exo2/exercice.ipynb b/module3/exo2/exercice.ipynb
index 0bbbe371b01e359e381e43239412d77bf53fb1fb..0b7e0249a81680636efb3691121e635153e9c64b 100644
--- a/module3/exo2/exercice.ipynb
+++ b/module3/exo2/exercice.ipynb
@@ -1,5 +1,1357 @@
{
- "cells": [],
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Exercice 03 - 2 "
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Récupération des données de l'incidence de la varicelle "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "%matplotlib inline\n",
+ "import matplotlib.pyplot as plt\n",
+ "import pandas as pd\n",
+ "import isoweek\n",
+ "import os.path\n",
+ "\n",
+ "data_url = \"http://www.sentiweb.fr/datasets/incidence-PAY-7.csv\""
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "(Exo 1) Voici l'explication des colonnes données [sur le site d'origine](https://ns.sentiweb.fr/incidence/csv-schema-v1.json):\n",
+ "\n",
+ "| Nom de colonne | Libellé de colonne |\n",
+ "|----------------|-----------------------------------------------------------------------------------------------------------------------------------|\n",
+ "| week | Semaine calendaire (ISO 8601) |\n",
+ "| indicator | Code de l'indicateur de surveillance |\n",
+ "| inc | Estimation de l'incidence de consultations en nombre de cas |\n",
+ "| inc_low | Estimation de la borne inférieure de l'IC95% du nombre de cas de consultation |\n",
+ "| inc_up | Estimation de la borne supérieure de l'IC95% du nombre de cas de consultation |\n",
+ "| inc100 | Estimation du taux d'incidence du nombre de cas de consultation (en cas pour 100,000 habitants) |\n",
+ "| inc100_low | Estimation de la borne inférieure de l'IC95% du taux d'incidence du nombre de cas de consultation (en cas pour 100,000 habitants) |\n",
+ "| inc100_up | Estimation de la borne supérieure de l'IC95% du taux d'incidence du nombre de cas de consultation (en cas pour 100,000 habitants) |\n",
+ "| geo_insee | Code de la zone géographique concernée (Code INSEE) http://www.insee.fr/fr/methodes/nomenclatures/cog/ |\n",
+ "| geo_name | Libellé de la zone géographique (ce libellé peut être modifié sans préavis) |\n",
+ "\n",
+ "La première ligne du fichier CSV est un commentaire, que nous ignorons en précisant `skiprows=1`.\n",
+ "\n",
+ "Nous copions ensuite les données dans un fichier local. Si le fichier local n'existe pas, les données sont téléchargé depuis le site internet. Cela nous permet de garder un jeux de donnée dans le cas où le site serait ammené à ne plus fonctionner. "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "data_file = \"syndrome-varicelle.csv\"\n",
+ "\n",
+ "import os\n",
+ "import urllib.request\n",
+ "if not os.path.exists(data_file):\n",
+ " urllib.request.urlretrieve(data_url, data_file)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Nous récupérons ainsi les données."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " week \n",
+ " indicator \n",
+ " inc \n",
+ " inc_low \n",
+ " inc_up \n",
+ " inc100 \n",
+ " inc100_low \n",
+ " inc100_up \n",
+ " geo_insee \n",
+ " geo_name \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 202031 \n",
+ " 7 \n",
+ " 1314 \n",
+ " 99 \n",
+ " 2529 \n",
+ " 2 \n",
+ " 0 \n",
+ " 4 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " 202030 \n",
+ " 7 \n",
+ " 1385 \n",
+ " 75 \n",
+ " 2695 \n",
+ " 2 \n",
+ " 0 \n",
+ " 4 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " 202029 \n",
+ " 7 \n",
+ " 841 \n",
+ " 10 \n",
+ " 1672 \n",
+ " 1 \n",
+ " 0 \n",
+ " 2 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " 202028 \n",
+ " 7 \n",
+ " 728 \n",
+ " 0 \n",
+ " 1515 \n",
+ " 1 \n",
+ " 0 \n",
+ " 2 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " 202027 \n",
+ " 7 \n",
+ " 986 \n",
+ " 149 \n",
+ " 1823 \n",
+ " 1 \n",
+ " 0 \n",
+ " 2 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 5 \n",
+ " 202026 \n",
+ " 7 \n",
+ " 694 \n",
+ " 0 \n",
+ " 1454 \n",
+ " 1 \n",
+ " 0 \n",
+ " 2 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 6 \n",
+ " 202025 \n",
+ " 7 \n",
+ " 228 \n",
+ " 0 \n",
+ " 597 \n",
+ " 0 \n",
+ " 0 \n",
+ " 1 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 7 \n",
+ " 202024 \n",
+ " 7 \n",
+ " 388 \n",
+ " 0 \n",
+ " 959 \n",
+ " 1 \n",
+ " 0 \n",
+ " 2 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 8 \n",
+ " 202023 \n",
+ " 7 \n",
+ " 558 \n",
+ " 1 \n",
+ " 1115 \n",
+ " 1 \n",
+ " 0 \n",
+ " 2 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 9 \n",
+ " 202022 \n",
+ " 7 \n",
+ " 277 \n",
+ " 0 \n",
+ " 633 \n",
+ " 0 \n",
+ " 0 \n",
+ " 1 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 10 \n",
+ " 202021 \n",
+ " 7 \n",
+ " 602 \n",
+ " 36 \n",
+ " 1168 \n",
+ " 1 \n",
+ " 0 \n",
+ " 2 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 11 \n",
+ " 202020 \n",
+ " 7 \n",
+ " 824 \n",
+ " 20 \n",
+ " 1628 \n",
+ " 1 \n",
+ " 0 \n",
+ " 2 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 12 \n",
+ " 202019 \n",
+ " 7 \n",
+ " 310 \n",
+ " 0 \n",
+ " 753 \n",
+ " 0 \n",
+ " 0 \n",
+ " 1 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 13 \n",
+ " 202018 \n",
+ " 7 \n",
+ " 849 \n",
+ " 98 \n",
+ " 1600 \n",
+ " 1 \n",
+ " 0 \n",
+ " 2 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 14 \n",
+ " 202017 \n",
+ " 7 \n",
+ " 272 \n",
+ " 0 \n",
+ " 658 \n",
+ " 0 \n",
+ " 0 \n",
+ " 1 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 15 \n",
+ " 202016 \n",
+ " 7 \n",
+ " 758 \n",
+ " 78 \n",
+ " 1438 \n",
+ " 1 \n",
+ " 0 \n",
+ " 2 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 16 \n",
+ " 202015 \n",
+ " 7 \n",
+ " 1918 \n",
+ " 675 \n",
+ " 3161 \n",
+ " 3 \n",
+ " 1 \n",
+ " 5 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 17 \n",
+ " 202014 \n",
+ " 7 \n",
+ " 3879 \n",
+ " 2227 \n",
+ " 5531 \n",
+ " 6 \n",
+ " 3 \n",
+ " 9 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 18 \n",
+ " 202013 \n",
+ " 7 \n",
+ " 7326 \n",
+ " 5236 \n",
+ " 9416 \n",
+ " 11 \n",
+ " 8 \n",
+ " 14 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 19 \n",
+ " 202012 \n",
+ " 7 \n",
+ " 8123 \n",
+ " 5790 \n",
+ " 10456 \n",
+ " 12 \n",
+ " 8 \n",
+ " 16 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 20 \n",
+ " 202011 \n",
+ " 7 \n",
+ " 10198 \n",
+ " 7568 \n",
+ " 12828 \n",
+ " 15 \n",
+ " 11 \n",
+ " 19 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 21 \n",
+ " 202010 \n",
+ " 7 \n",
+ " 9011 \n",
+ " 6691 \n",
+ " 11331 \n",
+ " 14 \n",
+ " 10 \n",
+ " 18 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 22 \n",
+ " 202009 \n",
+ " 7 \n",
+ " 13631 \n",
+ " 10544 \n",
+ " 16718 \n",
+ " 21 \n",
+ " 16 \n",
+ " 26 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 23 \n",
+ " 202008 \n",
+ " 7 \n",
+ " 10424 \n",
+ " 7708 \n",
+ " 13140 \n",
+ " 16 \n",
+ " 12 \n",
+ " 20 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 24 \n",
+ " 202007 \n",
+ " 7 \n",
+ " 8959 \n",
+ " 6574 \n",
+ " 11344 \n",
+ " 14 \n",
+ " 10 \n",
+ " 18 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 25 \n",
+ " 202006 \n",
+ " 7 \n",
+ " 9264 \n",
+ " 6925 \n",
+ " 11603 \n",
+ " 14 \n",
+ " 10 \n",
+ " 18 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 26 \n",
+ " 202005 \n",
+ " 7 \n",
+ " 8505 \n",
+ " 6314 \n",
+ " 10696 \n",
+ " 13 \n",
+ " 10 \n",
+ " 16 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 27 \n",
+ " 202004 \n",
+ " 7 \n",
+ " 7991 \n",
+ " 5831 \n",
+ " 10151 \n",
+ " 12 \n",
+ " 9 \n",
+ " 15 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 28 \n",
+ " 202003 \n",
+ " 7 \n",
+ " 5968 \n",
+ " 4100 \n",
+ " 7836 \n",
+ " 9 \n",
+ " 6 \n",
+ " 12 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 29 \n",
+ " 202002 \n",
+ " 7 \n",
+ " 6534 \n",
+ " 4530 \n",
+ " 8538 \n",
+ " 10 \n",
+ " 7 \n",
+ " 13 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " \n",
+ " \n",
+ " 1518 \n",
+ " 199126 \n",
+ " 7 \n",
+ " 17608 \n",
+ " 11304 \n",
+ " 23912 \n",
+ " 31 \n",
+ " 20 \n",
+ " 42 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1519 \n",
+ " 199125 \n",
+ " 7 \n",
+ " 16169 \n",
+ " 10700 \n",
+ " 21638 \n",
+ " 28 \n",
+ " 18 \n",
+ " 38 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1520 \n",
+ " 199124 \n",
+ " 7 \n",
+ " 16171 \n",
+ " 10071 \n",
+ " 22271 \n",
+ " 28 \n",
+ " 17 \n",
+ " 39 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1521 \n",
+ " 199123 \n",
+ " 7 \n",
+ " 11947 \n",
+ " 7671 \n",
+ " 16223 \n",
+ " 21 \n",
+ " 13 \n",
+ " 29 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1522 \n",
+ " 199122 \n",
+ " 7 \n",
+ " 15452 \n",
+ " 9953 \n",
+ " 20951 \n",
+ " 27 \n",
+ " 17 \n",
+ " 37 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1523 \n",
+ " 199121 \n",
+ " 7 \n",
+ " 14903 \n",
+ " 8975 \n",
+ " 20831 \n",
+ " 26 \n",
+ " 16 \n",
+ " 36 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1524 \n",
+ " 199120 \n",
+ " 7 \n",
+ " 19053 \n",
+ " 12742 \n",
+ " 25364 \n",
+ " 34 \n",
+ " 23 \n",
+ " 45 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1525 \n",
+ " 199119 \n",
+ " 7 \n",
+ " 16739 \n",
+ " 11246 \n",
+ " 22232 \n",
+ " 29 \n",
+ " 19 \n",
+ " 39 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1526 \n",
+ " 199118 \n",
+ " 7 \n",
+ " 21385 \n",
+ " 13882 \n",
+ " 28888 \n",
+ " 38 \n",
+ " 25 \n",
+ " 51 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1527 \n",
+ " 199117 \n",
+ " 7 \n",
+ " 13462 \n",
+ " 8877 \n",
+ " 18047 \n",
+ " 24 \n",
+ " 16 \n",
+ " 32 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1528 \n",
+ " 199116 \n",
+ " 7 \n",
+ " 14857 \n",
+ " 10068 \n",
+ " 19646 \n",
+ " 26 \n",
+ " 18 \n",
+ " 34 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1529 \n",
+ " 199115 \n",
+ " 7 \n",
+ " 13975 \n",
+ " 9781 \n",
+ " 18169 \n",
+ " 25 \n",
+ " 18 \n",
+ " 32 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1530 \n",
+ " 199114 \n",
+ " 7 \n",
+ " 12265 \n",
+ " 7684 \n",
+ " 16846 \n",
+ " 22 \n",
+ " 14 \n",
+ " 30 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1531 \n",
+ " 199113 \n",
+ " 7 \n",
+ " 9567 \n",
+ " 6041 \n",
+ " 13093 \n",
+ " 17 \n",
+ " 11 \n",
+ " 23 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1532 \n",
+ " 199112 \n",
+ " 7 \n",
+ " 10864 \n",
+ " 7331 \n",
+ " 14397 \n",
+ " 19 \n",
+ " 13 \n",
+ " 25 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1533 \n",
+ " 199111 \n",
+ " 7 \n",
+ " 15574 \n",
+ " 11184 \n",
+ " 19964 \n",
+ " 27 \n",
+ " 19 \n",
+ " 35 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1534 \n",
+ " 199110 \n",
+ " 7 \n",
+ " 16643 \n",
+ " 11372 \n",
+ " 21914 \n",
+ " 29 \n",
+ " 20 \n",
+ " 38 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1535 \n",
+ " 199109 \n",
+ " 7 \n",
+ " 13741 \n",
+ " 8780 \n",
+ " 18702 \n",
+ " 24 \n",
+ " 15 \n",
+ " 33 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1536 \n",
+ " 199108 \n",
+ " 7 \n",
+ " 13289 \n",
+ " 8813 \n",
+ " 17765 \n",
+ " 23 \n",
+ " 15 \n",
+ " 31 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1537 \n",
+ " 199107 \n",
+ " 7 \n",
+ " 12337 \n",
+ " 8077 \n",
+ " 16597 \n",
+ " 22 \n",
+ " 15 \n",
+ " 29 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1538 \n",
+ " 199106 \n",
+ " 7 \n",
+ " 10877 \n",
+ " 7013 \n",
+ " 14741 \n",
+ " 19 \n",
+ " 12 \n",
+ " 26 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1539 \n",
+ " 199105 \n",
+ " 7 \n",
+ " 10442 \n",
+ " 6544 \n",
+ " 14340 \n",
+ " 18 \n",
+ " 11 \n",
+ " 25 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1540 \n",
+ " 199104 \n",
+ " 7 \n",
+ " 7913 \n",
+ " 4563 \n",
+ " 11263 \n",
+ " 14 \n",
+ " 8 \n",
+ " 20 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1541 \n",
+ " 199103 \n",
+ " 7 \n",
+ " 15387 \n",
+ " 10484 \n",
+ " 20290 \n",
+ " 27 \n",
+ " 18 \n",
+ " 36 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1542 \n",
+ " 199102 \n",
+ " 7 \n",
+ " 16277 \n",
+ " 11046 \n",
+ " 21508 \n",
+ " 29 \n",
+ " 20 \n",
+ " 38 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1543 \n",
+ " 199101 \n",
+ " 7 \n",
+ " 15565 \n",
+ " 10271 \n",
+ " 20859 \n",
+ " 27 \n",
+ " 18 \n",
+ " 36 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1544 \n",
+ " 199052 \n",
+ " 7 \n",
+ " 19375 \n",
+ " 13295 \n",
+ " 25455 \n",
+ " 34 \n",
+ " 23 \n",
+ " 45 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1545 \n",
+ " 199051 \n",
+ " 7 \n",
+ " 19080 \n",
+ " 13807 \n",
+ " 24353 \n",
+ " 34 \n",
+ " 25 \n",
+ " 43 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1546 \n",
+ " 199050 \n",
+ " 7 \n",
+ " 11079 \n",
+ " 6660 \n",
+ " 15498 \n",
+ " 20 \n",
+ " 12 \n",
+ " 28 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ " 1547 \n",
+ " 199049 \n",
+ " 7 \n",
+ " 1143 \n",
+ " 0 \n",
+ " 2610 \n",
+ " 2 \n",
+ " 0 \n",
+ " 5 \n",
+ " FR \n",
+ " France \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
1548 rows × 10 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " week indicator inc inc_low inc_up inc100 inc100_low \\\n",
+ "0 202031 7 1314 99 2529 2 0 \n",
+ "1 202030 7 1385 75 2695 2 0 \n",
+ "2 202029 7 841 10 1672 1 0 \n",
+ "3 202028 7 728 0 1515 1 0 \n",
+ "4 202027 7 986 149 1823 1 0 \n",
+ "5 202026 7 694 0 1454 1 0 \n",
+ "6 202025 7 228 0 597 0 0 \n",
+ "7 202024 7 388 0 959 1 0 \n",
+ "8 202023 7 558 1 1115 1 0 \n",
+ "9 202022 7 277 0 633 0 0 \n",
+ "10 202021 7 602 36 1168 1 0 \n",
+ "11 202020 7 824 20 1628 1 0 \n",
+ "12 202019 7 310 0 753 0 0 \n",
+ "13 202018 7 849 98 1600 1 0 \n",
+ "14 202017 7 272 0 658 0 0 \n",
+ "15 202016 7 758 78 1438 1 0 \n",
+ "16 202015 7 1918 675 3161 3 1 \n",
+ "17 202014 7 3879 2227 5531 6 3 \n",
+ "18 202013 7 7326 5236 9416 11 8 \n",
+ "19 202012 7 8123 5790 10456 12 8 \n",
+ "20 202011 7 10198 7568 12828 15 11 \n",
+ "21 202010 7 9011 6691 11331 14 10 \n",
+ "22 202009 7 13631 10544 16718 21 16 \n",
+ "23 202008 7 10424 7708 13140 16 12 \n",
+ "24 202007 7 8959 6574 11344 14 10 \n",
+ "25 202006 7 9264 6925 11603 14 10 \n",
+ "26 202005 7 8505 6314 10696 13 10 \n",
+ "27 202004 7 7991 5831 10151 12 9 \n",
+ "28 202003 7 5968 4100 7836 9 6 \n",
+ "29 202002 7 6534 4530 8538 10 7 \n",
+ "... ... ... ... ... ... ... ... \n",
+ "1518 199126 7 17608 11304 23912 31 20 \n",
+ "1519 199125 7 16169 10700 21638 28 18 \n",
+ "1520 199124 7 16171 10071 22271 28 17 \n",
+ "1521 199123 7 11947 7671 16223 21 13 \n",
+ "1522 199122 7 15452 9953 20951 27 17 \n",
+ "1523 199121 7 14903 8975 20831 26 16 \n",
+ "1524 199120 7 19053 12742 25364 34 23 \n",
+ "1525 199119 7 16739 11246 22232 29 19 \n",
+ "1526 199118 7 21385 13882 28888 38 25 \n",
+ "1527 199117 7 13462 8877 18047 24 16 \n",
+ "1528 199116 7 14857 10068 19646 26 18 \n",
+ "1529 199115 7 13975 9781 18169 25 18 \n",
+ "1530 199114 7 12265 7684 16846 22 14 \n",
+ "1531 199113 7 9567 6041 13093 17 11 \n",
+ "1532 199112 7 10864 7331 14397 19 13 \n",
+ "1533 199111 7 15574 11184 19964 27 19 \n",
+ "1534 199110 7 16643 11372 21914 29 20 \n",
+ "1535 199109 7 13741 8780 18702 24 15 \n",
+ "1536 199108 7 13289 8813 17765 23 15 \n",
+ "1537 199107 7 12337 8077 16597 22 15 \n",
+ "1538 199106 7 10877 7013 14741 19 12 \n",
+ "1539 199105 7 10442 6544 14340 18 11 \n",
+ "1540 199104 7 7913 4563 11263 14 8 \n",
+ "1541 199103 7 15387 10484 20290 27 18 \n",
+ "1542 199102 7 16277 11046 21508 29 20 \n",
+ "1543 199101 7 15565 10271 20859 27 18 \n",
+ "1544 199052 7 19375 13295 25455 34 23 \n",
+ "1545 199051 7 19080 13807 24353 34 25 \n",
+ "1546 199050 7 11079 6660 15498 20 12 \n",
+ "1547 199049 7 1143 0 2610 2 0 \n",
+ "\n",
+ " inc100_up geo_insee geo_name \n",
+ "0 4 FR France \n",
+ "1 4 FR France \n",
+ "2 2 FR France \n",
+ "3 2 FR France \n",
+ "4 2 FR France \n",
+ "5 2 FR France \n",
+ "6 1 FR France \n",
+ "7 2 FR France \n",
+ "8 2 FR France \n",
+ "9 1 FR France \n",
+ "10 2 FR France \n",
+ "11 2 FR France \n",
+ "12 1 FR France \n",
+ "13 2 FR France \n",
+ "14 1 FR France \n",
+ "15 2 FR France \n",
+ "16 5 FR France \n",
+ "17 9 FR France \n",
+ "18 14 FR France \n",
+ "19 16 FR France \n",
+ "20 19 FR France \n",
+ "21 18 FR France \n",
+ "22 26 FR France \n",
+ "23 20 FR France \n",
+ "24 18 FR France \n",
+ "25 18 FR France \n",
+ "26 16 FR France \n",
+ "27 15 FR France \n",
+ "28 12 FR France \n",
+ "29 13 FR France \n",
+ "... ... ... ... \n",
+ "1518 42 FR France \n",
+ "1519 38 FR France \n",
+ "1520 39 FR France \n",
+ "1521 29 FR France \n",
+ "1522 37 FR France \n",
+ "1523 36 FR France \n",
+ "1524 45 FR France \n",
+ "1525 39 FR France \n",
+ "1526 51 FR France \n",
+ "1527 32 FR France \n",
+ "1528 34 FR France \n",
+ "1529 32 FR France \n",
+ "1530 30 FR France \n",
+ "1531 23 FR France \n",
+ "1532 25 FR France \n",
+ "1533 35 FR France \n",
+ "1534 38 FR France \n",
+ "1535 33 FR France \n",
+ "1536 31 FR France \n",
+ "1537 29 FR France \n",
+ "1538 26 FR France \n",
+ "1539 25 FR France \n",
+ "1540 20 FR France \n",
+ "1541 36 FR France \n",
+ "1542 38 FR France \n",
+ "1543 36 FR France \n",
+ "1544 45 FR France \n",
+ "1545 43 FR France \n",
+ "1546 28 FR France \n",
+ "1547 5 FR France \n",
+ "\n",
+ "[1548 rows x 10 columns]"
+ ]
+ },
+ "execution_count": 3,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "raw_data = pd.read_csv(data_file, skiprows=1)\n",
+ "raw_data"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "(Exo 1) Y a-t-il des points manquants dans ce jeux de données ?"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " week \n",
+ " indicator \n",
+ " inc \n",
+ " inc_low \n",
+ " inc_up \n",
+ " inc100 \n",
+ " inc100_low \n",
+ " inc100_up \n",
+ " geo_insee \n",
+ " geo_name \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ "Empty DataFrame\n",
+ "Columns: [week, indicator, inc, inc_low, inc_up, inc100, inc100_low, inc100_up, geo_insee, geo_name]\n",
+ "Index: []"
+ ]
+ },
+ "execution_count": 4,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "raw_data[raw_data.isnull().any(axis=1)]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Non, nous n'avons donc de nettoyage à faire. "
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "(Exo 1) Nos données utilisent une convention inhabituelle: le numéro de semaine est collé à l'année, donnant l'impression qu'il s'agit de nombre entier. C'est comme ça que Pandas les interprète.\n",
+ "\n",
+ "Un deuxième problème est que Pandas ne comprend pas les numéros de semaine. Il faut lui fournir les dates de début et de fin de semaine. Nous utilisons pour cela la bibliothèque isoweek.\n",
+ "\n",
+ "Comme la conversion des semaines est devenu assez complexe, nous écrivons une petite fonction Python pour cela. Ensuite, nous l'appliquons à tous les points de nos donnés. Les résultats vont dans une nouvelle colonne 'period'."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def convert_week(year_and_week_int):\n",
+ " year_and_week_str = str(year_and_week_int)\n",
+ " year = int(year_and_week_str[:4])\n",
+ " week = int(year_and_week_str[4:])\n",
+ " w = isoweek.Week(year, week)\n",
+ " return pd.Period(w.day(0), 'W')\n",
+ "\n",
+ "data['period'] = [convert_week(yw) for yw in data['week']]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "(Exo 1) Il restent deux petites modifications à faire.\n",
+ "\n",
+ "Premièrement, nous définissons les périodes d'observation\n",
+ "comme nouvel index de notre jeux de données. Ceci en fait\n",
+ "une suite chronologique, ce qui sera pratique par la suite.\n",
+ "\n",
+ "Deuxièmement, nous trions les points par période, dans\n",
+ "le sens chronologique."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "sorted_data = data.set_index('period').sort_index()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "(Exo 1) Nous vérifions la cohérence des données. Entre la fin d'une période et\n",
+ "le début de la période qui suit, la différence temporelle doit être\n",
+ "zéro, ou au moins très faible. Nous laissons une \"marge d'erreur\"\n",
+ "d'une seconde."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "periods = sorted_data.index\n",
+ "for p1, p2 in zip(periods[:-1], periods[1:]):\n",
+ " delta = p2.to_timestamp() - p1.end_time\n",
+ " if delta > pd.Timedelta('1s'):\n",
+ " print(p1, p2)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "(Exo 1) Nous définissons la période de référence\n",
+ "entre deux minima de l'incidence, du 1er septembre de l'année $N$ au\n",
+ "1er septembre de l'année $N+1$.\n",
+ "\n",
+ "Notre tâche est un peu compliquée par le fait que l'année ne comporte\n",
+ "pas un nombre entier de semaines. Nous modifions donc un peu nos périodes\n",
+ "de référence: à la place du 1er septembre de chaque année, nous utilisons le\n",
+ "premier jour de la semaine qui contient le 1er septembre.\n",
+ "\n",
+ "Encore un petit détail: les données commencent an octobre 1990, ce qui\n",
+ "rend la première année incomplète. Nous commençons donc l'analyse en 1991."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 14,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "first_september_week = [pd.Period(pd.Timestamp(y, 9, 1), 'W')\n",
+ " for y in range(1991,\n",
+ " sorted_data.index[-1].year)]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "(Exo 1) En partant de cette liste des semaines qui contiennent un 1er septembre, nous obtenons nos intervalles d'environ un an comme les périodes entre deux semaines adjacentes dans cette liste. Nous calculons les sommes des incidences hebdomadaires pour toutes ces périodes.\n",
+ "\n",
+ "Nous vérifions également que ces périodes contiennent entre 51 et 52 semaines, pour nous protéger contre des éventuelles erreurs dans notre code."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 15,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "year = []\n",
+ "yearly_incidence = []\n",
+ "for week1, week2 in zip(first_september_week[:-1],\n",
+ " first_september_week[1:]):\n",
+ " one_year = sorted_data['inc'][week1:week2-1]\n",
+ " assert abs(len(one_year)-52) < 2\n",
+ " yearly_incidence.append(one_year.sum())\n",
+ " year.append(week2.year)\n",
+ "yearly_incidence = pd.Series(data=yearly_incidence, index=year)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "(Exo 1) Voici les incidences annuelles."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 16,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 16,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "yearly_incidence.plot(style='*')"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Maintenant que nous avons la liste d'incidence par année. Nous pouvons dans un premier temps récupérer l'année avec le plus fort taux d'incidence pour l'exercice 2"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Taux d'incidence par année"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "2002 516689\n",
+ "2018 542312\n",
+ "2017 551041\n",
+ "1996 564901\n",
+ "2019 584066\n",
+ "2015 604382\n",
+ "2000 617597\n",
+ "2001 619041\n",
+ "2012 624573\n",
+ "2005 628464\n",
+ "2006 632833\n",
+ "2011 642368\n",
+ "1993 643387\n",
+ "1995 652478\n",
+ "1994 661409\n",
+ "1998 677775\n",
+ "1997 683434\n",
+ "2014 685769\n",
+ "2013 698332\n",
+ "2007 717352\n",
+ "2008 749478\n",
+ "1999 756456\n",
+ "2003 758363\n",
+ "2004 777388\n",
+ "2016 782114\n",
+ "2010 829911\n",
+ "1992 832939\n",
+ "2009 842373\n",
+ "dtype: int64"
+ ]
+ },
+ "execution_count": 18,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "yearly_incidence.sort_values()"
+ ]
+ }
+ ],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
@@ -16,10 +1368,9 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.6.3"
+ "version": "3.6.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
-