From f66446aed49d336b226b6cf41587ff2f5978c81a Mon Sep 17 00:00:00 2001 From: escuiller Date: Mon, 27 Apr 2020 15:34:22 +0200 Subject: [PATCH] =?UTF-8?q?conversion=20des=20dates=20et=20v=C3=A9rificati?= =?UTF-8?q?on=20int=C3=A9grit=C3=A9=20donn=C3=A9es?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- module3/exo2/exercice_python_fr.org | 52 +++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/module3/exo2/exercice_python_fr.org b/module3/exo2/exercice_python_fr.org index 59d6917..5537eac 100644 --- a/module3/exo2/exercice_python_fr.org +++ b/module3/exo2/exercice_python_fr.org @@ -17,6 +17,10 @@ Les données au format csv sont téléchargées depuis l'adresse : http://www.sentiweb.fr/datasets/incidence-PAY-7.csv +Code source adapté de : +#+NAME: code-source-mooc +https://gitlab.inria.fr/learninglab/mooc-rr/mooc-rr-ressources/blob/master/module3/ressources/analyse-syndrome-grippal-orgmode.org + #+begin_src python :results output :session :exports both from urllib.request import urlretrieve import os @@ -82,3 +86,51 @@ Vérification visuelle des premières et dernières lignes. ** Conversion des dates +Code source du mooc. +#+begin_src python :results output :session :exports both +import datetime +converted_data = [(datetime.datetime.strptime(year_and_week + ":1" , '%G%V:%u').date(), + int(inc)) + for year_and_week, inc in data] +converted_data.sort(key = lambda record: record[0]) +#+end_src + +#+RESULTS: + +Visualisation premières lignes. Code source tjrs repris de +[[code-source-mooc]] + +#+begin_src python :results value :session :exports both +str_data = [(str(date), str(inc)) for date, inc in converted_data] +[('date', 'inc'), None] + str_data[:5] + [None] + str_data[-5:] +#+end_src + +#+RESULTS: +| date | inc | +|------------+-------| +| 1990-12-03 | 1143 | +| 1990-12-10 | 11079 | +| 1990-12-17 | 19080 | +| 1990-12-24 | 19375 | +| 1990-12-31 | 15565 | +|------------+-------| +| 2020-03-16 | 8123 | +| 2020-03-23 | 7326 | +| 2020-03-30 | 3879 | +| 2020-04-06 | 1918 | +| 2020-04-13 | 803 | + +Vérification des dates : voyons si il y a des données manquantes, +i.e. plus de 7 jours d'écart entre deux dates. + +#+begin_src python :results output :session :exports both +dates = [date for date, _ in converted_data] +for date1, date2 in zip(dates[:-1], dates[1:]): + if date2-date1 != datetime.timedelta(weeks=1): + print(f"Il y a {date2-date1} entre {date1} et {date2}") +#+end_src + +#+RESULTS: + +Visiblement aucune ligne manquante. + -- 2.18.1