diff --git a/module3/exo1/analyse-syndrome-grippal.org b/module3/exo1/analyse-syndrome-grippal.org index 1720b70df3a93009c79592b68d1dcf57a53f6341..73dc9002fcf458a99d84df0846f571fb5d37ef87 100644 --- a/module3/exo1/analyse-syndrome-grippal.org +++ b/module3/exo1/analyse-syndrome-grippal.org @@ -27,11 +27,15 @@ if sys.version_info.major < 3 or sys.version_info.minor < 6: print("Veuillez utiliser Python 3.6 (ou plus) !") #+END_SRC +#+RESULTS: + #+BEGIN_SRC emacs-lisp :results output (unless (featurep 'ob-python) (print "Veuillez activer python dans org-babel (org-babel-do-languages) !")) #+END_SRC +#+RESULTS: + ** R 3.4 Nous n'utilisons que des fonctionnalités de base du langage R, une version antérieure devrait suffire. @@ -40,6 +44,8 @@ Nous n'utilisons que des fonctionnalités de base du langage R, une version ant (print "Veuillez activer R dans org-babel (org-babel-do-languages) !")) #+END_SRC +#+RESULTS: + * Préparation des données Les données de l'incidence du syndrome grippal sont disponibles du site Web du [[http://www.sentiweb.fr/][Réseau Sentinelles]]. Nous les récupérons sous forme d'un fichier en format CSV dont chaque ligne correspond à une semaine de la période d'observation. Nous téléchargeons toujours le jeu de données complet (rien d'autre n'est proposé), qui commence en 1984 et se termine avec une semaine récente. L'URL est: @@ -66,7 +72,19 @@ L'indication d'une semaine calendaire en format [[https://en.wikipedia.org/wiki/ ** Téléchargement Après avoir téléchargé les données, nous commençons par l'extraction des données qui nous intéressent. D'abord nous découpons le contenu du fichier en lignes, dont nous jetons la première qui ne contient qu'un commentaire. Les autres lignes sont découpées en colonnes. -#+BEGIN_SRC python :results silent :var data_url=data-url + +#+begin_src python :results output :var data_url=data-url +data_file = "syndrome-grippal.csv" +import os +import urllib.request +if not os.path.exists(data_file): + urllib.request.urlretrieve(data_url, data_file) +#+end_src + +#+RESULTS: + +#+BEGIN_SRC python :results silent :var data_url=data-url + from urllib.request import urlopen data = urlopen(data_url).read() @@ -80,6 +98,13 @@ Regardons ce que nous avons obtenu: table[:5] #+END_SRC +#+RESULTS: +| week | indicator | inc | inc_low | inc_up | inc100 | inc100_low | inc100_up | geo_insee | geo_name | +| 202403 | 3 | 177465 | 164064 | 190866 | 266 | 246 | 286 | FR | France | +| 202402 | 3 | 130259 | 120192 | 140326 | 195 | 180 | 210 | FR | France | +| 202401 | 3 | 120769 | 109452 | 132086 | 181 | 164 | 198 | FR | France | +| 202352 | 3 | 115446 | 103738 | 127154 | 174 | 156 | 192 | FR | France | + ** Recherche de données manquantes Il y a malheureusement beaucoup de façon d'indiquer l'absence d'un point de données. Nous testons ici seulement pour la présence de champs vides. Il faudrait aussi rechercher des valeurs non-numériques dans les colonnes à priori numériques. Nous ne le faisons pas ici, mais une vérification ultérieure capterait des telles anomalies.