{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Incidence du syndrome grippal" ] }, { "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" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Les données de l'incidence du syndrome grippal sont disponibles du site Web du [Réseau Sentinelles](http://www.sentiweb.fr/). Nous les récupérons sous forme d'un fichier en format CSV dont chaque ligne correspond à une semaine de la période demandée. Nous téléchargeons toujours le jeu de données complet, qui commence en 1984 et se termine avec une semaine récente." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "data_url = \"http://www.sentiweb.fr/datasets/incidence-PAY-3.csv\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "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`." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*Changement du code* : les données ont été écrites au format csv. Le code vérifie que les données sont toujours présentes et les lit en priorité. Sinon, il va les chercher sur l'URL." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "existe\n" ] }, { "data": { "text/plain": [ "1883" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#raw_data = pd.read_csv(data_url, skiprows=1)\n", "#raw_data\n", "#raw_data.to_csv('incidence-PAY-3.csv')\n", "import os\n", "if os.path.isfile('incidence-PAY-3.csv'):\n", " raw_data = pd.read_csv('incidence-PAY-3.csv', skiprows = 1)\n", " print('existe')\n", "else:\n", " print(\"n'existe pas\")\n", " raw_data = pd.read_csv(data_url, skiprows = 1)\n", "len(raw_data)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Y a-t-il des points manquants dans ce jeux de données ? Oui, la semaine 19 de l'année 1989 n'a pas de valeurs associées." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | 0 | \n", "202049 | \n", "3 | \n", "13273 | \n", "10162.0 | \n", "16384.0 | \n", "20 | \n", "15.0 | \n", "25.0 | \n", "FR | \n", "France | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1646 | \n", "1647 | \n", "198919 | \n", "3 | \n", "0 | \n", "NaN | \n", "NaN | \n", "0 | \n", "NaN | \n", "NaN | \n", "FR | \n", "France | \n", "