{ "cells": [ { "cell_type": "markdown", "metadata": { "hideCode": true, "hidePrompt": true }, "source": [ "# Sujet 7 : Autour du SARS-CoV-2 (COVID-19)" ] }, { "cell_type": "markdown", "metadata": { "hideCode": true, "hidePrompt": true }, "source": [ "Le but est ici de reproduire des graphes semblables à ceux du South China Morning Post (SCMP), sur la page The Coronavirus Pandemic et qui montrent pour différents pays le nombre cumulé (c'est-à-dire le nombre total de cas depuis le début de l'épidémie) de personnes atteintes de la maladie à coronavirus 2019." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Les données utilisées pour cet excercice proviennent du [Johns Hopkins University Center for Systems Science and Engineering (JHU CSSE)](https://systems.jhu.edu/). " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "On commence par charger les données, qui ont été mises à disposition sur GitHub :" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "data_url = \"https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Si jamais l'url a été modifié, on preferera travailler sur une copie locale des fichiers." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "data_file = \"time_series_covid19_confirmed_global.csv.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": [ "Le fichier présente des séries temporelles du nombre de décès dus au covid dans 288 régions du monde. Les données concernent une période temporelle s'étalant entre le 22 janvier 2020 et le 09 mars 2023. Il est au format csv et est organisé comme suit :\n", "\n", "| colonne 1 | colonne 2 | colonne 3 | colonne 4 | colonnes 5 à 1147 |\n", "|--- |:-: |:-: |:-: |--: |\n", "| Province/State | Country/Region | Latitude | Longitude | date format dd/mm/yy |" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Pour charger les données, on utilise la librairie pandas, que l'on doit importer.\n", "La première ligne du document renseigne les intitulés des différentes colonnes, on évite de la charger grâce à la commande 'skiprows=1'." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "scrolled": false }, "outputs": [], "source": [ "import pandas as pd\n", "\n", "data=pd.read_csv(data_url,skiprows=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "On vérifie s'il existe des points manquant dans ce jeu de données. Pour cela, on vérifie d'abord que toutes les lignes sont associées à un pays, et que les nombres de décès ont bien été recensés pour toutes les dates : " ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | Province/State | \n", "Country/Region | \n", "Lat | \n", "Long | \n", "1/22/20 | \n", "1/23/20 | \n", "1/24/20 | \n", "1/25/20 | \n", "1/26/20 | \n", "1/27/20 | \n", "... | \n", "2/28/23 | \n", "3/1/23 | \n", "3/2/23 | \n", "3/3/23 | \n", "3/4/23 | \n", "3/5/23 | \n", "3/6/23 | \n", "3/7/23 | \n", "3/8/23 | \n", "3/9/23 | \n", "
|---|
0 rows × 1147 columns
\n", "