diff --git a/journal/Readme.md b/journal/Readme.md new file mode 100644 index 0000000000000000000000000000000000000000..f56eb60293dc1edebe2b3660a48b225330a72878 --- /dev/null +++ b/journal/Readme.md @@ -0,0 +1,9 @@ +# Journal de bord du Mooc / Mooc's logbook + +FR + +Espace réservé au journal de bord du Mooc + +EN + +Reserved for the Mooc's logbook \ No newline at end of file diff --git a/module1/README.md b/module1/README.md new file mode 100644 index 0000000000000000000000000000000000000000..15944dff83d924bddcab72d6d01ecae1edb3f897 --- /dev/null +++ b/module1/README.md @@ -0,0 +1 @@ +Module 1 diff --git a/module1/exo2/.gitkeep b/module1/exo2/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/module1/exo2/fichier-markdown.md b/module1/exo2/fichier-markdown.md new file mode 100644 index 0000000000000000000000000000000000000000..cc68a55888f672377fcf3aeed13776e5e09bd4e9 --- /dev/null +++ b/module1/exo2/fichier-markdown.md @@ -0,0 +1,35 @@ +# Partie 1 + +## Sous-partie 1 : texte + +Une phrase sans rien + +*Une phrase en italique* + +**Une phrase en gras** + +Un lien vers [fun-mooc.fr](https://www.fun-mooc.fr/) + +Une ligne de `code` + +## Sous-partie 2 : listes + +**Liste à puce** + +- item + - sous-item + - sous-item +- item +- item + +**Liste numérotée** + +1. item +2. item +3. item + +## Sous-partie 3 : code + +``` +# Extrait de code +``` \ No newline at end of file diff --git a/module2/README.md b/module2/README.md new file mode 100644 index 0000000000000000000000000000000000000000..1c901a752bada1a290cde02b77e985dc22d830b8 --- /dev/null +++ b/module2/README.md @@ -0,0 +1 @@ +Module 2 diff --git a/module2/exo1/.ipynb_checkpoints/toy_notebook_en-checkpoint.ipynb b/module2/exo1/.ipynb_checkpoints/toy_notebook_en-checkpoint.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..fc8aba046258121395bfded726ba3b63a7aef49c --- /dev/null +++ b/module2/exo1/.ipynb_checkpoints/toy_notebook_en-checkpoint.ipynb @@ -0,0 +1,168 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# On the computation of $\\pi$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Asking the maths library\n", + "My computer tells me that $\\pi$ is _approximatively_" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "hideCode": false, + "hidePrompt": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3.141592653589793\n" + ] + } + ], + "source": [ + "from math import *\n", + "print(pi)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Buffon’s needle\n", + "Applying the method of [Buffon’s needle](https://en.wikipedia.org/wiki/Buffon%27s_needle_problem), we get the __approximation__" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "3.128911138923655" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import numpy as np\n", + "np.random.seed(seed=42)\n", + "N = 10000\n", + "x = np.random.uniform(size=N, low=0, high=1)\n", + "theta = np.random.uniform(size=N, low=0, high=pi/2)\n", + "2/(sum((x+np.sin(theta))>1)/N)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Using a surface fraction argument\n", + "A method that is easier to understand and does not make use of the sin function is based on the\n", + "fact that if $X\\sim U(0, 1)$ and $Y\\sim U(0, 1)$, then $P[X^2 + Y^2\\le 1] = \\pi/4$ (see [\"Monte Carlo method\"\n", + "on Wikipedia](https://en.wikipedia.org/wiki/Monte_Carlo_method)). The following code uses this approach:" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "import matplotlib.pyplot as plt\n", + "\n", + "np.random.seed(seed=42)\n", + "N = 1000\n", + "x = np.random.uniform(size=N, low=0, high=1)\n", + "y = np.random.uniform(size=N, low=0, high=1)\n", + "accept = (x*x+y*y) <= 1\n", + "reject = np.logical_not(accept)\n", + "\n", + "fig, ax = plt.subplots(1)\n", + "ax.scatter(x[accept], y[accept], c='b', alpha=0.2, edgecolor=None)\n", + "ax.scatter(x[reject], y[reject], c='r', alpha=0.2, edgecolor=None)\n", + "ax.set_aspect('equal')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "It is then straightforward to obtain a (not really good) approximation to $\\pi$ by counting how\n", + "many times, on average, $X^2 + Y^2$ is smaller than 1:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "3.112" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "4*np.mean(accept)" + ] + } + ], + "metadata": { + "celltoolbar": "Hide code", + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.4" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/module2/exo1/cars.png b/module2/exo1/cars.png new file mode 100644 index 0000000000000000000000000000000000000000..c6d11231a623dd84dd346684b7ad070020623436 Binary files /dev/null and b/module2/exo1/cars.png differ diff --git a/module2/exo1/cosxsx.png b/module2/exo1/cosxsx.png new file mode 100644 index 0000000000000000000000000000000000000000..90c19d9683fc5673b35b3481174a8afb47b04e6f Binary files /dev/null and b/module2/exo1/cosxsx.png differ diff --git a/module2/exo1/toy_document_en.Rmd b/module2/exo1/toy_document_en.Rmd new file mode 100644 index 0000000000000000000000000000000000000000..13b258ddd0da29bc3bf08c64b6a1db742f6d5409 --- /dev/null +++ b/module2/exo1/toy_document_en.Rmd @@ -0,0 +1,33 @@ +--- +title: "Your title" +author: "Your name" +date: "Today's date" +output: html_document +--- + + +```{r setup, include=FALSE} +knitr::opts_chunk$set(echo = TRUE) +``` + +## Some explanations + +This is an R Markdown document that you can easily export to HTML, PDF, and MS Word formats. For more information on R Markdown, see . + +When you click on the button **Knit**, the document will be compiled in order to re-execute the R code and to include the results into the final document. As we have shown in the video, R code is inserted as follows: + +```{r cars} +summary(cars) +``` + +It is also straightforward to include figures. For example: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Note the parameter `echo = FALSE` that indicates that the code will not appear in the final version of the document. We recommend not to use this parameter in the context of this MOOC, because we want your data analyses to be perfectly transparent and reproducible. + +Since the results are not stored in Rmd files, you should generate an HTML or PDF version of your exercises and commit them. Otherwise reading and checking your analysis will be difficult for anyone else but you. + +Now it's your turn! You can delete all this information and replace it by your computational document. diff --git a/module2/exo1/toy_document_fr.Rmd b/module2/exo1/toy_document_fr.Rmd new file mode 100644 index 0000000000000000000000000000000000000000..7eece5e296bb586e88166aa8a263ca75b44c2b9e --- /dev/null +++ b/module2/exo1/toy_document_fr.Rmd @@ -0,0 +1,33 @@ +--- +title: "Votre titre" +author: "Votre nom" +date: "La date du jour" +output: html_document +--- + + +```{r setup, include=FALSE} +knitr::opts_chunk$set(echo = TRUE) +``` + +## Quelques explications + +Ceci est un document R markdown que vous pouvez aisément exporter au format HTML, PDF, et MS Word. Pour plus de détails sur R Markdown consultez . + +Lorsque vous cliquerez sur le bouton **Knit** ce document sera compilé afin de ré-exécuter le code R et d'inclure les résultats dans un document final. Comme nous vous l'avons montré dans la vidéo, on inclue du code R de la façon suivante: + +```{r cars} +summary(cars) +``` + +Et on peut aussi aisément inclure des figures. Par exemple: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Vous remarquerez le paramètre `echo = FALSE` qui indique que le code ne doit pas apparaître dans la version finale du document. Nous vous recommandons dans le cadre de ce MOOC de ne pas utiliser ce paramètre car l'objectif est que vos analyses de données soient parfaitement transparentes pour être reproductibles. + +Comme les résultats ne sont pas stockés dans les fichiers Rmd, pour faciliter la relecture de vos analyses par d'autres personnes, vous aurez donc intérêt à générer un HTML ou un PDF et à le commiter. + +Maintenant, à vous de jouer! Vous pouvez effacer toutes ces informations et les remplacer par votre document computationnel. diff --git a/module2/exo1/toy_document_orgmode_R_en.org b/module2/exo1/toy_document_orgmode_R_en.org new file mode 100644 index 0000000000000000000000000000000000000000..2b73d64e82dad485ab562f8bda6434ffa7b68d27 --- /dev/null +++ b/module2/exo1/toy_document_orgmode_R_en.org @@ -0,0 +1,81 @@ +#+TITLE: Your title +#+AUTHOR: Your name +#+DATE: Today's date +#+LANGUAGE: en +# #+PROPERTY: header-args :eval never-export + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Some explanations + +This is an org-mode document with code examples in R. Once opened in +Emacs, this document can easily be exported to HTML, PDF, and Office +formats. For more information on org-mode, see +https://orgmode.org/guide/. + +When you type the shortcut =C-c C-e h o=, this document will be +exported as HTML. All the code in it will be re-executed, and the +results will be retrieved and included into the exported document. If +you do not want to re-execute all code each time, you can delete the # +and the space before ~#+PROPERTY:~ in the header of this document. + +Like we showed in the video, R code is included as follows (and is +exxecuted by typing ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +And now the same but in an R session. This is the most frequent +situation, because R is really an interactive language. With a +session, R's state, i.e. the values of all the variables, remains +persistent from one code block to the next. The code is still executed +using ~C-c C-c~. + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Finally, an example for graphical output: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Note the parameter ~:exports results~, which indicates that the code +will not appear in the exported document. We recommend that in the +context of this MOOC, you always leave this parameter setting as +~:exports both~, because we want your analyses to be perfectly +transparent and reproducible. + +Watch out: the figure generated by the code block is /not/ stored in +the org document. It's a plain file, here named ~cars.png~. You have +to commit it explicitly if you want your analysis to be legible and +understandable on GitLab. + +Finally, don't forget that we provide in the resource section of this +MOOC a configuration with a few keyboard shortcuts that allow you to +quickly create code blocks in R by typing ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +R. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclut du code +R de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +Voici la même chose, mais avec une session R (c'est le cas le +plus courant, R étant vraiment un langage interactif), donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Et enfin, voici un exemple de sortie graphique: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cars.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, pour les prochains exercices, nous ne vous fournirons pas +forcément de fichier de départ, ça sera à vous de le créer, par +exemple en repartant de ce document et de le commiter vers +gitlab. N'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code R (en +faisant ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Some explanations + +This is an org-mode document with code examples in R. Once opened in +Emacs, this document can easily be exported to HTML, PDF, and Office +formats. For more information on org-mode, see +https://orgmode.org/guide/. + +When you type the shortcut =C-c C-e h o=, this document will be +exported as HTML. All the code in it will be re-executed, and the +results will be retrieved and included into the exported document. If +you do not want to re-execute all code each time, you can delete the # +and the space before ~#+PROPERTY:~ in the header of this document. + +Like we showed in the video, Python code is included as follows (and +is exxecuted by typing ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +And now the same but in an Python session. With a session, Python's +state, i.e. the values of all the variables, remains persistent from +one code block to the next. The code is still executed using ~C-c +C-c~. + +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Finally, an example for graphical output: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Note the parameter ~:exports results~, which indicates that the code +will not appear in the exported document. We recommend that in the +context of this MOOC, you always leave this parameter setting as +~:exports both~, because we want your analyses to be perfectly +transparent and reproducible. + +Watch out: the figure generated by the code block is /not/ stored in +the org document. It's a plain file, here named ~cosxsx.png~. You have +to commit it explicitly if you want your analysis to be legible and +understandable on GitLab. + +Finally, don't forget that we provide in the resource section of this +MOOC a configuration with a few keyboard shortcuts that allow you to +quickly create code blocks in Python by typing ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +python. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclue du code +python de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +Voici la même chose, mais avec une session python, donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Et enfin, voici un exemple de sortie graphique: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cosxsx.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, n'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code python (en +faisant ~" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "plt.rcdefaults()\n", + "fig, ax = plt.subplots()\n", + "ax.set_xlim([0,100])\n", + "ax.set_ylim([0,25])\n", + "ax.plot(set)\n", + "plt.grid(True, linestyle='--')\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAigAAAGiCAYAAADNzj2mAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzt3X1sVNedP/73ufeOx0NqIIAfE9sFSuy0yWI3TRO7hWBUEIZGTWlXBRQpUbfdPpBUEY3y0Cgbs90CjdRsvl3y0N1fxGbVBrLab9OtFifBWQxOhQkkwkm+iTEkIdihgLFDjIHxeO695/fH4LEHjwHb13M/nnm/JAt8PIzP4e0z9+M759yrtNYaRERERIIYfneAiIiI6GIsUIiIiEgcFihEREQkDgsUIiIiEocFChEREYnDAoWIiIjEYYFCRERE4rBAISIiInFYoBAREZE4LFCIiIhInFEVKBs3bsTNN9+MnJwc5OXl4Y477kBbW1vCY+6++24opRI+br31Vk87TUREROltVAXK7t27sXbtWuzduxcNDQ2wbRtLly7FuXPnEh63bNkyHD9+PP5RX1/vaaeJiIgovVmjefArr7yS8PmWLVuQl5eHt956CwsXLoy3B4NBFBQUeNNDIiIiyjijKlAu1tPTAwCYMWNGQvuuXbuQl5eH6dOn47bbbsOvfvUr5OXlJX2OSCSCSCQS/9x1XXz66aeYOXMmlFLj6R4RERGliNYavb29KCoqgmGMf4mr0lrrsXbkW9/6Fk6fPo3XX3893v7iiy/ic5/7HEpLS3HkyBE8+uijsG0bb731FoLB4LDnqaurw/r168c+AiIiIhKjo6MD11577bifZ8wFytq1a7F9+3b85S9/uWRHjh8/jtLSUmzbtg0rV64c9vWLz6D09PSgpKQEhw4dip+ZMQwDpmnCcRy4rht/7EC7bdsYOgzTNGEYxojt0Wg0oQ+WFTuRZNv2FbUHAgG4rgvHceJtSilYljVi+0h9lz4mrTV27NiBmpoaBAKBtBjTZM0pGo2isbER3/jGNxJ+O5nMYwImZ04DWSxZsgSBQCAtxnS5dqljGsiipqYGoVAoLcZ0JX2XOKbOzk7MmzcPn332GaZNm4bxGtNbPPfeey/+/Oc/o6mp6bJVUmFhIUpLS3H48OGkXw8Gg0nPrMyYMQMzZ84cS/fIQ9FoFFOmTMHMmTPjBQr5YyCL6dOnMwufDWQxbdo0ZuEzvkbJMVBcebU8Y1QFitYa9957L1566SXs2rULs2fPvuy/6e7uRkdHBwoLC8fcSSIiIsoso1rFsnbtWvz+97/HCy+8gJycHJw4cQInTpxAOBwGAJw9exb3338/mpub8fHHH2PXrl24/fbbMWvWLHz7298eVcdM0xzV42limKaJiooK5iEAs5CDWcjBLOTwOoNRrUEZ6bTNli1bcPfddyMcDuOOO+7AgQMH8Nlnn6GwsBA1NTX45S9/ieLi4iv6HmfOnMG0adPQ09ODqVOnXmnXiIiIyEdeH79H/RbPpYRCIbz66qvj6tCAixf+kD9s20ZTUxMWLlwYX5RF/mAWcjALOZiFHF4ft8Xei2eMm4vIYwP72pmH/5iFHMxCDmYhh9cZiC1QiIiIKHOxQCEiIiJxxBYoXJEtg2maqKqqYh4CMAs5mIUczEIOrzMQu6LIi+v40/gZhjHifZQotZiFHMxCDmYhh9fHbbFVwMWX+yV/RKNRbN++nXkIwCzkYBZyMAs5vM5AbIFCcnDLtxzMQg5mIQezSE8sUIiIiEgcFihEREQkzqgudZ8KA5fK9ep2zTQ+AxdBysnJ8ewOlTQ2zEIOZiEHs5Cjp6cH06dP9+xS9zyDQpcVCoX87gJdwCzkYBZyMIv0JLZA4aInGWzbRn19PfMQgFnIwSzkYBZyZMy9eIiIiChzsUAhIiIicVigEBERkTjcxUOXpLWGbduwLIsr5H3GLORgFnIwCzm4i4dSLhwO+90FuoBZyMEs5GAW6UlsgcIV2TLYto3GxkbmIQCzkINZyMEs5OAuHiIiIkp7LFCIiIhIHBYodFmWZfndBbqAWcjBLORgFulJ7C4er1YBExER0cTz+vgt9gyK67p+d4EQy6Gzs5N5CMAs5GAWcjALObzOQGyB4jiO310gxHJobm5mHgIwCzmYhRzMQg6vMxBboBAREVHmYoFCRERE4ogtUHjJYhmUUsjJyWEeAjALOZiFHMxCDq8z4C4eIiIiGjfu4qGUcl0XR48eZR4CMAs5mIUczEIO7uKhlHIcBy0tLcxDAGYhB7OQg1nIwV08RERElPZYoBAREZE4YgsUrsiWQSmF3Nxc5iEAs5CDWcjBLOTgLh4iIiISJ2N28XDBkwyO4+DgwYPMQwBmIQezkINZyJExi2S5ZUwG13XR1tbGPARgFnIwCzmYhRxeZ2B5+mxERBmovb0dXV1dfnfjkmbNmoWSkhK/u0F0xVigEBGNQ3t7O8rKr0df+LzfXbmk7NAUtB1sZZFCk4bYAsUwxL77lFEMw0BJSQnzEIBZyDE0i66uLvSFz2PmN3+OwMxiv7uWVLS7A93/8xt0dXWlXYHCeSGH1xmILVBM0/S7C4RYDpWVlX53g8AsJEmWRWBmMYIFX/CpR5mL80IOr4/bYktOrsiWwXEcHDhwgHkIwCzkYBZyMAs5uIuHUsp1XbS3tzMPAZiFHMxCDmYhR8bcLJCIiIgyFwsUIiIiEkdsgcIV2TIYhoGysjLmIQCzkINZyMEs5OAuHkop0zRRXl7udzcIzEISZiEHs5AjY3bx2LbtdxcIsRz27NnDPARgFnIwCzmYhRxeZyC2QBF2k+WMpbXGqVOnmIcAzEIOZiEHs5DD6wzEFihERESUuVigEBERkThiCxQukpXBNE1UVFQwDwGYhRzMQg5mIYfXGYjdxcMtYzIYhoHS0lK/u0FgFpIwCzmYhRxeH7fFVgFckS2DbdvYuXMn8xCAWcjBLORgFnJwFw+llNYavb29zEMAZiEHs5CDWcjBXTxERESU9ligEBERkThiCxSuyJbBNE1UVVUxDwGYhRzMQg5mIQd38VBKGYaBvLw8v7tBYBaSMAs5mIUcGbOLJxqN+t0FQiyH7du3Mw8BmIUczEIOZiGH1xmILVBIDm7fk4NZyMEs5GAW6YkFChEREYnDAoWIiIjEEVugWJbY9bsZxbIs1NTUMA8BmIUczEIOZiGH1xmMqkDZuHEjbr75ZuTk5CAvLw933HEH2traEh6jtUZdXR2KiooQCoWwaNEivPfee552mlIrFAr53QW6gFnIwSzkYBbpaVQFyu7du7F27Vrs3bsXDQ0NsG0bS5cuxblz5+KPefzxx/HEE09g8+bN2L9/PwoKCrBkyRL09vaOqmNc9CSDbduor69nHgIwCzmYhRzMQg6vMxjV+ZhXXnkl4fMtW7YgLy8Pb731FhYuXAitNZ588kk88sgjWLlyJQDg+eefR35+Pl544QX86Ec/8q7nRERElLbG9YZRT08PAGDGjBkAgCNHjuDEiRNYunRp/DHBYBC33XYb9uzZk7RAiUQiiEQi8c/PnDkDILafemBPtWEYME0TjuPAdd34YwfabdtOuEmRaZowDGPE9ov3ag+8b3Zx9TdSeyAQgOu6cBwn3qaUgmVZI7aP1HfpYxow9Pkn+5gma04D/9Z13aR5TMYxAZfP6ejRo+ju7k7op9Z62I3JDMNIGM/A8yilPGkHBm+GNvD1lpYWHDp0CKFQCNmWQpYZ+3rEUTCgERhyYU2tgX5XwVQalnH5dlcDUVchYGgYg1MRtgs4WiHL0FBX0B698N8aCoUSfnbSZT4NjCcajabNmK6k71LH5KUxFyhaa6xbtw5f//rXccMNNwAATpw4AQDIz89PeGx+fj6OHj2a9Hk2btyI9evXD2tvbGzElClTAAAlJSWorKzEO++8g/b29vhjysrKUF5ejn379uHUqVPx9oqKCpSWlqKpqSnhraWqqirk5eVhx44dCf+RNTU1CIVCqK+vT+jD8uXLEQ6H0djYGG+zLAsrVqxAV1cXmpub4+05OTlYvHgxOjo60NLSEm/Pzc1FdXU1Dh8+nLBeZ7KMacGCBQCAhoaGtBnTZM4JALq7u7F///60GdOlcmppaUFHR0e8/cCBA1i/fj1WrVqFVatWxdsbGhrw1FNPYe3atViyZEm8fdu2bdi2bRsee+wxVFZWxts3b96M1157Db/97W9RUlISb6+rq0NLSwteeOGF+OsPANx7773o6urC1q1bE8a0bNkyXHXVVUPaHfTZwIP7LVw3TeMnXxx8cT9+Htj0toWbczVWzx1sb/1M4dlWE0uucVFbPPii33xSYdtHJr7zeRdV+YPtL3covPKJie+Xubh++mD71g8N7O1UWHejg8LBruOZ9w28fQJ47rnncOzYMRw7dgxA+s2nhoaGtBsTMLlyeuONN+Alpcd4f+S1a9di+/bt+Mtf/oJrr70WALBnzx587Wtfw1//+lcUFhbGH/vDH/4QHR0dw94iApKfQSkuLsapU6cwbdo0AKxQ/RyTaZro7++P/2aZDmOarDlpraGUGnamYDKPCbh0Tm+99RYWLFiAGcvuRWDGNXA10O/EzjRYQ04rOC4QdTUChoI55CyE7WrYLpBlqoSzEFFHw9FA0FQJZxv6HQ1XA9nWkEYAEVtDI7E9aCn09LnoO/ImIvv/L/LXbEJW/pzY44WdQQmf+BA9//kwmpqaMH/+/EvmMdnmk9Yatm3DsiwEAoG0GNOV9F3imLq7uzFr1iz09PRg6tSpGK8xnUG599578ec//xlNTU3x4gQACgoKAMTOpAwtUDo7O4edVRkQDAYRDAaHtQcCgfgP2wDTNJPejGikrU0jtV/8vGNpNwwj6X0HRmofqe/Sx6S1RiQSQU5OTsJbPpfqu/QxXapd8pi01ujt7UVOTk7SvkzGMQ0Yqe9KKYTDYThTi2DNmgsFYODVYuhvVsYI7eaFj4vbLQy++A1tDyRpA4Csi9oVNKaHgEgYiHZ3IBwOo8/W0M7gHHGhEHEwjKMVnFG0R101vBGxomY07eFwGIZhDPv/n+zzSWuNvr4+hEKh+GvUZB/TeNuljWmsRrWLR2uNe+65B3/84x+xc+dOzJ49O+Hrs2fPRkFBQcLbAf39/di9ezeqq6tH1TGuyJbBtm00NjYyDwGYhRxZJvBwhYMs3kDXd5wXcvi6BmXt2rV44YUX8N///d/IycmJrzmZNm1avHq97777sGHDBsybNw/z5s3Dhg0bMGXKFKxZs8bTjhMREVH6GlWB8swzzwAAFi1alNC+ZcsW3H333QCABx54AOFwGD/96U9x+vRp3HLLLdixYwdycnI86TARERGlv1EVKFeynlYphbq6OtTV1Y21TyQMLyEtB7OQo4/vKIjBeZGexKY60oIgSq1AIIAVK1b43Q0Cs5Ak4ig8uF/sy2dG4byQw+vjttibBV58oSTyh+u66OzsZB4CMAs5DGiUT3NhDNvvQ6nGeSGH1xmILVCcZPvtKOUcx0FzczPzEIBZyBEwgZ980U24zgn5g/NCDq8zEFugEBERUeZigUJERETiiC1QLr5qKflDKZX0KrKUesxCDq1j99YZ241CyEucF3J4nYHYZejcNiaDZVlYvHix390gMAtJ+l2FTW/zNUoCzgs5fL3UfSpxRbYMA7e7Zx7+YxZymErj1jwXpuIpFL9xXsjBXTyUUo7joKWlhXkIwCzksAxg9Vw34e7D5A/OCzm4i4eIiIjSHgsUIiIiEkdsgcIV2TIopZCbm8s8BGAWcmgNtH6muItHAM4LObiLh1LKsixUV1f73Q0Cs5Ck31V4tpWXkZWA80KOjNnFwwVPMjiOg4MHDzIPAZiFHKbSWHatw108AnBeyJExi2S5ZUwG13XR1tbGPARgFnJYBlBbrLmLRwDOCzkyZpsxERERZS4WKERERCSO2ALFMMR2LaMYhoGSkhLmIQCzkMPVQPNJBZdLUHzHeSGH1xmI3SpjmlwhL4FpmqisrPS7GwRmIUnUVdj2EV+jJOC8kMPr47bYkpMrsmVwHAcHDhxgHgIwCzkChsaqOQ4CBk+h+I3zQg7u4qGUcl0X7e3tzEMAZiGHoYCqfA2D1wbzHeeFHNzFQ0RERGmPBQoRERGJI7ZA4YpsGQzDQFlZGfMQgFnIYbvAyx0KNt9V8B3nhRzcxUMpZZomysvL/e4GgVlI4miFVz7ha5QEnBdyZMwuHtu2/e4CIZbDnj17mIcAzEKOLEPjx9c7yOIuHt9xXsjhdQZiCxTN+5iLoLXGqVOnmIcAzEIOpYDrp2t4fHd5GgPOCzm8zkBsgUJERESZiwUKERERiSO2QOEiWRlM00RFRQXzEIBZyGG7wNYPDe7iEYDzQg6vMxC7i4dbxmQwDAOlpaV+d4PALCRxtMLeTi5AkYDzQg6vj9tiqwCuyJbBtm3s3LmTeQjALOTIMjQemm9zF48AnBdycBcPpZTWGr29vcxDAGYhh1JA4RRwF48AnBdycBcPERERpT0WKERERCSO2AKFK7JlME0TVVVVzEMAZiFH1AGeed9A1PG7J8R5IQd38VBKGYaBvLw8v7tBYBaSuFA42MMFKBJwXsiRMbt4otGo310gxHLYvn078xCAWcgRNDV+fbONoMmFmX7jvJDD6wzEFigkB7fvycEs5MgWe/4583BepCcWKERERCQOCxQiIiISR2yBYlk8fyqBZVmoqalhHgIwCzn6HWBji4l+7uLxHeeFHF5nILZAITlCoZDfXaALmIUMGsDp/tif5D/Oi/QktkDhoicZbNtGfX098xCAWcgRNIHHv+ogyEtv+I7zQo6MuRcPERERZS4WKERERCQOCxQiIiISR2yBwhXZMliWheXLlzMPAZiFHBEHeGCfiQh38fiO80IO7uKhlAuHw353gS5gFjIoAFdnxf4k/3FepCexBQpXZMtg2zYaGxuZhwDMQo4sE3i4wkEWd/H4jvNCDu7iISIiorTHN+2IMlx7ezu6urr87kZSra2tfneBiHzCAoUui4vP5PA6i/b2dpSVX4++8HlPnzcT9PEdBTH4GpWexKYaCAT87gIhlsOKFSv87gZhYrLo6upCX/g8Zn7z5wjMLPb0ub0Q/uhN9Lz+e7+7MUzEUXhwv9iXz4zC1yg5vD5ui51hruv63QVCLIeuri7MmjULhsElS36ayCwCM4sRLPiCp8/phWh3h99dSMqAxnXTNA71cB+P3/gaJYfXx22xaToOLzAggeM4aG5uZh4CMAs5Aibwky+6CHAXj+84L+TwOgOxBQoRERFlLhYoREREJI7YAkUpvrcrgVIKOTk5zEMAZiGH1sDx87E/yV+cF3J4nYHYRbLcNiaDZVlYvHix390gMAtJ+l2FTW/zNUoCzgs5MuZePNzFI4Prujh69CjzEIBZyGEqjVvzXJiKp1D8xnkhB3fxUEo5joOWlhbmIQCzkMMygNVzXVhiX0EzB+eFHNzFQ0RERGlv1AVKU1MTbr/9dhQVFUEphT/96U8JX7/77ruhlEr4uPXWWz3rMBEREaW/URco586dw/z587F58+YRH7Ns2TIcP348/lFfXz/qjnFFtgxKKeTm5jIPAZiFHFoDrZ8p7uIRgPNCDt938dTW1qK2tvaSjwkGgygoKBhzpwDu4pHCsixUV1f73Q0Cs5Ck31V4tpWXkZWA80IOr4/bE1IF7Nq1C3l5eZg+fTpuu+02/OpXv0JeXl7Sx0YiEUQikfjnZ86cAQD09fUhFAoBAAzDgGmacBwnYZXwQLtt29BDfpUxTROGYYzYHo1GE/ow8J9q2/YVtQcCAbium7AgSCkFy7JGbB+p79LHpJTCoUOHMHv2bJimmRZjmqw5OY6Djz/+GHPnzk147HjHFAqFkG0pGErD0QpZhsbQX4RsF0nbow7gQiFoJp5G6HcADSB40fE74gAKQNawdgUDOuGy8VrHigDTUPH+ZZl6sF3phAWqrgairkLA0DCuoO/jHZOpNBYXunj5EwNKIaGPlx3TRX1PxZiAWB9d143/DKbLfHIcBx9++CHmzp2LYDCYFmO6kr5LHNPQY7kXPC9Qamtr8bd/+7coLS3FkSNH8Oijj2Lx4sV466234j88Q23cuBHr168f1v6///u/mDJlCgCgpKQElZWVeOedd9De3h5/TFlZGcrLy7Fv3z6cOnUq3l5RUYHS0lI0NTWht7c33l5VVYW8vDzs2LEjIdSamhqEQqFhb0UtX74c4XAYjY2N8TbLsrBixQp0dXWhubk53p6Tk4PFixejo6MDLS0t8fbc3FxUV1fj8OHDaGtri7dPljEtWLAAhw4dwqFDh9JmTJM5J9u2MXXqVOzfv9+TMR07dgxbt24FALzc4eKVT0x8v8zF9dMHX3y2fmhgb6fCuhsdFE4Z7OMz7xs42KPwj192kD3klWRji4nT/cDjX01c0f/APhNXZwEPVwy299nAg/stXDdN4ydfHHwhPH4e2PS2hep5ebj7+1svtDpo/Sx25mLJNS5qiwf72HxSYdtHJr7zeRdV+YPtL3eoCR1T0wngqmlT8Mutg3283JhuztVYPXewPRVjevsE8Nxzz+HYsWM4duwYgPSbTx988EHajQmYXDkN/Z5eUFqP/V1UpRReeukl3HHHHSM+5vjx4ygtLcW2bduwcuXKYV9PdgaluLgYx48fx8yZMwGwQvVzTFpr1NfXY8mSJfFbaU/2MU3WnKLRKBoaGrBs2bKEu7aOZ0wHDhzAwoULkb9mE4zcOeLOoIRbd6G34Snkr9mErPw5Ys6gBA2NX37FxQP7DHz67m6ce+3peB8vNyY/zqCET3yInv98GE1NTZg/fz6A9JlPA/NiyZIl8bPuk31MV9J3iWM6efIkCgoK0NPTg6lTp2K8JnyhR2FhIUpLS3H48OGkXw8Gg0nPrAQCgfgBcYBpmvG3GYYa6X2vkdovft6xtBuGkfTW3iO1j9R36WMamCyjyUP6mC7VPlnGNJqxXmpMhmEgHA6jz9YI6thRrd9NvtBtpPaIM1L78DY9QrsLlbTdcXW8f3rI93G0QrJLLkRH2ffxjym2UDZZH0cc0wh9n+gxhcPhpD876TKfAoFAfJFmuoxprO3SxjRWE34dlO7ubnR0dKCwsHBU/y7ZfyKlnmEYKCkpYR4CMAs5XB17C8blLh7fcV7I4XUGoy53zp49iw8++CD++ZEjR9DS0oIZM2ZgxowZqKurw3e+8x0UFhbi448/xi9+8QvMmjUL3/72t0f1fZJVbZR6pmmisrLS724QmIUkUTe2PoT8x3khh9fH7VGXO2+++SYqKyvjPxDr1q1DZWUl/uEf/gGmaeLdd9/Ft771LVx33XW46667cN1116G5uRk5OTmj+j68bLEMA+sUmIf/mIUcAUNj1RwHAYOnUPzGeSGH1xmM+gzKokWLcKl1ta+++uq4OjSAN36SwXVdtLe344YbbuBZLZ8xCzkMBVTla7x01O+eEOeFHBlzs0AiIiLKXCxQiIiISByxBQpXZMtgGAbKysqYhwDMQg7bjV0wzeY70b7jvJDD9108qcL3EmUwTRPl5eV+d4PALCRxdOxqruQ/zgs5fN/FkyoXXx2P/GHbNvbs2cM8BGAWcmQZGj++3kEWd/H4jvNCDq8zEFugjOMK/OQhrTVOnTrFPARgFnIoBVw/PfGS8uQPzgs5vM5AbIFCREREmYsFChEREYkjtkDhIlkZTNNERUUF8xCAWchhu8DWDw3u4hGA80IOrzMQu4uHW8ZkMAwDpaWlfneDwCwkcbTC3k4uQJGA80IOr4/bYqsArsiWwbZt7Ny5k3kIwCzkyDI0HppvcxePAJwXcnAXD6WU1hq9vb3MQwBmIYdSQOEUcBePAJwXcnAXDxEREaU9FihEREQkjtgChSuyZTBNE1VVVcxDAGYhR9QBnnnfQNTxuyfEeSEHd/FQShmGgby8PL+7QWAWkrhQONjDBSgScF7IkTG7eKLRqN9dIMRy2L59O/MQgFnIETQ1fn2zjaDJhZl+47yQw+sMxBYoJAe378nBLOTIFnv+OfNwXqQnFihEREQkDgsUIiIiEkdsgWJZPH8qgWVZqKmpYR4CMAs5+h1gY4uJfu7i8R3nhRxeZyC2QCE5QqGQ312gC5iFDBrA6f7Yn+Q/zov0JLZA4aInGWzbRn19PfMQgFnIETSBx7/qIMhLb/iO80KOjLkXDxEREWUuFihEREQkDgsUIiIiEkdsgcIV2TJYloXly5czDwGYhRwRB3hgn4kId/H4jvNCDu7ioZQLh8N+d4EuYBYyKABXZ8X+JP9xXqQnsQUKV2TLYNs2GhsbmYcAzEKOLBN4uMJBFnfx+I7zQg7u4iEiIqK0xwKFiIiIxGGBQpfFxWdyMAs5+viOghicF+lJbKqBQMDvLhBiOaxYscLvbhCYhSQRR+HB/WJfPjMK54UcXh+3xZ5BcV3X7y4QYjl0dnYyDwGYhRwGNMqnuTB4Nx7fcV7I4XUGYgsUx+EFBiRwHAfNzc3MQwBmIUfABH7yRRcB7uLxHeeFHF5nILZAISIioszFAoWIiIjEEVugKMVrNEqglEJOTg7zEIBZyKE1cPx87E/yF+eFHF5nIHYZOreNyWBZFhYvXux3NwjMQpJ+V2HT23yNkoDzQo6MuRcPV2TL4Loujh49yjwEYBZymErj1jwXpuIpFL9xXsjBXTyUUo7joKWlhXkIwCzksAxg9VwXlthX0MzBeSEHd/EQERFR2mOBQkREROKILVC4IlsGpRRyc3OZhwDMQg6tgdbPFHfxCMB5IQd38VBKWZaF6upqv7tBYBaS9LsKz7byMrIScF7IkTG7eLjgSQbHcXDw4EHmIQCzkMNUGsuudbiLRwDOCzkyZpEst4zJ4Lou2tramIcAzEIOywBqizV38QjAeSFHxmwzJiIioszFAoWIiIjEEVugGIbYrmUUwzBQUlLCPARgFnK4Gmg+qeByCYrvOC/k8DoDsVtlTJMr5CUwTROVlZV+d4PALCSJugrbPuJrlAScF3J4fdwWW3JyRbYMjuPgwIEDzEMAZiFHwNBYNcdBwOApFL9xXsjBXTyUUq7ror29nXkIwCzkMBRQla9h8NpgvuO8kIO7eIiIiCjtsUDcUU1KAAAgAElEQVQhIiIiccQWKFyRLYNhGCgrK2MeAjALOWwXeLlDwea7Cr7jvJCDu3gopUzTRHl5ud/dIDALSRyt8MonfI2SgPNCjozZxWPbtt9dIMRy2LNnD/MQgFnIkWVo/Ph6B1ncxeM7zgs5vM5AbIGieR9zEbTWOHXqFPMQgFnIoRRw/XQNj+8uT2PAeSGH1xmILVCIiIgoc7FAISIiInHEFihcJCuDaZqoqKhgHgIwCzlsF9j6ocFdPAJwXsjhdQZid/Fwy5gMhmGgtLTU724QmIUkjlbY28kFKBJwXsjh9XF71M/W1NSE22+/HUVFRVBK4U9/+lPC17XWqKurQ1FREUKhEBYtWoT33ntv1B3jimwZbNvGzp07mYcAzEKOLEPjofk2d/EIwHkhh++7eM6dO4f58+dj8+bNSb/++OOP44knnsDmzZuxf/9+FBQUYMmSJejt7R3V9+GKbBm01ujt7WUeAjALOZQCCqeAu3gE4LyQw+sMRv0WT21tLWpra5N+TWuNJ598Eo888ghWrlwJAHj++eeRn5+PF154AT/60Y+G/ZtIJIJIJBL//MyZMwCAaDSKaDQKIHbayDRNOI6TcDOigXbbthP+Y0zThGEYI7YPPG/8P8GK/TdcXP2N1B4IBOC6bsKdG5VSsCxrxPaR+i59TAOGPv9kH9NkzWng37qumzSPsY4pFAoh21IwlIajFbKMxO2ztouk7VEHcKEQNBNflPodQAMIXvR2dMQBFICsYe0KBjQCQ9q1BvpdBdNQ8f5lmXqwXWlYQ369cjUQdRUCRuIN/Ebq+3jHFIyfOYn9+6F9vOyYLup7KsYExPo49GcnXebTwHii0WjajOlK+i51TF7ydA3KkSNHcOLECSxdujTeFgwGcdttt2HPnj1JC5SNGzdi/fr1w9obGxsxZcoUAEBJSQkqKyvxzjvvoL29Pf6YsrIylJeXY9++fTh16lS8vaKiAqWlpWhqako4c1NVVYW8vDzs2LEj4T+ypqYGoVAI9fX1CX1Yvnw5wuEwGhsb422WZWHFihXo6upCc3NzvD0nJweLFy9GR0cHWlpa4u25ubmorq7G4cOH0dbWFm+fLGNasGABAKChoSFtxjSZcwKA7u5u7N+/35MxHTt2DFu3bgUAvNzh4pVPTHy/zMX10wdffLZ+aGBvp8K6Gx0UThns4zPvGzjYo/CPX3aQPeSVZGOLidP9wONfTbz1+gP7TFydBTxcMdjeZwMP7rdw3TSNn3xx8IXw+Hlg09sWqufl4e7vb73Q6qD1M4VnW00sucZFbfFgH5tPKmz7yMR3Pu+iKn+w/eUONaFjChpA4bQp+OXWwT5ebkw352qsnjvYnooxvX0CeO6553Ds2DEcO3YMQPrNp4aGhrQbEzC5cnrjjTfgJaXHcU5GKYWXXnoJd9xxBwBgz549+NrXvoZjx46hqKgo/ri///u/x9GjR/Hqq68Oe45kZ1CKi4vR2dmJ6dOnA2CF6ueYDMNAZ2cnrr766vgCqMk+psmak+u66OnpwYwZMxKeezxjOnDgABYuXIj8NZtg5M4RdwYl3LoLvQ1PIX/NJmTlzxFzBsWAxhemarx3WqH3/d0499rT8T5ebkx+nEEJn/gQPf/5MJqamjB//nwA6TOfXNdFd3c3Zs6ciaysrLQY05X0XeKYurq6kJubi56eHkydOhXjNSG7eIa+NQDE3vq5uG1AMBhEMBhM2h4IBBLaTNNMuo1pIKgrbb/4ecfSbhhG0hXLI7WP1PfJMKaCgoKkzzGZxzRZc8rLy0v6OGBsYzIMA+FwGH22RlDH5mi/m3yujtQecUZqH96mR2h3oZK2O66O908P+T6OVnCSPD46yr6PfUwK756O/U1rJO3jiGMaoe8TPaZwOAzDMIb9TKXDfBr6C/FIfR+pXeqYxtPu15gGCkSveLonaOBAduLEiYT2zs5O5Ofnj+q5Lq4iyR/RaBTbt29nHgIwCzmCpsavb7aHnWmh1OO8kMPrDDwtUGbPno2CgoKE9Qr9/f3YvXs3qqurvfxWlELcvicHs5Aje0LOP9NYcF6kp1FPsbNnz+KDDz6If37kyBG0tLRgxowZKCkpwX333YcNGzZg3rx5mDdvHjZs2IApU6ZgzZo1nnaciIiI0teoC5Q333wTNTU18c/XrVsHALjrrrvw7//+73jggQcQDofx05/+FKdPn8Ytt9yCHTt2ICcnx7teExERUVobdYGyaNGiS16MRSmFuro61NXVjadfIy7CodSyLAs1NTXMQwBmIUe/E9t63J9kUSulFueFHF5nwBve0GWFQiG/u0AXMAsZNIDT/bE/yX+cF+lJbIHCRU8y2LaN+vp65iEAs5AjaMYu2nbxtV4o9Tgv5PD9XjxEREREE40FChEREYnDAoWIiIjEEVugcEW2DJZlYfny5cxDAGYhR8SJ3fww2aXsKbU4L+TwOgMmSpcVDod5HZsxam9vR1dXlyfPpbWGbduwLGvEe1uNVmtrqyfPk2kUgKuzgJNhv3syOtLznjVrFkpKSkb97/galZ7EFihckS2DbdtobGzE8uXLR7xZFSXX3t6OsvLr0Rc+78nzhUIhbN26FatXr0Y4PMmOjGkmywQernDwwL7JsY3HOXsaUAp33nmn3125pOzQFLQdbB1VkcLXKDm8Pm6LLVCIJruuri70hc9j5jd/jsDM4nE/X7YVO2uSv2YT+mxvrsAR/uhN9Lz+e0+ei+RyI2cBrT37WZwI0e4OdP/Pb9DV1TWmsyiUfligEE2wwMxiBAu+MO7nyTI1AAdZ+XOgHW/e4ol2d3jyPDQ5ePWzSJQKYhfJkhxcfCZHH9/5FINZyMHXqPQkNlW+lyhDIBDAihUr/O4GAYg4Cg/uFztlMwqzkIOvUXJ4fdwWewbFdV2/u0CI5dDZ2ck8BDCgUT7NhcE7wPiOWcjB1yg5vM5AbIHiOLzAgASO46C5uZl5CBAwgZ980UVgcmwcSWvMQg6+RsnhdQZiCxQiIiLKXCxQiIiISByxBYpXV8qk8VFKIScnh3kIoDVw/HzsT/IXs5CDr1FyeJ2B2GXo3DYmg2VZWLx4sd/dIAD9rsKmtzkvJGAWcvA1Sg6vj9tiz6BwRbYMruvi6NGjzEMAU2ncmufCVPy13W/MQg6+RsnBXTyUUo7joKWlhXkIYBnA6rkuLLGzNnMwCzn4GiUHd/EQERFR2uObqEREJEZra+uoHj/wtsLbb78Nw5j437lnzZrFmxmmiNgChSuyZVBKITc3l3kIoDXQ+pnizhEBmIX3nLOnAaVw5513jurfBYNBPPTQQ/je976HSCQyQb0blB2agraDrSxSkuAuHkopy7JQXV3tdzcIsZ0jz7by0qUSMAvvuZGzgNaY+c2fIzCzeFT/9ncfA1ev+vXEdGyIaHcHuv/nN+jq6mKBkoTXx22xVQAXPMngOA4OHz6MefPmwTT5guwnU2ksucZFwzEDjuYZLT8NzYK8FZhZjGDBF6748ZwXcmTMIlluGZPBdV20tbUxDwEsA6gt1tw5IgCzkINZyJEx24yJiIgoc7FAISIiInHEFiip2C5Gl2cYBkpKSpiHAK4Gmk8quNw54jtmIQezkMPr44TYRbJckCmDaZqorKz0uxsEIOoqbPuI80ICZiEHs5DD6+O22F+LuYtHBsdxcODAAeYhQMDQWDXHQcDgr4p+YxZyMAs5uIuHUsp1XbS3tzMPAQwFVOVrGNxJ6TtmIQezkIO7eIiIiCjtsUAhIiIiccQWKNw1IoNhGCgrK2MeAtgu8HKHgs1323zHLORgFnJwFw+llGmaKC8v97sbBMDRCq98wnkhAbOQg1nIkTG7eGzb9rsLhFgOe/bsYR4CZBkaP77eQRZ3K/iOWcjBLOTw+jghtkDRvI+5CFprnDp1inkIoBRw/XQNj+9oTmPALORgFnJ4fZwQW6AQERFR5mKBQkREROKILVC4SFYG0zRRUVHBPASwXWDrhwZ3KwjALORgFnJ4fZwQu4uH21plMAwDpaWlfneDENutsLeTb7RLwCzkYBZyeH3cFlsFcNeIDLZtY+fOncxDgCxD46H5NncrCMAs5GAWcnAXD6WU1hq9vb3MQwClgMIp4G4FAZiFHMxCDu7iISIiorTHAoWIiIjEEVugcNeIDKZpoqqqinkIEHWAZ943EHX87gkxCzmYhRzcxUMpZRgG8vLy/O4GAXChcLCHb7RLwCzkYBZyZMwunmg06ncXCLEctm/fzjwECJoav77ZRtDkgmW/MQs5mIUcXh8nxBYoJAe3GMuRLfacZ+ZhFnIwi/TEAoWIiIjEYYFCRERE4ogtUCyL5+wksCwLNTU1zEOAfgfY2GKin7sVfMcs5GAWcnh9nBBboJAcoVDI7y4QAA3gdH/sT/IXs5CDWaQvsQUKF2bKYNs26uvrmYcAQRN4/KsOgrwkje+YhRzMQo6MuRcPERERZS4WKERERCQOCxQiIiISR2yBwl0jMliWheXLlzMPASIO8MA+ExHuVvAds5CDWcjBXTyUcuFw2O8uEAAF4Oqs2J/kL2YhB7NIX2ILFO4akcG2bTQ2NjIPAbJM4OEKB1ncreA7ZiEHs5CDu3iIiIgo7bFAISIiInE8L1Dq6uqglEr4KCgo8PrbUApxgawcfXynTQxmIQezSE8TcuT50pe+hNdeey3+uWmO/s3BQCDgZZdojAKBAFasWOF3NwhAxFF4cD+LRQmYhRzMQg6vj9sTkqplWVd81iQSiSASicQ/P3PmTLw9Go0CAAzDgGmacBwHruvGHzvQbts2tB68E4NpmjAMY8T2gecd2l9g+AKfkdoDgQBc14XjDO5rU0rBsqwR20fqu/QxGYaBzs5OXH311TAMQ9SYPvnkE3R3d0Op2Pr9oc8x8H211p60Dx3PwP+BUuqS7W1tbQiFQsi2FBQ0XCgEzcTn7ndi9xC5+DLdESe2K2Howj8DGqWfAz7oAUxzcM+C1kC/q2AqDWvIOdGR2l0NRF2FgKGRHTDjfTSUhqMVsgwNNWRLhO0iaXvUwbjHFGtXMKARGNIe77uh4v3LMvUVjcm4gr6Pd0wGNL4wVeO90wpKIaGPlx3TGHIa75iA4X30NCcPxgQAwWAwoY9XktNAFh+cUehz1ISOKQLEX+d5fBre9/7+fnhpQgqUw4cPo6ioCMFgELfccgs2bNiAOXPmJH3sxo0bsX79+mHtr732GqZMmQIAKCkpQWVlJd555x20t7fHH1NWVoby8nLs27cPp06dirdXVFSgtLQUTU1N6O3tjbdXVVUhLy8PO3bsSAi1pqYGoVAI9fX1CX1Yvnw5wuEwGhsb422WZWHFihXo6upCc3NzvD0nJweLFy9GR0cHWlpa4u25ubmorq7G4cOH0dbWFm+fLGNasGAB3njjjYTnkDam1atXY9asWfiXf/mXeNv58+exZs0aVFRUoK6uLt7e3t6On/3sZ/jGN76Be+65J95+4MABrF+/HqtWrcKqVavi7Q0NDXjqqaewdu1aLFmyJN6+bds2bNu2DY899hgqKyvj7Zs3b8Zrr72G3/72tygpKcHWrVsBAM+8r3GwR+Efv+wge8is29hi4nR/7F4iQz2wz8TVWbHdCQP6HCDbBP6/NgM/KBtsP34e2PS2hZtzNVbPHXwxaf1M4dlWE0uucVFbPPhi0nxSYdtHJr7zeRdVt1QDd1UDAF7ucPHKJya+X+bi+umDj9/6oYG9nQrrbnRQOGWwj8+8b4x/TDbw4H4L103T+MkXB/s+MKbqeXm4+/tbL7Q6Vzam/MH2lzvUhI7p0TcVPjdtCn65dbCPlxvTmHIa55jeBPDcc89deE11LjmmseTkxZj+6/8BDz30ECorS+N9HF1OesLH9H/+Cnz3u9/FsWPHcOzYMQCT57U8FcenPXv2wEtKX/zr4ji9/PLLOH/+PK677jqcPHkS//RP/4SDBw/ivffew8yZM4c9PtkZlOLiYhw/fjz+eFao/o1Ja436+nosWbIkfvpOwpjefvttLFy4EDOW3QtnahEUgKCVeCWEPjv2W1rWRWcbIo6GqYDAkHZXA/1O7Dcma8ivdo4LRF2NgKFgDvltynY1bDf23EbCb3YajgaCpkLf0QM4s+dF5K/ZBDVrzrjPNgQNjV9+xcVD+wy48OYMSvjg6/j0lX9B/ppNMHLniDuDEm7dhd6Gp5C/ZhOy8ueIOYMykMUD+wx8+u5unHvt6XgfLzcmP86gnHlvF87/b2IfpZ1B6fl/u3C2YTMK73w83scryWkgi0ffNNAbndgzKL1//RBdf7gfzc3NmD9/PoDJ81qeiuPTyZMnUVBQgJ6eHkydOhXj5fkZlNra2vjfb7zxRlRVVWHu3Ll4/vnnsW7dumGPDwaDCAaDw9oDgcCw97NM00y6nmWkRZwjtY/0Ptlo2g3DiL/lcSXtI/Vd+pgGJsto8kjFmAzDQDgchjO1CMGCLwAYfrv1gZ+qK2lXI7QbI7SbFz4ubrcwOKnsznaEw2H02RrBCwVFxEl+OalkV8HUI7S7UEmfx9EKTpLHj9QedRX6os5gH3XsOfvd5H0cqd27MSXpu6vj/dNDvs+lxpTMxI1JQWsk7eOIYxpDTqPp+0jtyfoIeJSTR2OKRCJJ+3glOUVcBR2fZ8Mf69WYbNuGYRg8PiUx6a4ke9VVV+HGG2/E4cOHR/XvlEr+A0mppZRCTk4O8xBA69jpZ2/PedJYMAs5mIUcXh8nJrxAiUQiaG1tRWFh4aj+Hbe2ymBZFhYvXsw8BOh3FTa9bY342ySlDrOQg1nIIf4Myv3334/du3fjyJEjeOONN/Dd734XZ86cwV133TWq57l4dwT5w3VdHD16lHkIYCqNW/NcmIq/KvqNWcjBLOTw+jjheYHyySefYPXq1SgrK8PKlSuRlZWFvXv3orS0dFTP4yR7849SznEctLS0MA8BLANYPddNWLhH/mAWcjALObw+Tnh+3n7btm1ePyURERFlGNacREREJI7YAoW7RmRQSiE3N5d5CKB17GJR3K3gP2YhB7OQw+vjhNitGdw1IoNlWaiurva7G4TYboVnW0d/XyvyHrOQg1nIIX4Xj1e4KFMGx3Fw8OBB5iGAqTSWXetwt4IAzEIOZiGH18cJsQUKt7XKMHDTO+bhP8sAaos1dysIwCzkYBZyiN9mTERERDReXOjhg/b2dnR1dfndjUuaNWsWSkpK/O4GEZE4ra2tfnfhktLl9VtsgZLshkbpoL29HWXl16MvfN7vrlxSdmgK2g624pprrkFJSUna5jGZuDp2u3qXb7X7jlnIkcosnLOnAaVw5513Tvw3G4eB1+9UFyleHyfEFijJ7qCYDrq6utAXPo+Z3/w5AjOL/e5OUtHuDnT/z2/Q1dWFkpISVFZW+t0lQuwOsNs+Ss95MdkwCzlSmYUbOQtoPalev1PJ6+O22AIl3XeNBGYWI1jwBb+7cVmO4+Cdd97B3/zN36Rt0ThZBAyN73zexf/92BjxdvWUGkOzIH/5MS8my+t3qnEXD6WU67pob29nHgIYCqjK1zBYm/iOWcjBLOTgLh4iIiJKeyxQiIiISByxBQp3jchgGAbKysqYhwC2C7zcoWDz3TbfMQs5mIUc3MVDKWWaJsrLy/3uBgFwtMIrn3BeSMAs5GAWcnh93Bb7a7Ft2353gRDLYc+ePcxDgCxD48fXO8gyePENvzELOZiFHF4fJ8QWKJr3zhZBa41Tp04xDwGUAq6fruHxHc1pDJiFHMxCDq+PE2ILFCIiIspcLFCIiIhIHLEFChfJymCaJioqKpiHALYLbP3Q4G4FAZiFHMxCjoy51D23tcpgGAZKS0v97gYhtlthbyffaJeAWcjBLOTImG3G3DXiv9bWVriui5MnTyI/P19U0Sj9ducTIcvQWHejgyfeNdHPe/H4amgW5C/OCzm8Pm6LLVC4a8Q/Q28pHgqFsHXrVixcuBDhcNjvrmU0pYDCKeBuBQGYhRzMQg6vj9tiCxTyz9Bbiufkx27Xnb9mE/psOUVj+KM30fP67/3uBhERTRAWKDSiwMxiZOXPAeAgK38OtCPnV5Rod4ffXSAiogkkZ1HBRbhrRIaoAzzzvoGo43dPiFnIwSzkYBZycBcPpZQLhYM9cs6cZDJmIQezkINZyOH1cVtsFRCNRv3uAgEImhq/vtlG0JSz/iRTMQs5mIUczEIOr4/bYgsUkiNb7Hm2zMMs5GAWcjCL9MQChYiIiMRhgUJERETiiC1QLIvn7CTod4CNLSb6uULed8xCDmYhB7OQw+vjttgChWTQAE73x/4kfzELOZiFHMwifYktUHgvHhmCJvD4Vx0EeVka3zELOZiFHMxCDq+P22ILFCIiIspcLFCIiIhIHBYoREREJI7YAoW7eGSIOMAD+0xEuELed8xCDmYhB7OQg7t4KKUUgKuzYn+Sv5iFHMxCDmaRvsQWKNzFI0OWCTxc4SCLK+R9xyzkYBZyMAs5uIuHiIiI0h4LFCIiIhKHBQpdVh/fbRODWcjBLORgFulJ7FaZQCDgdxcIQMRReHC/2B+TjMIs5GAWcjALObw+bos9g+K6rt9dIAAGNMqnuTB4pwvfMQs5mIUczEIOr4/bYgsUx+GmdgkCJvCTL7oIcIW875iFHMxCDmYhh9fHbbEFChEREWUuFihEREQkjtgCRSleF1ACrYHj52N/kr+YhRzMQg5mIYfXx22xS595Lx4Z+l2FTW8zCwmYhRzMQg5mIUfG3IuHu3hkMJXGrXkuTMVfT/zGLORgFnIwCzm4i4dSyjKA1XNdWGJ/UjIHs5CDWcjBLOTgLh4iIiJKeyxQiIiISByxBQp38cigNdD6meIKeQGYhRzMQg5mIQd38VBK9bsKz7byEo0SMAs5mIUczEKOjNnFw0WyMphKY9m1DlfIC8As5GAWcjALOTJmkSy3GctgGUBtseYKeQGYhRzMQg5mIUfGbDMmIiKizMUChYiIiMQRW6AYhtiuZRRXA80nFVy+ves7ZiEHs5CDWcjh9XFb7FYZ0+SqbAmirsK2j5iFBMxCDmYhB7OQw+vjttjTFNzFI0PA0Fg1x0HA4K8nfmMWcjALOZiFHJNmF8/TTz+N2bNnIzs7GzfddBNef/31Uf177uKRwVBAVb6Gwevm+Y5ZyMEs5GAWckyKXTwvvvgi7rvvPjzyyCM4cOAAFixYgNraWrS3t0/EtyMiIqI0MyFrUJ544gn83d/9HX7wgx8AAJ588km8+uqreOaZZ7Bx48aEx0YiEUQikfjnPT09AIBPP/003mYYBkzThOM4CRXaQLtt29BDrnNsmiYMwxixPRqNJvRh4Op3tm1fUXsgEIDrugmns5RSsCxrxPaBvp85cwbZ2dlwT32EcH8fAoaCOaRMtF0N2wWyTJXwG0HU0XA0EDQVhl5NuN/RcDWQbSX++hCxNTSGt/fZGgpAMEm7oS58397jyM7OBro+Qp8bwfkbiuEe74C+8N/g6tj3tQzAGtJJxwWirk7JmAb6qLqPINzfd9kxDdAaiDgapgICQ9onYkxD+xiJ9o07J9cCzp8vRv8nHQmX9R7PmIb2MWr3+f6zd/GY3NOfxPun3YiIn72hWfR1dMD+tCOhj5cbUyp+9i4eU7R7eB+9zMmLMUW7O5CVlZXQxyvJaSAL93gH+vomdkzR7g6YppnQx1T/7F1uTJHODiilcObMGXR3dwO48uPTgLEec0+fPn3h/9Cjt9u0xyKRiDZNU//xj39MaP/Zz36mFy5cOOzxjz32mAbAD37wgx/84Ac/0uDjww8/9KSe8PwMSldXFxzHQX5+fkJ7fn4+Tpw4MezxDz/8MNatWxf//LPPPkNpaSna29sxbdo0r7tHo3TmzBkUFxejo6MDU6dO9bs7GY1ZyMEs5GAWcvT09KCkpAQzZszw5PkmbJvxxXc11FonvdNhMBhEMBgc1j5t2jT+sAkydepU5iEEs5CDWcjBLOTw6nooni+SnTVrFkzTHHa2pLOzc9hZFSIiIqJkPC9QsrKycNNNN6GhoSGhvaGhAdXV1V5/OyIiIkpDZl1dXZ3XTzp16lQ8+uijuOaaa5CdnY0NGzagsbERW7ZswfTp0y/fKdPEokWL4rtoyF/MQw5mIQezkINZyOFlFkprr/YDJXr66afx+OOP4/jx47jhhhvwz//8z1i4cOFEfCsiIiJKMxNWoBARERGNldh78RAREVHmYoFCRERE4rBAISIiInFYoBAREZE44gqUp59+GrNnz0Z2djZuuukmvP766353KePU1dVBKZXwUVBQ4He3MkZTUxNuv/12FBUVQSmFP/3pTwlf11qjrq4ORUVFCIVCWLRoEd577z2fepveLpfF3XffPWyu3HrrrT71Nn1t3LgRN998M3JycpCXl4c77rgDbW1tCY/hvEidK8nDi7khqkB58cUXcd999+GRRx7BgQMHsGDBAtTW1qK9vd3vrmWcL33pSzh+/Hj849133/W7Sxnj3LlzmD9/PjZv3pz0648//jieeOIJbN68Gfv370dBQQGWLFmC3t7eFPc0/V0uCwBYtmxZwlypr69PYQ8zw+7du7F27Vrs3bsXDQ0NsG0bS5cuxblz5+KP4bxInSvJA/Bgbnhyy0GPfPWrX9U//vGPE9rKy8v1Qw895FOPMtNjjz2m58+f73c3SGsNQL/00kvxz13X1QUFBXrTpk3xtr6+Pj1t2jT97LPP+tHFjHFxFlprfdddd+lvfetbPvUoc3V2dmoAevfu3Vprzgu/XZyH1t7MDTFnUPr7+/HWW29h6dKlCe1Lly7Fnj17fOpV5jp8+DCKioowe/ZsrFq1Ch999JHfXSIAR44cwYkTJxLmSTAYxG233cZ54pNdu3YhLy8P1113HX74wx+is7PT7y6lvZ6eHgCI3zWX88JfF+cxYLxzQ0yB0tXVBcdxht1QMD8/f9iNB2li3XLLLfiP//gPvPrqq/i3f/s3nDhxAtXV1eju7mtorZkAAAMWSURBVPa7axlvYC5wnshQW1uLP/zhD9i5cyd+85vfYP/+/Vi8eDEikYjfXUtbWmusW7cOX//613HDDTcA4LzwU7I8AG/mhrgbFyilEj7XWg9ro4lVW1sb//uNN96IqqoqzJ07F88//zzWrVvnY89oAOeJDN/73vfif7/hhhvwla98BaWlpdi+fTtWrlzpY8/S1z333IN33nkHf/nLX4Z9jfMi9UbKw4u5IeYMyqxZs2Ca5rBqt7Ozc1hVTKl11VVX4cYbb8Thw4f97krGG9hNxXkiU2FhIUpLSzlXJsi9996LP//5z2hsbMS1114bb+e88MdIeSQzlrkhpkDJysrCTTfdhIaGhoT2hoYGVFdX+9QrAoBIJILW1lYUFhb63ZWMN3v2bBQUFCTMk/7+fuzevZvzRIDu7m50dHRwrnhMa4177rkHf/zjH7Fz507Mnj074eucF6l1uTySGcvcMOvq6urG0U9PTZ06FY8++iiuueYaZGdnY8OGDWhsbMSWLVswffp0v7uXMe6//34Eg0ForXHo0CHcc889OHToEH73u98xhxQ4e/Ys3n//fZw4cQK/+93vcMsttyAUCqG/vx/Tp0+H4zjYuHEjysrK4DgOfv7zn+PYsWP413/9VwSDQb+7n1YulYVpmvjFL36BnJwcOI6DlpYW/OAHP0A0GsXmzZuZhYfWrl2LP/zhD/iv//ovFBUV4ezZszh79ixM00QgEIBSivMihS6Xx9mzZ72ZG+PaAzQBnnrqKV1aWqqzsrL0l7/85YRtS5Qa3/ve93RhYaEOBAK6qKhIr1y5Ur/33nt+dytjNDY2agDDPu666y6tdWxL5WOPPaYLCgp0MBjUCxcu1O+++66/nU5Tl8ri/PnzeunSpTo3N1cHAgFdUlKi77rrLt3e3u53t9NOsgwA6C1btsQfw3mROpfLw6u5oS58MyIiIiIxxKxBISIiIhrAAoWIiIjEYYFCRERE4rBAISIiInFYoBAREZE4LFCIiIhIHBYoREREJA4LFCIiIhKHBQoRERGJwwKFiIiIxGGBQkREROL8/+q8g3hBpae5AAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "plt.rcdefaults()\n", + "fig, ax = plt.subplots()\n", + "ax.set_xlim([0,25])\n", + "ax.set_ylim([0,25])\n", + "ax.hist(set, edgecolor='black')\n", + "plt.grid(True, linestyle='--')\n", + "plt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.4" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/module2/exo2/exercice.ipynb b/module2/exo2/exercice.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module2/exo2/exercice.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module2/exo2/exercice_R_en.org b/module2/exo2/exercice_R_en.org new file mode 100644 index 0000000000000000000000000000000000000000..2b73d64e82dad485ab562f8bda6434ffa7b68d27 --- /dev/null +++ b/module2/exo2/exercice_R_en.org @@ -0,0 +1,81 @@ +#+TITLE: Your title +#+AUTHOR: Your name +#+DATE: Today's date +#+LANGUAGE: en +# #+PROPERTY: header-args :eval never-export + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Some explanations + +This is an org-mode document with code examples in R. Once opened in +Emacs, this document can easily be exported to HTML, PDF, and Office +formats. For more information on org-mode, see +https://orgmode.org/guide/. + +When you type the shortcut =C-c C-e h o=, this document will be +exported as HTML. All the code in it will be re-executed, and the +results will be retrieved and included into the exported document. If +you do not want to re-execute all code each time, you can delete the # +and the space before ~#+PROPERTY:~ in the header of this document. + +Like we showed in the video, R code is included as follows (and is +exxecuted by typing ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +And now the same but in an R session. This is the most frequent +situation, because R is really an interactive language. With a +session, R's state, i.e. the values of all the variables, remains +persistent from one code block to the next. The code is still executed +using ~C-c C-c~. + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Finally, an example for graphical output: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Note the parameter ~:exports results~, which indicates that the code +will not appear in the exported document. We recommend that in the +context of this MOOC, you always leave this parameter setting as +~:exports both~, because we want your analyses to be perfectly +transparent and reproducible. + +Watch out: the figure generated by the code block is /not/ stored in +the org document. It's a plain file, here named ~cars.png~. You have +to commit it explicitly if you want your analysis to be legible and +understandable on GitLab. + +Finally, don't forget that we provide in the resource section of this +MOOC a configuration with a few keyboard shortcuts that allow you to +quickly create code blocks in R by typing ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +R. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclut du code +R de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +Voici la même chose, mais avec une session R (c'est le cas le +plus courant, R étant vraiment un langage interactif), donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Et enfin, voici un exemple de sortie graphique: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cars.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, pour les prochains exercices, nous ne vous fournirons pas +forcément de fichier de départ, ça sera à vous de le créer, par +exemple en repartant de ce document et de le commiter vers +gitlab. N'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code R (en +faisant ~. + +When you click on the button **Knit**, the document will be compiled in order to re-execute the R code and to include the results into the final document. As we have shown in the video, R code is inserted as follows: + +```{r cars} +summary(cars) +``` + +It is also straightforward to include figures. For example: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Note the parameter `echo = FALSE` that indicates that the code will not appear in the final version of the document. We recommend not to use this parameter in the context of this MOOC, because we want your data analyses to be perfectly transparent and reproducible. + +Since the results are not stored in Rmd files, you should generate an HTML or PDF version of your exercises and commit them. Otherwise reading and checking your analysis will be difficult for anyone else but you. + +Now it's your turn! You can delete all this information and replace it by your computational document. diff --git a/module2/exo2/exercice_en.ipynb b/module2/exo2/exercice_en.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module2/exo2/exercice_en.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module2/exo2/exercice_fr.Rmd b/module2/exo2/exercice_fr.Rmd new file mode 100644 index 0000000000000000000000000000000000000000..7eece5e296bb586e88166aa8a263ca75b44c2b9e --- /dev/null +++ b/module2/exo2/exercice_fr.Rmd @@ -0,0 +1,33 @@ +--- +title: "Votre titre" +author: "Votre nom" +date: "La date du jour" +output: html_document +--- + + +```{r setup, include=FALSE} +knitr::opts_chunk$set(echo = TRUE) +``` + +## Quelques explications + +Ceci est un document R markdown que vous pouvez aisément exporter au format HTML, PDF, et MS Word. Pour plus de détails sur R Markdown consultez . + +Lorsque vous cliquerez sur le bouton **Knit** ce document sera compilé afin de ré-exécuter le code R et d'inclure les résultats dans un document final. Comme nous vous l'avons montré dans la vidéo, on inclue du code R de la façon suivante: + +```{r cars} +summary(cars) +``` + +Et on peut aussi aisément inclure des figures. Par exemple: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Vous remarquerez le paramètre `echo = FALSE` qui indique que le code ne doit pas apparaître dans la version finale du document. Nous vous recommandons dans le cadre de ce MOOC de ne pas utiliser ce paramètre car l'objectif est que vos analyses de données soient parfaitement transparentes pour être reproductibles. + +Comme les résultats ne sont pas stockés dans les fichiers Rmd, pour faciliter la relecture de vos analyses par d'autres personnes, vous aurez donc intérêt à générer un HTML ou un PDF et à le commiter. + +Maintenant, à vous de jouer! Vous pouvez effacer toutes ces informations et les remplacer par votre document computationnel. diff --git a/module2/exo2/exercice_fr.ipynb b/module2/exo2/exercice_fr.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module2/exo2/exercice_fr.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module2/exo2/exercice_python_en.org b/module2/exo2/exercice_python_en.org new file mode 100644 index 0000000000000000000000000000000000000000..5782f493934678ba782fb65634a4d86e5f3adefc --- /dev/null +++ b/module2/exo2/exercice_python_en.org @@ -0,0 +1,94 @@ +#+TITLE: Your title +#+AUTHOR: Your name +#+DATE: Today's date +#+LANGUAGE: en +# #+PROPERTY: header-args :eval never-export + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Some explanations + +This is an org-mode document with code examples in R. Once opened in +Emacs, this document can easily be exported to HTML, PDF, and Office +formats. For more information on org-mode, see +https://orgmode.org/guide/. + +When you type the shortcut =C-c C-e h o=, this document will be +exported as HTML. All the code in it will be re-executed, and the +results will be retrieved and included into the exported document. If +you do not want to re-execute all code each time, you can delete the # +and the space before ~#+PROPERTY:~ in the header of this document. + +Like we showed in the video, Python code is included as follows (and +is exxecuted by typing ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +And now the same but in an Python session. With a session, Python's +state, i.e. the values of all the variables, remains persistent from +one code block to the next. The code is still executed using ~C-c +C-c~. + +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Finally, an example for graphical output: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Note the parameter ~:exports results~, which indicates that the code +will not appear in the exported document. We recommend that in the +context of this MOOC, you always leave this parameter setting as +~:exports both~, because we want your analyses to be perfectly +transparent and reproducible. + +Watch out: the figure generated by the code block is /not/ stored in +the org document. It's a plain file, here named ~cosxsx.png~. You have +to commit it explicitly if you want your analysis to be legible and +understandable on GitLab. + +Finally, don't forget that we provide in the resource section of this +MOOC a configuration with a few keyboard shortcuts that allow you to +quickly create code blocks in Python by typing ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +python. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclue du code +python de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +Voici la même chose, mais avec une session python, donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Et enfin, voici un exemple de sortie graphique: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cosxsx.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, n'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code python (en +faisant ~" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "plt.rcdefaults()\n", + "fig, ax = plt.subplots()\n", + "ax.set_xlim([0,100])\n", + "ax.set_ylim([0,25])\n", + "ax.plot(set)\n", + "plt.grid(True, linestyle='--')\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "plt.rcdefaults()\n", + "fig, ax = plt.subplots()\n", + "ax.set_xlim([0,25])\n", + "ax.set_ylim([0,25])\n", + "ax.hist(set, edgecolor='black')\n", + "plt.grid(True, linestyle='--')\n", + "plt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.4" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/module2/exo3/exercice.ipynb b/module2/exo3/exercice.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module2/exo3/exercice.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module2/exo3/exercice_R_en.org b/module2/exo3/exercice_R_en.org new file mode 100644 index 0000000000000000000000000000000000000000..2b73d64e82dad485ab562f8bda6434ffa7b68d27 --- /dev/null +++ b/module2/exo3/exercice_R_en.org @@ -0,0 +1,81 @@ +#+TITLE: Your title +#+AUTHOR: Your name +#+DATE: Today's date +#+LANGUAGE: en +# #+PROPERTY: header-args :eval never-export + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Some explanations + +This is an org-mode document with code examples in R. Once opened in +Emacs, this document can easily be exported to HTML, PDF, and Office +formats. For more information on org-mode, see +https://orgmode.org/guide/. + +When you type the shortcut =C-c C-e h o=, this document will be +exported as HTML. All the code in it will be re-executed, and the +results will be retrieved and included into the exported document. If +you do not want to re-execute all code each time, you can delete the # +and the space before ~#+PROPERTY:~ in the header of this document. + +Like we showed in the video, R code is included as follows (and is +exxecuted by typing ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +And now the same but in an R session. This is the most frequent +situation, because R is really an interactive language. With a +session, R's state, i.e. the values of all the variables, remains +persistent from one code block to the next. The code is still executed +using ~C-c C-c~. + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Finally, an example for graphical output: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Note the parameter ~:exports results~, which indicates that the code +will not appear in the exported document. We recommend that in the +context of this MOOC, you always leave this parameter setting as +~:exports both~, because we want your analyses to be perfectly +transparent and reproducible. + +Watch out: the figure generated by the code block is /not/ stored in +the org document. It's a plain file, here named ~cars.png~. You have +to commit it explicitly if you want your analysis to be legible and +understandable on GitLab. + +Finally, don't forget that we provide in the resource section of this +MOOC a configuration with a few keyboard shortcuts that allow you to +quickly create code blocks in R by typing ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +R. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclut du code +R de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +Voici la même chose, mais avec une session R (c'est le cas le +plus courant, R étant vraiment un langage interactif), donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Et enfin, voici un exemple de sortie graphique: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cars.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, pour les prochains exercices, nous ne vous fournirons pas +forcément de fichier de départ, ça sera à vous de le créer, par +exemple en repartant de ce document et de le commiter vers +gitlab. N'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code R (en +faisant ~. + +When you click on the button **Knit**, the document will be compiled in order to re-execute the R code and to include the results into the final document. As we have shown in the video, R code is inserted as follows: + +```{r cars} +summary(cars) +``` + +It is also straightforward to include figures. For example: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Note the parameter `echo = FALSE` that indicates that the code will not appear in the final version of the document. We recommend not to use this parameter in the context of this MOOC, because we want your data analyses to be perfectly transparent and reproducible. + +Since the results are not stored in Rmd files, you should generate an HTML or PDF version of your exercises and commit them. Otherwise reading and checking your analysis will be difficult for anyone else but you. + +Now it's your turn! You can delete all this information and replace it by your computational document. diff --git a/module2/exo3/exercice_en.ipynb b/module2/exo3/exercice_en.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module2/exo3/exercice_en.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module2/exo3/exercice_fr.Rmd b/module2/exo3/exercice_fr.Rmd new file mode 100644 index 0000000000000000000000000000000000000000..7eece5e296bb586e88166aa8a263ca75b44c2b9e --- /dev/null +++ b/module2/exo3/exercice_fr.Rmd @@ -0,0 +1,33 @@ +--- +title: "Votre titre" +author: "Votre nom" +date: "La date du jour" +output: html_document +--- + + +```{r setup, include=FALSE} +knitr::opts_chunk$set(echo = TRUE) +``` + +## Quelques explications + +Ceci est un document R markdown que vous pouvez aisément exporter au format HTML, PDF, et MS Word. Pour plus de détails sur R Markdown consultez . + +Lorsque vous cliquerez sur le bouton **Knit** ce document sera compilé afin de ré-exécuter le code R et d'inclure les résultats dans un document final. Comme nous vous l'avons montré dans la vidéo, on inclue du code R de la façon suivante: + +```{r cars} +summary(cars) +``` + +Et on peut aussi aisément inclure des figures. Par exemple: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Vous remarquerez le paramètre `echo = FALSE` qui indique que le code ne doit pas apparaître dans la version finale du document. Nous vous recommandons dans le cadre de ce MOOC de ne pas utiliser ce paramètre car l'objectif est que vos analyses de données soient parfaitement transparentes pour être reproductibles. + +Comme les résultats ne sont pas stockés dans les fichiers Rmd, pour faciliter la relecture de vos analyses par d'autres personnes, vous aurez donc intérêt à générer un HTML ou un PDF et à le commiter. + +Maintenant, à vous de jouer! Vous pouvez effacer toutes ces informations et les remplacer par votre document computationnel. diff --git a/module2/exo3/exercice_fr.ipynb b/module2/exo3/exercice_fr.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module2/exo3/exercice_fr.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module2/exo3/exercice_python_en.org b/module2/exo3/exercice_python_en.org new file mode 100644 index 0000000000000000000000000000000000000000..5782f493934678ba782fb65634a4d86e5f3adefc --- /dev/null +++ b/module2/exo3/exercice_python_en.org @@ -0,0 +1,94 @@ +#+TITLE: Your title +#+AUTHOR: Your name +#+DATE: Today's date +#+LANGUAGE: en +# #+PROPERTY: header-args :eval never-export + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Some explanations + +This is an org-mode document with code examples in R. Once opened in +Emacs, this document can easily be exported to HTML, PDF, and Office +formats. For more information on org-mode, see +https://orgmode.org/guide/. + +When you type the shortcut =C-c C-e h o=, this document will be +exported as HTML. All the code in it will be re-executed, and the +results will be retrieved and included into the exported document. If +you do not want to re-execute all code each time, you can delete the # +and the space before ~#+PROPERTY:~ in the header of this document. + +Like we showed in the video, Python code is included as follows (and +is exxecuted by typing ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +And now the same but in an Python session. With a session, Python's +state, i.e. the values of all the variables, remains persistent from +one code block to the next. The code is still executed using ~C-c +C-c~. + +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Finally, an example for graphical output: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Note the parameter ~:exports results~, which indicates that the code +will not appear in the exported document. We recommend that in the +context of this MOOC, you always leave this parameter setting as +~:exports both~, because we want your analyses to be perfectly +transparent and reproducible. + +Watch out: the figure generated by the code block is /not/ stored in +the org document. It's a plain file, here named ~cosxsx.png~. You have +to commit it explicitly if you want your analysis to be legible and +understandable on GitLab. + +Finally, don't forget that we provide in the resource section of this +MOOC a configuration with a few keyboard shortcuts that allow you to +quickly create code blocks in Python by typing ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +python. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclue du code +python de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +Voici la même chose, mais avec une session python, donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Et enfin, voici un exemple de sortie graphique: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cosxsx.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, n'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code python (en +faisant ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Some explanations + +This is an org-mode document with code examples in R. Once opened in +Emacs, this document can easily be exported to HTML, PDF, and Office +formats. For more information on org-mode, see +https://orgmode.org/guide/. + +When you type the shortcut =C-c C-e h o=, this document will be +exported as HTML. All the code in it will be re-executed, and the +results will be retrieved and included into the exported document. If +you do not want to re-execute all code each time, you can delete the # +and the space before ~#+PROPERTY:~ in the header of this document. + +Like we showed in the video, R code is included as follows (and is +exxecuted by typing ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +And now the same but in an R session. This is the most frequent +situation, because R is really an interactive language. With a +session, R's state, i.e. the values of all the variables, remains +persistent from one code block to the next. The code is still executed +using ~C-c C-c~. + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Finally, an example for graphical output: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Note the parameter ~:exports results~, which indicates that the code +will not appear in the exported document. We recommend that in the +context of this MOOC, you always leave this parameter setting as +~:exports both~, because we want your analyses to be perfectly +transparent and reproducible. + +Watch out: the figure generated by the code block is /not/ stored in +the org document. It's a plain file, here named ~cars.png~. You have +to commit it explicitly if you want your analysis to be legible and +understandable on GitLab. + +Finally, don't forget that we provide in the resource section of this +MOOC a configuration with a few keyboard shortcuts that allow you to +quickly create code blocks in R by typing ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +R. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclut du code +R de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +Voici la même chose, mais avec une session R (c'est le cas le +plus courant, R étant vraiment un langage interactif), donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Et enfin, voici un exemple de sortie graphique: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cars.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, pour les prochains exercices, nous ne vous fournirons pas +forcément de fichier de départ, ça sera à vous de le créer, par +exemple en repartant de ce document et de le commiter vers +gitlab. N'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code R (en +faisant ~. + +When you click on the button **Knit**, the document will be compiled in order to re-execute the R code and to include the results into the final document. As we have shown in the video, R code is inserted as follows: + +```{r cars} +summary(cars) +``` + +It is also straightforward to include figures. For example: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Note the parameter `echo = FALSE` that indicates that the code will not appear in the final version of the document. We recommend not to use this parameter in the context of this MOOC, because we want your data analyses to be perfectly transparent and reproducible. + +Since the results are not stored in Rmd files, you should generate an HTML or PDF version of your exercises and commit them. Otherwise reading and checking your analysis will be difficult for anyone else but you. + +Now it's your turn! You can delete all this information and replace it by your computational document. diff --git a/module2/exo4/exercice_en.ipynb b/module2/exo4/exercice_en.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module2/exo4/exercice_en.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module2/exo4/exercice_fr.Rmd b/module2/exo4/exercice_fr.Rmd new file mode 100644 index 0000000000000000000000000000000000000000..7eece5e296bb586e88166aa8a263ca75b44c2b9e --- /dev/null +++ b/module2/exo4/exercice_fr.Rmd @@ -0,0 +1,33 @@ +--- +title: "Votre titre" +author: "Votre nom" +date: "La date du jour" +output: html_document +--- + + +```{r setup, include=FALSE} +knitr::opts_chunk$set(echo = TRUE) +``` + +## Quelques explications + +Ceci est un document R markdown que vous pouvez aisément exporter au format HTML, PDF, et MS Word. Pour plus de détails sur R Markdown consultez . + +Lorsque vous cliquerez sur le bouton **Knit** ce document sera compilé afin de ré-exécuter le code R et d'inclure les résultats dans un document final. Comme nous vous l'avons montré dans la vidéo, on inclue du code R de la façon suivante: + +```{r cars} +summary(cars) +``` + +Et on peut aussi aisément inclure des figures. Par exemple: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Vous remarquerez le paramètre `echo = FALSE` qui indique que le code ne doit pas apparaître dans la version finale du document. Nous vous recommandons dans le cadre de ce MOOC de ne pas utiliser ce paramètre car l'objectif est que vos analyses de données soient parfaitement transparentes pour être reproductibles. + +Comme les résultats ne sont pas stockés dans les fichiers Rmd, pour faciliter la relecture de vos analyses par d'autres personnes, vous aurez donc intérêt à générer un HTML ou un PDF et à le commiter. + +Maintenant, à vous de jouer! Vous pouvez effacer toutes ces informations et les remplacer par votre document computationnel. diff --git a/module2/exo4/exercice_fr.ipynb b/module2/exo4/exercice_fr.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module2/exo4/exercice_fr.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module2/exo4/exercice_python_en.org b/module2/exo4/exercice_python_en.org new file mode 100644 index 0000000000000000000000000000000000000000..5782f493934678ba782fb65634a4d86e5f3adefc --- /dev/null +++ b/module2/exo4/exercice_python_en.org @@ -0,0 +1,94 @@ +#+TITLE: Your title +#+AUTHOR: Your name +#+DATE: Today's date +#+LANGUAGE: en +# #+PROPERTY: header-args :eval never-export + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Some explanations + +This is an org-mode document with code examples in R. Once opened in +Emacs, this document can easily be exported to HTML, PDF, and Office +formats. For more information on org-mode, see +https://orgmode.org/guide/. + +When you type the shortcut =C-c C-e h o=, this document will be +exported as HTML. All the code in it will be re-executed, and the +results will be retrieved and included into the exported document. If +you do not want to re-execute all code each time, you can delete the # +and the space before ~#+PROPERTY:~ in the header of this document. + +Like we showed in the video, Python code is included as follows (and +is exxecuted by typing ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +And now the same but in an Python session. With a session, Python's +state, i.e. the values of all the variables, remains persistent from +one code block to the next. The code is still executed using ~C-c +C-c~. + +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Finally, an example for graphical output: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Note the parameter ~:exports results~, which indicates that the code +will not appear in the exported document. We recommend that in the +context of this MOOC, you always leave this parameter setting as +~:exports both~, because we want your analyses to be perfectly +transparent and reproducible. + +Watch out: the figure generated by the code block is /not/ stored in +the org document. It's a plain file, here named ~cosxsx.png~. You have +to commit it explicitly if you want your analysis to be legible and +understandable on GitLab. + +Finally, don't forget that we provide in the resource section of this +MOOC a configuration with a few keyboard shortcuts that allow you to +quickly create code blocks in Python by typing ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +python. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclue du code +python de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +Voici la même chose, mais avec une session python, donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Et enfin, voici un exemple de sortie graphique: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cosxsx.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, n'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code python (en +faisant ~\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DateCountTemperaturePressureMalfunction
04/12/81666500
111/12/81670501
23/22/82669500
311/11/82668500
44/04/83667500
56/18/82672500
68/30/836731000
711/28/836701000
82/03/846572001
94/06/846632001
108/30/846702001
1110/05/846782000
1211/08/846672000
131/24/856532002
144/12/856672000
154/29/856752000
166/17/856702000
177/29/856812000
188/27/856762000
1910/03/856792000
2010/30/856752002
2111/26/856762000
221/12/866582001
\n", + "" + ], + "text/plain": [ + " Date Count Temperature Pressure Malfunction\n", + "0 4/12/81 6 66 50 0\n", + "1 11/12/81 6 70 50 1\n", + "2 3/22/82 6 69 50 0\n", + "3 11/11/82 6 68 50 0\n", + "4 4/04/83 6 67 50 0\n", + "5 6/18/82 6 72 50 0\n", + "6 8/30/83 6 73 100 0\n", + "7 11/28/83 6 70 100 0\n", + "8 2/03/84 6 57 200 1\n", + "9 4/06/84 6 63 200 1\n", + "10 8/30/84 6 70 200 1\n", + "11 10/05/84 6 78 200 0\n", + "12 11/08/84 6 67 200 0\n", + "13 1/24/85 6 53 200 2\n", + "14 4/12/85 6 67 200 0\n", + "15 4/29/85 6 75 200 0\n", + "16 6/17/85 6 70 200 0\n", + "17 7/29/85 6 81 200 0\n", + "18 8/27/85 6 76 200 0\n", + "19 10/03/85 6 79 200 0\n", + "20 10/30/85 6 75 200 2\n", + "21 11/26/85 6 76 200 0\n", + "22 1/12/86 6 58 200 1" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import numpy as np\n", + "import pandas as pd\n", + "data = pd.read_csv(\"shuttle.csv\")\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The data set shows us the date of each test, the number of O-rings (there are 6 on the main launcher), the temperature (in Fahrenheit) and pressure (in psi), and finally the number of identified malfunctions." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Graphical inspection\n", + "Flights without incidents do not provide any information\n", + "on the influence of temperature or pressure on malfunction.\n", + "We thus focus on the experiments in which at least one O-ring\n", + "was defective." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DateCountTemperaturePressureMalfunction
111/12/81670501
82/03/846572001
94/06/846632001
108/30/846702001
131/24/856532002
2010/30/856752002
221/12/866582001
\n", + "
" + ], + "text/plain": [ + " Date Count Temperature Pressure Malfunction\n", + "1 11/12/81 6 70 50 1\n", + "8 2/03/84 6 57 200 1\n", + "9 4/06/84 6 63 200 1\n", + "10 8/30/84 6 70 200 1\n", + "13 1/24/85 6 53 200 2\n", + "20 10/30/85 6 75 200 2\n", + "22 1/12/86 6 58 200 1" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data = data[data.Malfunction>0]\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We have a high temperature variability but\n", + "the pressure is almost always 200, which should\n", + "simplify the analysis.\n", + "\n", + "How does the frequency of failure vary with temperature?" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEKCAYAAAD9xUlFAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAFaNJREFUeJzt3X2QZXV95/H3p2cGGASFwGZiMSAQWFdKCWALGtxkiMRCqxzWwgfYSjRGnWwJlTImRuK6hLCmaiUxJlaIOroaYUuRh1Vnd3ERNK3REmHUCY/BzCJCgwHFUWkY5oH+7h/3zvFOd0/37aHPvUz3+1XVNfec+zvnfvvL4X76PNxzU1VIkgQwMuwCJElPH4aCJKlhKEiSGoaCJKlhKEiSGoaCJKnRWigk+XiSh5Pcvofnk+SDSTYnuTXJKW3VIknqT5t7Cn8PnDXL868Aju/+rAM+1GItkqQ+tBYKVfVV4MezDDkbuLw6bgIOSfLstuqRJM1t+RBf+wjg/p7p8e68H0wdmGQdnb0JVq5c+cIjjzxyIAU+VZOTk4yMeNqmlz2Zzp5MZ09m9lT68t3vfvdHVfVv5ho3zFDIDPNmvOdGVa0H1gOMjo7Wxo0b26xrwYyNjbFmzZphl/G0Yk+msyfT2ZOZPZW+JPl+P+OGGcXjQO+f/KuBB4dUiySJ4YbCBuAN3auQXgz8tKqmHTqSJA1Oa4ePknwaWAMcnmQc+FNgBUBVfRi4DnglsBl4HHhTW7VIkvrTWihU1XlzPF/A+W29viRp/jy9L0lqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqGAqSpIahIElqtBoKSc5KcneSzUkunOH5o5L8Q5LvJLk1ySvbrEeSNLvWQiHJMuAy4BXACcB5SU6YMuw9wFVVdTJwLvB3bdUjSZpbm3sKpwKbq+qeqtoOXAmcPWVMAc/sPn4W8GCL9UiS5pCqamfFyWuAs6rqLd3p3wZOq6oLesY8G/gicCjwDODMqvrWDOtaB6wDWLVq1QuvvPLKVmpeaBMTExx00EHDLuNpxZ5MZ0+msyczeyp9OeOMM75VVaNzjVu+V2vvT2aYNzWBzgP+vqren+QlwBVJnl9Vk7stVLUeWA8wOjpaa9asaaPeBTc2Nsa+Uuug2JPp7Ml09mRmg+hLm4ePxoEje6ZXM/3w0JuBqwCq6hvAAcDhLdYkSZpFm6FwC3B8kmOS7EfnRPKGKWPuA14GkOR5dELhhy3WJEmaRWuhUFU7gQuA64G76FxldEeSS5Ks7Q77Q+CtSf4J+DTwO9XWSQ5J0pzaPKdAVV0HXDdl3kU9j+8ETm+zBklS//xEsySpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqGgiSpYShIkhqthkKSs5LcnWRzkgv3MOZ1Se5MckeST7VZjyRpdsv7GZTk+VV1+3xWnGQZcBnwm8A4cEuSDVV1Z8+Y44E/AU6vqi1JfnE+ryFJWlj97il8OMnNSd6W5JA+lzkV2FxV91TVduBK4OwpY94KXFZVWwCq6uE+1y1JakFfewpV9dLuX/W/C2xMcjPwiaq6YZbFjgDu75keB06bMubfAiT5OrAMuLiq/u/UFSVZB6wDWLVqFWNjY/2UPXQTExP7TK2DYk+msyfT2ZOZDaIvfYUCQFX9S5L3ABuBDwInJwnw7qr6nzMskplWM8PrHw+sAVYD/9g9VPWTKa+9HlgPMDo6WmvWrOm37KEaGxtjX6l1UOzJdPZkOnsys0H0pa/DR0lOTPIB4C7gN4BXVdXzuo8/sIfFxoEje6ZXAw/OMObzVbWjqr4H3E0nJCRJQ9DvOYW/Bb4N/EpVnV9V3waoqgeB9+xhmVuA45Mck2Q/4Fxgw5QxnwPOAEhyOJ3DSffM71eQJC2Ufg8fvRLYWlVPAiQZAQ6oqser6oqZFqiqnUkuAK6nc77g41V1R5JLgI1VtaH73MuT3Ak8Cbyzqh55ir+TJGkv9RsKNwJnAhPd6QOBLwK/OttCVXUdcN2UeRf1PC7gHd0fSdKQ9Xv46ICq2hUIdB8f2E5JkqRh6TcUHktyyq6JJC8EtrZTkiRpWPo9fPR24Ooku64eejbw+nZKkiQNS78fXrslyb8Dnkvn8wf/XFU7Wq1MkjRwfX94DXgRcHR3mZOTUFWXt1KVJGko+r0h3hXALwOb6Fw6Cp1PJxsKkrSI9LunMAqc0L2EVJK0SPV79dHtwC+1WYgkafj63VM4HLize3fUbbtmVtXaVqqSJA1Fv6FwcZtFSJKeHvq9JPUrSZ4DHF9VNyY5kM79jCRJi0i/t85+K3AN8JHurCPo3OFUkrSI9Hui+XzgdOBn0PnCHcDvU5akRabfUNjW/Z5lAJIsZ/q3qEmS9nH9hsJXkrwbWJnkN4Grgf/VXlmSpGHoNxQuBH4I3Ab8Hp3vSNjTN65JkvZR/V59NAl8tPsjSVqk+r330feY4RxCVR274BVJkoZmPvc+2uUA4LXALyx8OZKkYerrnEJVPdLz80BV/TXwGy3XJkkasH4PH53SMzlCZ8/h4FYqkiQNTb+Hj97f83gncC/wugWvRpI0VP1efXRG24VIkoav38NH75jt+ar6q4UpR5I0TPO5+uhFwIbu9KuArwL3t1GUJGk45vMlO6dU1aMASS4Grq6qt7RVmCRp8Pq9zcVRwPae6e3A0QtejSRpqPrdU7gCuDnJZ+l8svnVwOWtVSVJGop+rz768yRfAP59d9abquo77ZUlSRqGfg8fARwI/Kyq/gYYT3JMSzVJkoak36/j/FPgXcCfdGetAP5HW0VJkoaj3z2FVwNrgccAqupBvM2FJC06/YbC9qoqurfPTvKM9kqSJA1Lv6FwVZKPAIckeStwI37hjiQtOv1effSX3e9m/hnwXOCiqrqh1cokSQM3555CkmVJbqyqG6rqnVX1R/0GQpKzktydZHOSC2cZ95oklWR0T2MkSe2bMxSq6kng8STPms+KkywDLgNeAZwAnJfkhBnGHQz8PvDN+axfkrTw+v1E8xPAbUluoHsFEkBV/f4sy5wKbK6qewCSXAmcDdw5Zdx/BS4F/qjfoiVJ7eg3FP5P92c+jmD3u6iOA6f1DkhyMnBkVf3vJHsMhSTrgHUAq1atYmxsbJ6lDMfExMQ+U+ug2JPp7Ml09mRmg+jLrKGQ5Kiquq+qPrkX684M86pn3SPAB4DfmWtFVbUeWA8wOjpaa9as2YtyBm9sbIx9pdZBsSfT2ZPp7MnMBtGXuc4pfG7XgyTXznPd48CRPdOrgQd7pg8Gng+MJbkXeDGwwZPNkjQ8c4VC71/7x85z3bcAxyc5Jsl+wLn8/Et6qKqfVtXhVXV0VR0N3ASsraqN83wdSdICmSsUag+P51RVO4ELgOuBu4CrquqOJJckWTu/MiVJgzDXieZfSfIzOnsMK7uP6U5XVT1ztoWr6jrguinzLtrD2DV9VSxJas2soVBVywZViCRp+ObzfQqSpEXOUJAkNQwFSVLDUJAkNZZMKDwysY1/uv8nPDKxbdilSNK8PTKxja07nmz9PWxJhMLnNz3A6e/7Mr/1sW9y+vu+zIZNDwy7JEnq2673sO/98LHW38MWfSg8MrGNd117K0/smOTRbTt5Ysckf3ztre4xSNon9L6HPVnV+nvYog+F8S1bWTGy+6+5YmSE8S1bh1SRJPVv0O9hiz4UVh+6kh2Tk7vN2zE5yepDVw6pIknq36DfwxZ9KBx20P5ces6JHLBihIP3X84BK0a49JwTOeyg/YddmiTNqfc9bFnS+ntYv1+ys09be9IRnH7c4Yxv2crqQ1caCJL2Kbvew27+xtf4+tqXtvoetiRCATppaxhI2lcddtD+rFyxrPX3sUV/+EiS1D9DQZLUMBQkSQ1DQZLUMBQkSQ1DQZLUMBQkSQ1DQZLUMBQkSQ1DQZLUMBQkSQ1DQZLUMBQkSQ1DQZLUMBQkSQ1DQZLUMBQkSQ1DQZLUMBQkSQ1DQZLUMBQkSY1WQyHJWUnuTrI5yYUzPP+OJHcmuTXJl5I8p816JEmzay0UkiwDLgNeAZwAnJfkhCnDvgOMVtWJwDXApW3VI0maW5t7CqcCm6vqnqraDlwJnN07oKr+oaoe707eBKxusR5J0hyWt7juI4D7e6bHgdNmGf9m4AszPZFkHbAOYNWqVYyNjS1Qie2amJjYZ2odFHsynT2Zzp7MbBB9aTMUMsO8mnFg8lvAKPDrMz1fVeuB9QCjo6O1Zs2aBSqxXWNjY+wrtQ6KPZnOnkxnT2Y2iL60GQrjwJE906uBB6cOSnIm8J+BX6+qbS3WI0maQ5vnFG4Bjk9yTJL9gHOBDb0DkpwMfARYW1UPt1iLJKkPrYVCVe0ELgCuB+4CrqqqO5JckmRtd9hfAAcBVyfZlGTDHlYnSRqANg8fUVXXAddNmXdRz+Mz23z9peSRiW2Mb9nK6kNXcthB+7e+3GJmT4Zr80OPsuXxHWx+6FGOW3XwsMtZcloNBQ3G5zc9wLuuvZUVIyPsmJzk0nNOZO1JR7S23GJmT4bros/dxuU33ccfvmAnf/CBr/KGlxzFJWe/YNhlLSne5mIf98jENt517a08sWOSR7ft5Ikdk/zxtbfyyMTs5+z3drnFzJ4M1+aHHuXym+7bbd7l37iPzQ89OqSKliZDYR83vmUrK0Z2/8+4YmSE8S1bW1luMbMnw7Xp/p/Ma77aYSjs41YfupIdk5O7zdsxOcnqQ1e2stxiZk+G66QjD5nXfLXDUNjHHXbQ/lx6zokcsGKEg/dfzgErRrj0nBPnPEG6t8stZvZkuI5bdTBveMlRu817w0uO8mTzgHmieRFYe9IRnH7c4fO+YmZvl1vM7MlwXXL2C3jDi4/mtm/dxI1/8GIDYQgMhUXisIP236s3sL1dbjGzJ8N13KqDGT9whYEwJB4+kiQ1DAVJUsNQkCQ1DAVJUsNQkCQ1DAVJUsNQkCQ1DAVJUsNQkCQ1DAVJUsNQkCQ1DAVJUsNQkCQ1DAVJUsNQkCQ1DAVJUsNQkCQ1DAVJUsNQkCQ1DAVJUsNQkCQ1DAVJUsNQkCQ1DAVJUsNQkCQ1DAVJUsNQkCQ1DAVJUqPVUEhyVpK7k2xOcuEMz++f5DPd57+Z5Og265Ekza61UEiyDLgMeAVwAnBekhOmDHszsKWqjgM+ALyvrXokSXNrc0/hVGBzVd1TVduBK4Gzp4w5G/hk9/E1wMuSpMWaJEmzWN7iuo8A7u+ZHgdO29OYqtqZ5KfAYcCPegclWQes605OJLm7lYoX3uFM+V1kT2ZgT6azJzN7Kn15Tj+D2gyFmf7ir70YQ1WtB9YvRFGDlGRjVY0Ou46nE3synT2Zzp7MbBB9afPw0ThwZM/0auDBPY1Jshx4FvDjFmuSJM2izVC4BTg+yTFJ9gPOBTZMGbMBeGP38WuAL1fVtD0FSdJgtHb4qHuO4ALgemAZ8PGquiPJJcDGqtoA/HfgiiSb6ewhnNtWPUOyzx3yGgB7Mp09mc6ezKz1vsQ/zCVJu/iJZklSw1CQJDUMhQWS5N4ktyXZlGRjd97FSR7oztuU5JXDrnPQkhyS5Jok/5zkriQvSfILSW5I8i/dfw8ddp2DtIeeLNltJclze37vTUl+luTtS3k7maUnrW8nnlNYIEnuBUar6kc98y4GJqrqL4dV17Al+STwj1X1se5VaAcC7wZ+XFX/rXtPrEOr6l1DLXSA9tCTt7PEtxVobo/zAJ0Pup7PEt5OdpnSkzfR8nbinoJak+SZwK/RucqMqtpeVT9h99ubfBL4D8OpcPBm6Yk6Xgb8v6r6Pkt4O5mityetMxQWTgFfTPKt7m05drkgya1JPr6Udn+7jgV+CHwiyXeSfCzJM4BVVfUDgO6/vzjMIgdsTz2Bpb2t7HIu8Onu46W8nfTq7Qm0vJ0YCgvn9Ko6hc5dYc9P8mvAh4BfBk4CfgC8f4j1DcNy4BTgQ1V1MvAYMO0W6kvMnnqy1LcVuofS1gJXD7uWp4sZetL6dmIoLJCqerD778PAZ4FTq+qhqnqyqiaBj9K5c+xSMg6MV9U3u9PX0HlDfCjJswG6/z48pPqGYcaeuK0AnT+ovl1VD3Wnl/J2sstuPRnEdmIoLIAkz0hy8K7HwMuB23dt0F2vBm4fRn3DUlX/Ctyf5LndWS8D7mT325u8Efj8EMobij31ZKlvK13nsfthkiW7nfTYrSeD2E68+mgBJDmWzt4BdA4PfKqq/jzJFXR28wq4F/i9XcdIl4okJwEfA/YD7qFz9cQIcBVwFHAf8NqqWjI3QtxDTz7IEt5WkhxI5zb6x1bVT7vzDmNpbycz9aT19xRDQZLU8PCRJKlhKEiSGoaCJKlhKEiSGoaCJKnR2jevSYPWvYTxS93JXwKepHNLCeh8mHD7UAqbRZLfBa7rfn5BGjovSdWi9HS6Q22SZVX15B6e+xpwQVVtmsf6llfVzgUrUOrh4SMtCUnemOTm7j3o/y7JSJLlSX6S5C+SfDvJ9UlOS/KVJPfsuld9krck+Wz3+buTvKfP9b43yc3AqUn+LMktSW5P8uF0vJ7OB5E+011+vyTjSQ7prvvFSW7sPn5vko8kuYHOzfSWJ/mr7mvfmuQtg++qFiNDQYtekufTuSXAr1bVSXQOm57bffpZwBe7NzPcDlxM59YTrwUu6VnNqd1lTgH+Y5KT+ljvt6vq1Kr6BvA3VfUi4AXd586qqs8Am4DXV9VJfRzeOhl4VVX9NrAOeLiqTgVeROcmjEftTX+kXp5T0FJwJp03zo1JAFbSuX0AwNaquqH7+Dbgp1W1M8ltwNE967i+qrYAJPkc8FI6///sab3b+fmtTwBeluSdwAHA4cC3gC/M8/f4fFU90X38cuB5SXpD6Hg6t4OQ9pqhoKUgwMer6r/sNjNZTufNe5dJYFvP497/P6aefKs51ru1uifsuvew+Vs6d0N9IMl76YTDTHby8z34qWMem/I7va2qvoS0gDx8pKXgRuB1SQ6HzlVKe3Go5eXpfLfygXS+Eezr81jvSjoh86Pu3XTP6XnuUeDgnul7gRd2H/eOm+p64G3dANr1nb4r5/k7SdO4p6BFr6puS/JnwI1JRoAdwH8CHpzHar4GfIrOF5xcsetqoX7WW1WPpPO9zLcD3we+2fP0J4CPJdlK57zFxcBHk/wrcPMs9XyEzt1DN3UPXT1MJ6ykp8RLUqU5dK/seX5VvX3YtUht8/CRJKnhnoIkqeGegiSpYShIkhqGgiSpYShIkhqGgiSp8f8B+Q9eu+sB8EwAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "pd.set_option('mode.chained_assignment',None) # this removes a useless warning from pandas\n", + "import matplotlib.pyplot as plt\n", + "\n", + "data[\"Frequency\"]=data.Malfunction/data.Count\n", + "data.plot(x=\"Temperature\",y=\"Frequency\",kind=\"scatter\",ylim=[0,1])\n", + "plt.grid(True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "At first glance, the dependence does not look very important, but let's try to\n", + "estimate the impact of temperature $t$ on the probability of O-ring malfunction." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Estimation of the temperature influence\n", + "\n", + "Suppose that each of the six O-rings is damaged with the same\n", + "probability and independently of the others and that this probability\n", + "depends only on the temperature. If $p(t)$ is this probability, the\n", + "number $D$ of malfunctioning O-rings during a flight at\n", + "temperature $t$ follows a binomial law with parameters $n=6$ and\n", + "$p=p(t)$. To link $p(t)$ to $t$, we will therefore perform a\n", + "logistic regression." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "
Generalized Linear Model Regression Results
Dep. Variable: Frequency No. Observations: 7
Model: GLM Df Residuals: 5
Model Family: Binomial Df Model: 1
Link Function: logit Scale: 1.0000
Method: IRLS Log-Likelihood: -2.5250
Date: Sat, 13 Apr 2019 Deviance: 0.22231
Time: 19:12:05 Pearson chi2: 0.236
No. Iterations: 4 Covariance Type: nonrobust
\n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "
coef std err z P>|z| [0.025 0.975]
Intercept -1.3895 7.828 -0.178 0.859 -16.732 13.953
Temperature 0.0014 0.122 0.012 0.991 -0.238 0.240
" + ], + "text/plain": [ + "\n", + "\"\"\"\n", + " Generalized Linear Model Regression Results \n", + "==============================================================================\n", + "Dep. Variable: Frequency No. Observations: 7\n", + "Model: GLM Df Residuals: 5\n", + "Model Family: Binomial Df Model: 1\n", + "Link Function: logit Scale: 1.0000\n", + "Method: IRLS Log-Likelihood: -2.5250\n", + "Date: Sat, 13 Apr 2019 Deviance: 0.22231\n", + "Time: 19:12:05 Pearson chi2: 0.236\n", + "No. Iterations: 4 Covariance Type: nonrobust\n", + "===============================================================================\n", + " coef std err z P>|z| [0.025 0.975]\n", + "-------------------------------------------------------------------------------\n", + "Intercept -1.3895 7.828 -0.178 0.859 -16.732 13.953\n", + "Temperature 0.0014 0.122 0.012 0.991 -0.238 0.240\n", + "===============================================================================\n", + "\"\"\"" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import statsmodels.api as sm\n", + "\n", + "data[\"Success\"]=data.Count-data.Malfunction\n", + "data[\"Intercept\"]=1\n", + "\n", + "logmodel=sm.GLM(data['Frequency'], data[['Intercept','Temperature']], family=sm.families.Binomial(sm.families.links.logit)).fit()\n", + "\n", + "logmodel.summary()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The most likely estimator of the temperature parameter is 0.0014\n", + "and the standard error of this estimator is 0.122, in other words we\n", + "cannot distinguish any particular impact and we must take our\n", + "estimates with caution." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Estimation of the probability of O-ring malfunction\n", + "\n", + "The expected temperature on the take-off day is 31°F. Let's try to\n", + "estimate the probability of O-ring malfunction at\n", + "this temperature from the model we just built:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAEKCAYAAAAcgp5RAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAGyFJREFUeJzt3X2UVPWd5/H3pxuQBhEjkhkFDWSWtHF9ABRQWZ3WqGhORLPrE2vGMRNCdmeMk83Knng2E43Rc2YHd2I26zgy6jgxiUo8iiSHCahjT2Y8PoCCILAIY4g2JEGND7Q2Snd/9497u6kuqunqpvqhfnxe5/Tpurd+de/3V7fvp27fuvUrRQRmZpaumsEuwMzM+peD3swscQ56M7PEOejNzBLnoDczS5yD3swscT0GvaR7Je2U9HI390vS/5G0VdI6SdMrX6aZmfVVOUf09wEX7Of+C4Ep+c8C4M4DL8vMzCqlx6CPiF8Av9tPk4uBH0TmWeBwSUdVqkAzMzswwyqwjAnA6wXTTfm8Xxc3lLSA7KifkSNHnnLsscdWYPVDU3t7OzU16b4FknL/Uu4buH/V7pVXXnkzIsb35jGVCHqVmFdyXIWIWAwsBqivr4/NmzdXYPVDU2NjIw0NDYNdRr9JuX8p9w3cv2on6Ve9fUwlXvaagGMKpicCOyqwXDMzq4BKBP0y4Or86pvTgHcjYp/TNmZmNjh6PHUj6QGgAThSUhNwIzAcICL+FlgOfBbYCnwAfLG/ijUzs97rMegjYl4P9wfwZxWryMyqwp49e2hqamL37t2DXUoXY8eOZdOmTYNdxgEbOXIkEydOZPjw4Qe8rEq8GWtmB6GmpibGjBnDpEmTkEpdkzE4du3axZgxYwa7jAMSEbz11ls0NTUxefLkA15eutcgmVm/2r17N+PGjRtSIZ8KSYwbN65i/y056M2szxzy/aeSz62D3swscT5Hb2ZVq7a2lhNPPLFzeunSpYwbN24QKxqaHPRmVrXq6upYu3Ztl3m7du3qvN3a2sqwYY45n7oxs6T86Ec/4rLLLuOiiy7i/PPPB2DRokXMmDGDk046iRtvvLGz7a233kp9fT3nnnsu8+bN47bbbgOgoaGB1atXA/Dmm28yadIkANra2li4cGHnsu666y5g77ALl156KccddxxXXXUV2ZXnsGrVKs444wxOPvlkZs6cya5duzjzzDO7vEDNnj2bdevW9dtz4pc6Mztg3/7pBjbueK+iyzz+6MO48aJ/v982LS0tTJ06FYDJkyfz6KOPAvDMM8+wbt06jjjiCFauXMmWLVt4/vnniQjmzp3LL37xC0aPHs2DDz7ImjVraG1tZfr06Zxyyin7Xd8999zD2LFjWbVqFR9++CGzZ8/ufDFZs2YNGzZs4Oijj2b27Nk8/fTTzJw5kyuuuIKHHnqIGTNm8N5771FXV8f8+fO57777uP3223nllVf48MMPOemkkyrwrJXmoDezqlXq1A3AeeedxxFHHAHAypUrWblyJdOmTQOgubmZLVu2sGvXLj7/+c8zatQoAObOndvj+lauXMm6det4+OGHAXj33XfZsmULI0aMYObMmUycOBGAqVOnsm3bNsaOHctRRx3FjBkzADjssMMAuOyyy/jOd77DokWLuPfee7nmmmsO7InogYPezA5YT0feA2306NGdtyOCG264ga985Std2tx+++3dXsI4bNgw2tvbAbpcyx4RfP/732fOnDld2jc2NnLIIYd0TtfW1tLa2kpElFzHqFGjOO+883jsscdYsmRJ52mi/uJz9GaWtDlz5nDvvffS3NwMwPbt29m5cydnnXUWjz76KC0tLezatYuf/vSnnY+ZNGkSL7zwAkDn0XvHsu6880727NkDwCuvvML777/f7bqPO+44duzYwapVq4DsjeLW1lYA5s+fz3XXXceMGTM6//voLz6iN7OknX/++WzatInTTz8dgEMPPZQf/vCHTJ8+nSuuuIKpU6fyiU98gjPPPLPzMddffz2XX345999/P+ecc07n/Pnz57Nt2zamT59ORDB+/HiWLl3a7bpHjBjBQw89xFe/+lVaWlqoq6vjiSee4NBDD+WUU07hsMMO44tfHIBxICNiUH4+9alPRcqeeuqpwS6hX6Xcv5T7FlG5/m3cuLEiy6m09957r0+Pu/HGG2PRokUVrqZ727dvjylTpkRbW1u3bUo9x8Dq6GXe+tSNmdkA+8EPfsCsWbO49dZbB+RrD33qxswMuOmmmwZsXVdffTVXX331gK3PR/Rm1mcRJb8e2iqgks+tg97M+mTkyJG89dZbDvt+EPl49CNHjqzI8nzqxsz6ZOLEiTQ1NfHGG28Mdild7N69u2IBOZg6vmGqEhz0ZtYnw4cP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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "data_pred = pd.DataFrame({'Temperature': np.linspace(start=30, stop=90, num=121), 'Intercept': 1})\n", + "data_pred['Frequency'] = logmodel.predict(data_pred[['Intercept','Temperature']])\n", + "data_pred.plot(x=\"Temperature\",y=\"Frequency\",kind=\"line\",ylim=[0,1])\n", + "plt.scatter(x=data[\"Temperature\"],y=data[\"Frequency\"])\n", + "plt.grid(True)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "hideCode": false, + "hidePrompt": false, + "scrolled": true + }, + "source": [ + "As expected from the initial data, the\n", + "temperature has no significant impact on the probability of failure of the\n", + "O-rings. It will be about 0.2, as in the tests\n", + "where we had a failure of at least one joint. Let's get back\n", + "to the initial dataset to estimate the probability of failure:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.06521739130434782\n" + ] + } + ], + "source": [ + "data = pd.read_csv(\"shuttle.csv\")\n", + "print(np.sum(data.Malfunction)/np.sum(data.Count))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This probability is thus about $p=0.065$. Knowing that there is\n", + "a primary and a secondary O-ring on each of the three parts of the\n", + "launcher, the probability of failure of both joints of a launcher\n", + "is $p^2 \\approx 0.00425$. The probability of failure of any one of the\n", + "launchers is $1-(1-p^2)^3 \\approx 1.2%$. That would really be\n", + "bad luck.... Everything is under control, so the takeoff can happen\n", + "tomorrow as planned.\n", + "\n", + "But the next day, the Challenger shuttle exploded and took away\n", + "with her the seven crew members. The public was shocked and in\n", + "the subsequent investigation, the reliability of the\n", + "O-rings was questioned. Beyond the internal communication problems\n", + "of NASA, which have a lot to do with this fiasco, the previous analysis\n", + "includes (at least) a small problem.... Can you find it?\n", + "You are free to modify this analysis and to look at this dataset\n", + "from all angles in order to to explain what's wrong." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Hide code", + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.4" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/module2/exo5/examine_data.ipynb b/module2/exo5/examine_data.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..1f6c1546e10839dfc211faac5ea2c64a2aaaab4b --- /dev/null +++ b/module2/exo5/examine_data.ipynb @@ -0,0 +1,75 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[['4/12/81' 6 66 50 0]\n", + " ['11/12/81' 6 70 50 1]\n", + " ['3/22/82' 6 69 50 0]\n", + " ['11/11/82' 6 68 50 0]\n", + " ['4/04/83' 6 67 50 0]\n", + " ['6/18/82' 6 72 50 0]\n", + " ['8/30/83' 6 73 100 0]\n", + " ['11/28/83' 6 70 100 0]\n", + " ['2/03/84' 6 57 200 1]\n", + " ['4/06/84' 6 63 200 1]\n", + " ['8/30/84' 6 70 200 1]\n", + " ['10/05/84' 6 78 200 0]\n", + " ['11/08/84' 6 67 200 0]\n", + " ['1/24/85' 6 53 200 2]\n", + " ['4/12/85' 6 67 200 0]\n", + " ['4/29/85' 6 75 200 0]\n", + " ['6/17/85' 6 70 200 0]\n", + " ['7/29/85' 6 81 200 0]\n", + " ['8/27/85' 6 76 200 0]\n", + " ['10/03/85' 6 79 200 0]\n", + " ['10/30/85' 6 75 200 2]\n", + " ['11/26/85' 6 76 200 0]\n", + " ['1/12/86' 6 58 200 1]]\n" + ] + } + ], + "source": [ + "import pandas as pd\n", + "\n", + "x = pd.read_csv('shuttle.csv', header=0).values\n", + "\n", + "print(x)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.4" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/module2/exo5/exo5_R_en.ipynb b/module2/exo5/exo5_R_en.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..8a59929db138d63685277409cc7774df4a55e070 --- /dev/null +++ b/module2/exo5/exo5_R_en.ipynb @@ -0,0 +1,503 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Analysis of the risk of failure of the O-rings on the Challenger shuttle" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "On January 27, 1986, the day before the takeoff of the shuttle _Challenger_, had\n", + "a three-hour teleconference was held between \n", + "Morton Thiokol (the manufacturer of one of the engines) and NASA. The\n", + "discussion focused on the consequences of the\n", + "temperature at take-off of 31°F (just below\n", + "0°C) for the success of the flight and in particular on the performance of the\n", + "O-rings used in the engines. Indeed, no test\n", + "had been performed at this temperature.\n", + "\n", + "The following study takes up some of the analyses carried out that\n", + "night with the objective of assessing the potential influence of\n", + "the temperature and pressure to which the O-rings are subjected\n", + "on their probability of malfunction. Our starting point is \n", + "the results of the experiments carried out by NASA engineers\n", + "during the six years preceding the launch of the shuttle\n", + "Challenger." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Loading the data\n", + "We start by loading this data:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 23 × 5
DateCountTemperaturePressureMalfunction
<fct><int><int><int><int>
4/12/81 666 500
11/12/81 670 501
3/22/82 669 500
11/11/82 668 500
4/04/83 667 500
6/18/82 672 500
8/30/83 6731000
11/28/83 6701000
2/03/84 6572001
4/06/84 6632001
8/30/84 6702001
10/05/84 6782000
11/08/84 6672000
1/24/85 6532002
4/12/85 6672000
4/29/85 6752000
6/17/85 6702000
7/29/856812000
8/27/85 6762000
10/03/85 6792000
10/30/85 6752002
11/26/85 6762000
1/12/86 6582001
\n" + ], + "text/latex": [ + "A data.frame: 23 × 5\n", + "\\begin{tabular}{r|lllll}\n", + " Date & Count & Temperature & Pressure & Malfunction\\\\\n", + " & & & & \\\\\n", + "\\hline\n", + "\t 4/12/81 & 6 & 66 & 50 & 0\\\\\n", + "\t 11/12/81 & 6 & 70 & 50 & 1\\\\\n", + "\t 3/22/82 & 6 & 69 & 50 & 0\\\\\n", + "\t 11/11/82 & 6 & 68 & 50 & 0\\\\\n", + "\t 4/04/83 & 6 & 67 & 50 & 0\\\\\n", + "\t 6/18/82 & 6 & 72 & 50 & 0\\\\\n", + "\t 8/30/83 & 6 & 73 & 100 & 0\\\\\n", + "\t 11/28/83 & 6 & 70 & 100 & 0\\\\\n", + "\t 2/03/84 & 6 & 57 & 200 & 1\\\\\n", + "\t 4/06/84 & 6 & 63 & 200 & 1\\\\\n", + "\t 8/30/84 & 6 & 70 & 200 & 1\\\\\n", + "\t 10/05/84 & 6 & 78 & 200 & 0\\\\\n", + "\t 11/08/84 & 6 & 67 & 200 & 0\\\\\n", + "\t 1/24/85 & 6 & 53 & 200 & 2\\\\\n", + "\t 4/12/85 & 6 & 67 & 200 & 0\\\\\n", + "\t 4/29/85 & 6 & 75 & 200 & 0\\\\\n", + "\t 6/17/85 & 6 & 70 & 200 & 0\\\\\n", + "\t 7/29/85 & 6 & 81 & 200 & 0\\\\\n", + "\t 8/27/85 & 6 & 76 & 200 & 0\\\\\n", + "\t 10/03/85 & 6 & 79 & 200 & 0\\\\\n", + "\t 10/30/85 & 6 & 75 & 200 & 2\\\\\n", + "\t 11/26/85 & 6 & 76 & 200 & 0\\\\\n", + "\t 1/12/86 & 6 & 58 & 200 & 1\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 23 × 5\n", + "\n", + "| Date <fct> | Count <int> | Temperature <int> | Pressure <int> | Malfunction <int> |\n", + "|---|---|---|---|---|\n", + "| 4/12/81 | 6 | 66 | 50 | 0 |\n", + "| 11/12/81 | 6 | 70 | 50 | 1 |\n", + "| 3/22/82 | 6 | 69 | 50 | 0 |\n", + "| 11/11/82 | 6 | 68 | 50 | 0 |\n", + "| 4/04/83 | 6 | 67 | 50 | 0 |\n", + "| 6/18/82 | 6 | 72 | 50 | 0 |\n", + "| 8/30/83 | 6 | 73 | 100 | 0 |\n", + "| 11/28/83 | 6 | 70 | 100 | 0 |\n", + "| 2/03/84 | 6 | 57 | 200 | 1 |\n", + "| 4/06/84 | 6 | 63 | 200 | 1 |\n", + "| 8/30/84 | 6 | 70 | 200 | 1 |\n", + "| 10/05/84 | 6 | 78 | 200 | 0 |\n", + "| 11/08/84 | 6 | 67 | 200 | 0 |\n", + "| 1/24/85 | 6 | 53 | 200 | 2 |\n", + "| 4/12/85 | 6 | 67 | 200 | 0 |\n", + "| 4/29/85 | 6 | 75 | 200 | 0 |\n", + "| 6/17/85 | 6 | 70 | 200 | 0 |\n", + "| 7/29/85 | 6 | 81 | 200 | 0 |\n", + "| 8/27/85 | 6 | 76 | 200 | 0 |\n", + "| 10/03/85 | 6 | 79 | 200 | 0 |\n", + "| 10/30/85 | 6 | 75 | 200 | 2 |\n", + "| 11/26/85 | 6 | 76 | 200 | 0 |\n", + "| 1/12/86 | 6 | 58 | 200 | 1 |\n", + "\n" + ], + "text/plain": [ + " Date Count Temperature Pressure Malfunction\n", + "1 4/12/81 6 66 50 0 \n", + "2 11/12/81 6 70 50 1 \n", + "3 3/22/82 6 69 50 0 \n", + "4 11/11/82 6 68 50 0 \n", + "5 4/04/83 6 67 50 0 \n", + "6 6/18/82 6 72 50 0 \n", + "7 8/30/83 6 73 100 0 \n", + "8 11/28/83 6 70 100 0 \n", + "9 2/03/84 6 57 200 1 \n", + "10 4/06/84 6 63 200 1 \n", + "11 8/30/84 6 70 200 1 \n", + "12 10/05/84 6 78 200 0 \n", + "13 11/08/84 6 67 200 0 \n", + "14 1/24/85 6 53 200 2 \n", + "15 4/12/85 6 67 200 0 \n", + "16 4/29/85 6 75 200 0 \n", + "17 6/17/85 6 70 200 0 \n", + "18 7/29/85 6 81 200 0 \n", + "19 8/27/85 6 76 200 0 \n", + "20 10/03/85 6 79 200 0 \n", + "21 10/30/85 6 75 200 2 \n", + "22 11/26/85 6 76 200 0 \n", + "23 1/12/86 6 58 200 1 " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "data = read.csv(\"shuttle.csv\",header=T)\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The data set shows us the date of each test, the number of O-rings (there are 6 on the main launcher), the temperature (in Fahrenheit) and pressure (in psi), and finally the number of identified malfunctions." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Graphical inspection\n", + "Flights without incidents do not provide any information\n", + "on the influence of temperature or pressure on malfunction.\n", + "We thus focus on the experiments in which at least one O-ring\n", + "was defective." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 7 × 5
DateCountTemperaturePressureMalfunction
<fct><int><int><int><int>
211/12/81670 501
92/03/84 6572001
104/06/84 6632001
118/30/84 6702001
141/24/85 6532002
2110/30/856752002
231/12/86 6582001
\n" + ], + "text/latex": [ + "A data.frame: 7 × 5\n", + "\\begin{tabular}{r|lllll}\n", + " & Date & Count & Temperature & Pressure & Malfunction\\\\\n", + " & & & & & \\\\\n", + "\\hline\n", + "\t2 & 11/12/81 & 6 & 70 & 50 & 1\\\\\n", + "\t9 & 2/03/84 & 6 & 57 & 200 & 1\\\\\n", + "\t10 & 4/06/84 & 6 & 63 & 200 & 1\\\\\n", + "\t11 & 8/30/84 & 6 & 70 & 200 & 1\\\\\n", + "\t14 & 1/24/85 & 6 & 53 & 200 & 2\\\\\n", + "\t21 & 10/30/85 & 6 & 75 & 200 & 2\\\\\n", + "\t23 & 1/12/86 & 6 & 58 & 200 & 1\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 7 × 5\n", + "\n", + "| | Date <fct> | Count <int> | Temperature <int> | Pressure <int> | Malfunction <int> |\n", + "|---|---|---|---|---|---|\n", + "| 2 | 11/12/81 | 6 | 70 | 50 | 1 |\n", + "| 9 | 2/03/84 | 6 | 57 | 200 | 1 |\n", + "| 10 | 4/06/84 | 6 | 63 | 200 | 1 |\n", + "| 11 | 8/30/84 | 6 | 70 | 200 | 1 |\n", + "| 14 | 1/24/85 | 6 | 53 | 200 | 2 |\n", + "| 21 | 10/30/85 | 6 | 75 | 200 | 2 |\n", + "| 23 | 1/12/86 | 6 | 58 | 200 | 1 |\n", + "\n" + ], + "text/plain": [ + " Date Count Temperature Pressure Malfunction\n", + "2 11/12/81 6 70 50 1 \n", + "9 2/03/84 6 57 200 1 \n", + "10 4/06/84 6 63 200 1 \n", + "11 8/30/84 6 70 200 1 \n", + "14 1/24/85 6 53 200 2 \n", + "21 10/30/85 6 75 200 2 \n", + "23 1/12/86 6 58 200 1 " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "data = data[data$Malfunction>0,]\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We have a high temperature variability but\n", + "the pressure is almost always 200, which should\n", + "simplify the analysis.\n", + "\n", + "How does the frequency of failure vary with temperature?" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAMAAADKOT/pAAAC+lBMVEUAAAABAQECAgIDAwME\nBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUW\nFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJycp\nKSkqKiorKystLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6Ojo7Ozs8\nPDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tMTExNTU1O\nTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1eXl5fX19g\nYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29wcHBxcXFy\ncnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGCgoKDg4OE\nhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OUlJSVlZWW\nlpaXl5eYmJiZmZmampqbm5ucnJydnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWmpqanp6eo\nqKipqamqqqqrq6usrKytra2urq6vr6+wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4uLi5ubm6\nurq7u7u8vLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXGxsbHx8fIyMjJycnKysrLy8vM\nzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc3Nzd3d3e\n3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u7u7v7+/w\n8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7///9puzMQAAAA\nCXBIWXMAABJ0AAASdAHeZh94AAAgAElEQVR4nO3dC3SU5b3v8WdIhksgICi3cAlotbUtETxc\nWvBQo2WrWPTUgtgqEVqsgMZdVKBFQLywd2i1anW70b29HbcepFGPp8IRkSpFYQOixeIlokes\n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\nRTZ+AAAAAElFTkSuQmCC", + "text/plain": [ + "plot without title" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plot(data=data, Malfunction/Count ~ Temperature, ylim=c(0,1))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "At first glance, the dependence does not look very important, but let's try to\n", + "estimate the impact of temperature $t$ on the probability of O-ring malfunction." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Estimation of the temperature influence\n", + "\n", + "Suppose that each of the six O-rings is damaged with the same\n", + "probability and independently of the others and that this probability\n", + "depends only on the temperature. If $p(t)$ is this probability, the\n", + "number $D$ of malfunctioning O-rings during a flight at\n", + "temperature $t$ follows a binomial law with parameters $n=6$ and\n", + "$p=p(t)$. To link $p(t)$ to $t$, we will therefore perform a\n", + "logistic regression." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "\n", + "Call:\n", + "glm(formula = Malfunction/Count ~ Temperature, family = binomial(link = \"logit\"), \n", + " data = data, weights = Count)\n", + "\n", + "Deviance Residuals: \n", + " 2 9 10 11 14 21 23 \n", + "-0.3015 -0.2836 -0.2919 -0.3015 0.6891 0.6560 -0.2850 \n", + "\n", + "Coefficients:\n", + " Estimate Std. Error z value Pr(>|z|)\n", + "(Intercept) -1.389528 3.195752 -0.435 0.664\n", + "Temperature 0.001416 0.049773 0.028 0.977\n", + "\n", + "(Dispersion parameter for binomial family taken to be 1)\n", + "\n", + " Null deviance: 1.3347 on 6 degrees of freedom\n", + "Residual deviance: 1.3339 on 5 degrees of freedom\n", + "AIC: 18.894\n", + "\n", + "Number of Fisher Scoring iterations: 4\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "logistic_reg = glm(data=data, Malfunction/Count ~ Temperature, weights=Count, \n", + " family=binomial(link='logit'))\n", + "summary(logistic_reg)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The most likely estimator of the temperature parameter is 0.0014\n", + "and the standard error of this estimator is 0.122, in other words we\n", + "cannot distinguish any particular impact and we must take our\n", + "estimates with caution." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Estimation of the probability of O-ring malfunction\n", + "\n", + "The expected temperature on the take-off day is 31°F. Let's try to\n", + "estimate the probability of O-ring malfunction at\n", + "this temperature from the model we just built:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAMAAADKOT/pAAAC/VBMVEUAAAABAQECAgIDAwME\nBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUW\nFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJyco\nKCgpKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6\nOjo7Ozs8PDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tM\nTExNTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1e\nXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29w\ncHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGC\ngoKDg4OEhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OU\nlJSVlZWWlpaXl5eYmJiZmZmampqbm5udnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWmpqan\np6eoqKipqamqqqqrq6usrKytra2urq6vr6+wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4uLi5\nubm6urq7u7u8vLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXGxsbHx8fIyMjJycnKysrL\ny8vMzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc3Nzd\n3d3e3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u7u7v\n7+/w8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7///8D/m+7\nAAAACXBIWXMAABJ0AAASdAHeZh94AAAgAElEQVR4nO3de3yU1YGH8ROSEAh35CYKAV231q5C\nsVWsgLihXlop1guI1YKw4gpqWrHNqhQUpVrY4loX14JXtGsthrq21ZoiXhYvhYiKghDRCoqC\n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\n2/jfsVu3+Pj6x/mHh1v7QBvftKl/tHNUeJlT61/gGRVe5zX26m/a55H+7+3Ofybc+WGWf7U7\nf0eT7xd4z7ePCE0zhQ2v6g/Y38afXP8U92fhxn/Ibvzfhg+6wo2/ym78dTzagZRvIQFZiZAA\ngaRCeru4eJ+vVIUvbKUNJiT4JamQlv+/V+0ICR5LKqQdK1ZEfJeHdvAMz5EAAdch1a0tLytb\ntK6RUYQEz7gNqWpyt/S7oL2nR75vT0jwjNOQNvQ1R42dNnPmlNE9Tb+qiIGEBM84DWl8/iN7\njmrn5JREDCQkeMZpSD3GNRyP6hUxkJDgGbe/2Dej4fiGlhEDCQmecRpS0ciG4xF9IgYSEjzj\nNKSSnFk700dbp5rSiIGEBM84Dal6gGlXPPaKSWOGFprBUakQEjzj9n2kmtn9c+3bSPkD59ZG\njSMkeMb5R4R2rKmoqKxpZBAhwTN81q4Z2T1vcOfOg+ftTh1+fHW/gj7nvtzky2dq9fGtTd5h\n9wiuyROE1HzsOrtD6aOPlrY/+/Og8rCvzP7Dvefn3d3Ey2fqT7kFI6aPP9xckvE1+YKQmo+f\ndVltz1Z3mVl3wpnhy6N3tVzdpMtnupLdbbp+as+/Z/6Y6VX5gpCaj6LZ6fOf93m5xXvpw5Ou\nadLlM13JPebF9EG7r2d6Vb4gpGajyuz5kyPLzW1/v+dr1w9r0uWjPlD8t7ho78dWTu6c4TV5\ng5CajY1mZfrgTXPLV/Z87cZTmnT5jRkuZWTBnoNTO2Z4Td4gpGZjd+cH0wfzO/+x4NP04Xcu\nbdLlM33d7lbzfvqgx9EZXpM3CKn5uPLLW+zZli9fWdP7h+FXns99tkmXz3Qln+UNCM/nmF9k\nelW+IKTmY/PRxy784IOyY4/eHJS3vPjF6lX/2m5SEy+fqZ+ZI+b95ffDc47N+Jp8QUjNyObx\nrY1pPd528NLJLYw5/N+/2H+U+X9dPlN3t7d/UGCk4r1dPxBSs1K7Zs3eDzFuffWjjC6fqY2P\nRP0H15odQgIECAkQICRAgJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAABQgIECAkQICRA\ngJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAAAUICBAgJECAkQICQ\nAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAAB\nQgIECAkQICRAgJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAAAUIC\nBAgJECAkQICQAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAAAdch1a0tLytbtK6RUYQEz7gN\nqWpyNxPqPX171DhCgmechrShrzlq7LSZM6eM7mn6VUUMJCR4xmlI4/Mf2XNUOyenJGIgIcEz\nTkPqMa7heFSviIGEBM84DSl/RsPxDS0jBhISPOM0pKKRDccj+kQMJCR4xmlIJTmzdqaPtk41\npREDCQmecRpS9QDTrnjsFZPGDC00g6NSISR4xu37SDWz++fat5HyB86tjRpHSPCM848I7VhT\nUVFZ08ggQoJn+KwdIEBIgEBSIb1dXLzPV97p2qleodkqmANwJqmQlpt9r2X34vJ6/2YaexYF\nZJWkQtqxYkXEd5cQEvySnc+RCAmeyc5f7CMkeCY7f7GPkOCZ7PzFPkKCZ7LzF/sICZ7Jzl/s\nIyR4Jjt/sY+Q4Jns/MU+QoJnsvMX+wgJnsnOX+wjJHgmO3+xj5Dgmez8xT5Cgmf4rB0gQEiA\nACEBAoQECBASIEBIgAAhAQKEBAhkZ0hLDeCZpV94m8cfUvDqsgM4Y8h8Vwomu5ppcoGrmeYP\n4f7LyJAzDrQzX/3iu9xBSAc0dqyzqdr8ztVMv2vjaibuvwxJ7z9CEvN1I0Tj/msMIYn5uhGi\ncf81hpDEfN0I0bj/GkNIYr5uhGjcf40hJDFfN0I07r/GEJKYrxshGvdfYwhJzNeNEI37rzGE\nJObrRojG/dcYQhLzdSNE4/5rTJIhTZjgbKpOT7ma6alOrmbi/suQ9P5LMqSqqD9iofXublcz\n7X7X1UzcfxmS3n9JhgQ0G4QECBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQIEBIgQEiAACEB\nAoQECBASIEBIgEASIa299IiWXUa8bA+rS4ryDx2/IdbpfmjGxz/VvXv+jMFNsc+U8ochbTuc\nujiIf6qCvX+d4d3Yp1p1UY+8Lmc72RR/Gdczv/fVW7RTJRDSW4e0vGja9/LzXwiCmgHm3Bnj\n8vvG+aueS3PDkGKe6jYzutR62sGNusccOeWari2XxD/VlPA2lfZptTnuqd5o13nqAzf1yFsU\n/416p0vO+dPPMAN3SadKIKRv5jybOi0zI4NgtvlZ6vDXZnJ8s33ev18YUsxTTWv4kzpx36iN\nbb+6NQgq2050cv+lLMu9OfapLjSpH0HBa2Zo/DfqAjMvdVpi5kinSiCkKdfa09r8fkHQv91O\ne/x33epim+3WnCfCkGKeqsRU7j2M+0bNMk/aszoHU4Vqv/rlmtinOtHssmft+8R/o9r3tFdc\n3XqgdKrEXmx435wd7MgtDo/HmrVxTfN268urbUhxTzXGfFy7/mN7FPuNOr31rmDnp06mCt1m\nFru4/1akTj9ucWbsM201Q8Lz41rWKqdKKKRti49rtzRYY9L/ZbFppjyuiYoP/SQMKe6pzjbX\ndzLm7x+Kf6ag6JhXTs4xR97rYCpra1e72+KeamWnfs9/+Epx4Uuxz7Q775jwfKBZr5wqmZA6\nGHNR6odAhZkU/s9Zpiymie41C4IwpLinGmqOuOWBa9ubu+K/Ue2KDp284Pbe5iEH91/Krea5\nwMH/VW8dY4zp/YKDmQbnvG7nyzerlFMlE9K/TPhGi0FrU/fZFeH/nGkWxjPPxs5nBXtDineq\nRQu2pk7fLOhcE/uNKjD3p043tO1RG/tUKdu7DLFncU+1sm+vnz9+91c6lMe/KZ42fRa+9fAR\nR5p3lFMl9hxpcZvjdleaMeHxFPOneCa5oO17e0KKfaq075o/xz7TIbnb7Nn55nUXN+rBMNvY\n77+Bhe+nTrcddtiu+G/UHYXGtL3te6ZaOVVyn2y40KysyRsaHo4278UyxR/MT9avX/+mGb3+\n07in2uMy83TsMx2fG77ANdEscXGjhudW27OYp/os59Tw/PvmDQc3asszz20JBhwqvVHuQ3r/\nuIvD83PM0uDEQvvDdXfPXvFMNXnvG/OmNOapPrvzV+H5ILM27hsVXGFesmenmXWxT5UKqM3X\n0gfxTrXJnBSejzTL4r9RtfbkvZzvS29UAv8iHd7SboTVbdvuCOaaG1KH/2FujGemlY9bD5vT\nHl8V81S7D2u7KnX2W/PVIO4bFSzL+cedQbC0xXHxTxUEy9Ofr4p9qr75q1On1Z3b74z9Rv04\n/8+p/8POMS9Kb1QCIS3Mzb/g+rFtzL+nfjYMNiNuvCDn2G1xzhc+R4p7qsdy2oz/yXdz2lc4\nuFE/MP1vvLR1y8Uu7r+Hzc3pg5inKmtxyPX3zOhrP24Q9416rbBjyY1fMz8KpFMl8RzppbO7\n5nYc9l/28LNrivIPm7Q51unSIcU91Qtndszr+f1KBzMFdXf1a9XhW392MVXqp/Xte47ivv/O\n7prXadjvHcwUvHh651YD7gm0U/FrFIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKE\nBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQI\nEBIgQEiAACEBAoQECBASIEBIgAAhAQKElP1uqUx6BWgUIWW9DeaJpJeARhFS1nuMkDxASNnu\n2ybl+SD4aGLv/C4j7N8yH22qJ3RrfeLL20p6tjmpIvWFs82G8d1afunOIDg55wN7mfU5QxJd\n80GIkLLdixebqQs3B5uKOpTO/+nhBc8EwRgz7MZX7mvV+6zSZQs6dt8VBKPMCaVLnv+mmRfM\nMXfYy9xm5ia97IMNIWW9W8KHdpfnLU2drmv3tSAYby5PHY4056VOS8wSG9Lo1OEnBX2CTXlD\n7UVOKqhOcMEHJULKemFIdV0GfGidbj5LhVSe+vL1Zn7q9E6zwIb0mB04zGwIzsjdaB/ZnZPs\nkg9ChJT1wpA+Mnu9mQppZerL08zTqdN55j9tSKvswDHmleB+80v7yK4s2SUfhAgp64UhVZr+\nT6RVp0KybyxNs69A7A3pPTtwYiqtLa1PSz2y61ST7JIPQoSU9fb8i9S//gv7Ccn+ExV8z7wW\nBOflVa3PmZDQUg9ihJT10i82dGkVvn6wKdhvSI/a751gUt8tM/NvM88lt9qDFSFlvZnhM57L\nzXWp0009ztpvSN9OHa7O+VLqdGeHC08pqktyvQcnQsp6C8wJP/9zsLG3ueS+n/bOf2q/IQ07\n6647+5iH7PBLOuddl+yCD0qElPV2ndu602+C4MPLe+V1/M7LwX5DqvxBz5bH3BcOf8qknzHB\nKUJqBkaZ9Ukv4aBHSM0AISWPkJoBQkoeITUDhJQ8QgIECAkQICRAgJAAAUICBAgJECAkQICQ\nAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAAB\nQgIECAkQICRA4H8AHOKqM1UAAAADSURBVHhzjEM0knQAAAAASUVORK5CYII=", + "text/plain": [ + "plot without title" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "tempv = seq(from=30, to=90, by = .5)\n", + "rmv <- predict(logistic_reg,list(Temperature=tempv),type=\"response\")\n", + "plot(tempv,rmv,type=\"l\",ylim=c(0,1))\n", + "points(data=data, Malfunction/Count ~ Temperature)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "hideCode": false, + "hidePrompt": false, + "scrolled": true + }, + "source": [ + "As expected from the initial data, the\n", + "temperature has no significant impact on the probability of failure of the\n", + "O-rings. It will be about 0.2, as in the tests\n", + "where we had a failure of at least one joint. Let's get back\n", + "to the initial dataset to estimate the probability of failure:" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "0.0652173913043478" + ], + "text/latex": [ + "0.0652173913043478" + ], + "text/markdown": [ + "0.0652173913043478" + ], + "text/plain": [ + "[1] 0.06521739" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "data_full = read.csv(\"shuttle.csv\",header=T)\n", + "sum(data_full$Malfunction)/sum(data_full$Count)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This probability is thus about $p=0.065$. Knowing that there is\n", + "a primary and a secondary O-ring on each of the three parts of the\n", + "launcher, the probability of failure of both joints of a launcher\n", + "is $p^2 \\approx 0.00425$. The probability of failure of any one of the\n", + "launchers is $1-(1-p^2)^3 \\approx 1.2\\%$. That would really be\n", + "bad luck.... Everything is under control, so the takeoff can happen\n", + "tomorrow as planned.\n", + "\n", + "But the next day, the Challenger shuttle exploded and took away\n", + "with her the seven crew members. The public was shocked and in\n", + "the subsequent investigation, the reliability of the\n", + "O-rings was questioned. Beyond the internal communication problems\n", + "of NASA, which have a lot to do with this fiasco, the previous analysis\n", + "includes (at least) a small problem.... Can you find it?\n", + "You are free to modify this analysis and to look at this dataset\n", + "from all angles in order to to explain what's wrong." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Hide code", + "kernelspec": { + "display_name": "R", + "language": "R", + "name": "ir" + }, + "language_info": { + "codemirror_mode": "r", + "file_extension": ".r", + "mimetype": "text/x-r-source", + "name": "R", + "pygments_lexer": "r", + "version": "3.6.1" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/module2/exo5/exo5_R_en.org b/module2/exo5/exo5_R_en.org new file mode 100644 index 0000000000000000000000000000000000000000..dc8a5d07f7e0aabed7bab44762fc9213f78e4acf --- /dev/null +++ b/module2/exo5/exo5_R_en.org @@ -0,0 +1,201 @@ +#+TITLE: Analysis of the risk of failure of the O-rings on the Challenger shuttle +#+AUTHOR: Arnaud Legrand +#+LANGUAGE: en + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +#+LATEX_HEADER: \usepackage[utf8]{inputenc} +#+LATEX_HEADER: \usepackage[T1]{fontenc} +#+LATEX_HEADER: \usepackage[a4paper,margin=.8in]{geometry} +#+LATEX_HEADER: \usepackage[french]{babel} + +# #+PROPERTY: header-args :session :exports both + +On January 27, 1986, the day before the takeoff of the shuttle /Challenger/, had +a three-hour teleconference was held between +Morton Thiokol (the manufacturer of one of the engines) and NASA. The +discussion focused on the consequences of the +temperature at take-off of 31°F (just below +0°C) for the success of the flight and in particular on the performance of the +O-rings used in the engines. Indeed, no test +had been performed at this temperature. + +The following study takes up some of the analyses carried out that +night with the objective of assessing the potential influence of +the temperature and pressure to which the O-rings are subjected +on their probability of malfunction. Our starting point is +the results of the experiments carried out by NASA engineers +during the six years preceding the launch of the shuttle +Challenger. + +* Loading the data +We start by loading this data: +#+begin_src R :results output :session *R* :exports both +data = read.csv("shuttle.csv",header=T) +data +#+end_src + +#+RESULTS: +#+begin_example + Date Count Temperature Pressure Malfunction +1 4/12/81 6 66 50 0 +2 11/12/81 6 70 50 1 +3 3/22/82 6 69 50 0 +4 11/11/82 6 68 50 0 +5 4/04/83 6 67 50 0 +6 6/18/82 6 72 50 0 +7 8/30/83 6 73 100 0 +8 11/28/83 6 70 100 0 +9 2/03/84 6 57 200 1 +10 4/06/84 6 63 200 1 +11 8/30/84 6 70 200 1 +12 10/05/84 6 78 200 0 +13 11/08/84 6 67 200 0 +14 1/24/85 6 53 200 2 +15 4/12/85 6 67 200 0 +16 4/29/85 6 75 200 0 +17 6/17/85 6 70 200 0 +18 7/29/85 6 81 200 0 +19 8/27/85 6 76 200 0 +20 10/03/85 6 79 200 0 +21 10/30/85 6 75 200 2 +22 11/26/85 6 76 200 0 +23 1/12/86 6 58 200 1 +#+end_example + +The data set shows us the date of each test, the number of O-rings +(there are 6 on the main launcher), the +temperature (in Fahrenheit) and pressure (in psi), and finally the +number of identified malfunctions. + +* Graphical inspection +Flights without incidents do not provide any information +on the influence of temperature or pressure on malfunction. +We thus focus on the experiments in which at least one O-ring was defective. + +#+begin_src R :results output :session *R* :exports both +data = data[data$Malfunction>0,] +data +#+end_src + +#+RESULTS: +: Date Count Temperature Pressure Malfunction +: 2 11/12/81 6 70 50 1 +: 9 2/03/84 6 57 200 1 +: 10 4/06/84 6 63 200 1 +: 11 8/30/84 6 70 200 1 +: 14 1/24/85 6 53 200 2 +: 21 10/30/85 6 75 200 2 +: 23 1/12/86 6 58 200 1 + +We have a high temperature variability but +the pressure is almost always 200, which should +simplify the analysis. + +How does the frequency of failure vary with temperature? +#+begin_src R :results output graphics :file "freq_temp.png" :exports both :width 600 :height 400 :session *R* +plot(data=data, Malfunction/Count ~ Temperature, ylim=c(0,1)) +#+end_src + +#+RESULTS: +[[file:freq_temp.png]] + +At first glance, the dependence does not look very important, but let's try to +estimate the impact of temperature $t$ on the probability of O-ring malfunction. + +* Estimation of the temperature influence + +Suppose that each of the six O-rings is damaged with the same +probability and independently of the others and that this probability +depends only on the temperature. If $p(t)$ is this probability, the +number $D$ of malfunctioning O-rings during a flight at +temperature $t$ follows a binomial law with parameters $n=6$ and +$p=p(t)$. To link $p(t)$ to $t$, we will therefore perform a +logistic regression. + +#+begin_src R :results output :session *R* :exports both +logistic_reg = glm(data=data, Malfunction/Count ~ Temperature, weights=Count, + family=binomial(link='logit')) +summary(logistic_reg) +#+end_src + +#+RESULTS: +#+begin_example + +Call: +glm(formula = Malfunction/Count ~ Temperature, family = binomial(link = "logit"), + data = data, weights = Count) + +Deviance Residuals: + 2 9 10 11 14 21 23 +-0.3015 -0.2836 -0.2919 -0.3015 0.6891 0.6560 -0.2850 + +Coefficients: + Estimate Std. Error z value Pr(>|z|) +(Intercept) -1.389528 3.195752 -0.435 0.664 +Temperature 0.001416 0.049773 0.028 0.977 + +(Dispersion parameter for binomial family taken to be 1) + + Null deviance: 1.3347 on 6 degrees of freedom +Residual deviance: 1.3339 on 5 degrees of freedom +AIC: 18.894 + +Number of Fisher Scoring iterations: 4 +#+end_example + +The most likely estimator of the temperature parameter is 0.001416 +and the standard error of this estimator is 0.049, in other words we +cannot distinguish any particular impact and we must take our +estimates with caution. + +* Estimation of the probability of O-ring malfunction +The expected temperature on the take-off day is 31°F. Let's try to +estimate the probability of O-ring malfunction at +this temperature from the model we just built: + +#+begin_src R :results output graphics :file "proba_estimate.png" :exports both :width 600 :height 400 :session *R* +# shuttle=shuttle[shuttle$r!=0,] +tempv = seq(from=30, to=90, by = .5) +rmv <- predict(logistic_reg,list(Temperature=tempv),type="response") +plot(tempv,rmv,type="l",ylim=c(0,1)) +points(data=data, Malfunction/Count ~ Temperature) +#+end_src + +#+RESULTS: +[[file:proba_estimate.png]] + +As expected from the initial data, the +temperature has no significant impact on the probability of failure of the +O-rings. It will be about 0.2, as in the tests +where we had a failure of at least one joint. Let's get back to the initial dataset to estimate the probability of failure: + +#+begin_src R :results output :session *R* :exports both +data_full = read.csv("shuttle.csv",header=T) +sum(data_full$Malfunction)/sum(data_full$Count) +#+end_src + +#+RESULTS: +: [1] 0.06521739 + +This probability is thus about $p=0.065$. Knowing that there is +a primary and a secondary O-ring on each of the three parts of the +launcher, the probability of failure of both joints of a launcher +is $p^2 \approx 0.00425$. The probability of failure of any one of the +launchers is $1-(1-p^2)^3 \approx 1.2%$. That would really be +bad luck.... Everything is under control, so the takeoff can happen +tomorrow as planned. + +But the next day, the Challenger shuttle exploded and took away +with her the seven crew members. The public was shocked and in +the subsequent investigation, the reliability of the +O-rings was questioned. Beyond the internal communication problems +of NASA, which have a lot to do with this fiasco, the previous analysis +includes (at least) a small problem.... Can you find it? +You are free to modify this analysis and to look at this dataset +from all angles in order to to explain what's wrong. diff --git a/module2/exo5/exo5_R_fr.ipynb b/module2/exo5/exo5_R_fr.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..4a60719f46be949abde4b8de40513cbcc8ff0a47 --- /dev/null +++ b/module2/exo5/exo5_R_fr.ipynb @@ -0,0 +1,502 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Analyse du risque de défaillance des joints toriques de la navette Challenger" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Le 27 Janvier 1986, veille du décollage de la navette _Challenger_, eu\n", + "lieu une télé-conférence de trois heures entre les ingénieurs de la\n", + "Morton Thiokol (constructeur d'un des moteurs) et de la NASA. La\n", + "discussion portait principalement sur les conséquences de la\n", + "température prévue au moment du décollage de 31°F (juste en dessous de\n", + "0°C) sur le succès du vol et en particulier sur la performance des\n", + "joints toriques utilisés dans les moteurs. En effet, aucun test\n", + "n'avait été effectué à cette température.\n", + "\n", + "L'étude qui suit reprend donc une partie des analyses effectuées cette\n", + "nuit là et dont l'objectif était d'évaluer l'influence potentielle de\n", + "la température et de la pression à laquelle sont soumis les joints\n", + "toriques sur leur probabilité de dysfonctionnement. Pour cela, nous\n", + "disposons des résultats des expériences réalisées par les ingénieurs\n", + "de la NASA durant les 6 années précédant le lancement de la navette\n", + "Challenger." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Chargement des données\n", + "Nous commençons donc par charger ces données :" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
DateCountTemperaturePressureMalfunction
4/12/81 6 66 50 0
11/12/816 70 50 1
3/22/82 6 69 50 0
11/11/826 68 50 0
4/04/83 6 67 50 0
6/18/82 6 72 50 0
8/30/83 6 73 100 0
11/28/836 70 100 0
2/03/84 6 57 200 1
4/06/84 6 63 200 1
8/30/84 6 70 200 1
10/05/846 78 200 0
11/08/846 67 200 0
1/24/85 6 53 200 2
4/12/85 6 67 200 0
4/29/85 6 75 200 0
6/17/85 6 70 200 0
7/29/85 6 81 200 0
8/27/85 6 76 200 0
10/03/856 79 200 0
10/30/856 75 200 2
11/26/856 76 200 0
1/12/86 6 58 200 1
\n" + ], + "text/latex": [ + "\\begin{tabular}{r|lllll}\n", + " Date & Count & Temperature & Pressure & Malfunction\\\\\n", + "\\hline\n", + "\t 4/12/81 & 6 & 66 & 50 & 0 \\\\\n", + "\t 11/12/81 & 6 & 70 & 50 & 1 \\\\\n", + "\t 3/22/82 & 6 & 69 & 50 & 0 \\\\\n", + "\t 11/11/82 & 6 & 68 & 50 & 0 \\\\\n", + "\t 4/04/83 & 6 & 67 & 50 & 0 \\\\\n", + "\t 6/18/82 & 6 & 72 & 50 & 0 \\\\\n", + "\t 8/30/83 & 6 & 73 & 100 & 0 \\\\\n", + "\t 11/28/83 & 6 & 70 & 100 & 0 \\\\\n", + "\t 2/03/84 & 6 & 57 & 200 & 1 \\\\\n", + "\t 4/06/84 & 6 & 63 & 200 & 1 \\\\\n", + "\t 8/30/84 & 6 & 70 & 200 & 1 \\\\\n", + "\t 10/05/84 & 6 & 78 & 200 & 0 \\\\\n", + "\t 11/08/84 & 6 & 67 & 200 & 0 \\\\\n", + "\t 1/24/85 & 6 & 53 & 200 & 2 \\\\\n", + "\t 4/12/85 & 6 & 67 & 200 & 0 \\\\\n", + "\t 4/29/85 & 6 & 75 & 200 & 0 \\\\\n", + "\t 6/17/85 & 6 & 70 & 200 & 0 \\\\\n", + "\t 7/29/85 & 6 & 81 & 200 & 0 \\\\\n", + "\t 8/27/85 & 6 & 76 & 200 & 0 \\\\\n", + "\t 10/03/85 & 6 & 79 & 200 & 0 \\\\\n", + "\t 10/30/85 & 6 & 75 & 200 & 2 \\\\\n", + "\t 11/26/85 & 6 & 76 & 200 & 0 \\\\\n", + "\t 1/12/86 & 6 & 58 & 200 & 1 \\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "Date | Count | Temperature | Pressure | Malfunction | \n", + "|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n", + "| 4/12/81 | 6 | 66 | 50 | 0 | \n", + "| 11/12/81 | 6 | 70 | 50 | 1 | \n", + "| 3/22/82 | 6 | 69 | 50 | 0 | \n", + "| 11/11/82 | 6 | 68 | 50 | 0 | \n", + "| 4/04/83 | 6 | 67 | 50 | 0 | \n", + "| 6/18/82 | 6 | 72 | 50 | 0 | \n", + "| 8/30/83 | 6 | 73 | 100 | 0 | \n", + "| 11/28/83 | 6 | 70 | 100 | 0 | \n", + "| 2/03/84 | 6 | 57 | 200 | 1 | \n", + "| 4/06/84 | 6 | 63 | 200 | 1 | \n", + "| 8/30/84 | 6 | 70 | 200 | 1 | \n", + "| 10/05/84 | 6 | 78 | 200 | 0 | \n", + "| 11/08/84 | 6 | 67 | 200 | 0 | \n", + "| 1/24/85 | 6 | 53 | 200 | 2 | \n", + "| 4/12/85 | 6 | 67 | 200 | 0 | \n", + "| 4/29/85 | 6 | 75 | 200 | 0 | \n", + "| 6/17/85 | 6 | 70 | 200 | 0 | \n", + "| 7/29/85 | 6 | 81 | 200 | 0 | \n", + "| 8/27/85 | 6 | 76 | 200 | 0 | \n", + "| 10/03/85 | 6 | 79 | 200 | 0 | \n", + "| 10/30/85 | 6 | 75 | 200 | 2 | \n", + "| 11/26/85 | 6 | 76 | 200 | 0 | \n", + "| 1/12/86 | 6 | 58 | 200 | 1 | \n", + "\n", + "\n" + ], + "text/plain": [ + " Date Count Temperature Pressure Malfunction\n", + "1 4/12/81 6 66 50 0 \n", + "2 11/12/81 6 70 50 1 \n", + "3 3/22/82 6 69 50 0 \n", + "4 11/11/82 6 68 50 0 \n", + "5 4/04/83 6 67 50 0 \n", + "6 6/18/82 6 72 50 0 \n", + "7 8/30/83 6 73 100 0 \n", + "8 11/28/83 6 70 100 0 \n", + "9 2/03/84 6 57 200 1 \n", + "10 4/06/84 6 63 200 1 \n", + "11 8/30/84 6 70 200 1 \n", + "12 10/05/84 6 78 200 0 \n", + "13 11/08/84 6 67 200 0 \n", + "14 1/24/85 6 53 200 2 \n", + "15 4/12/85 6 67 200 0 \n", + "16 4/29/85 6 75 200 0 \n", + "17 6/17/85 6 70 200 0 \n", + "18 7/29/85 6 81 200 0 \n", + "19 8/27/85 6 76 200 0 \n", + "20 10/03/85 6 79 200 0 \n", + "21 10/30/85 6 75 200 2 \n", + "22 11/26/85 6 76 200 0 \n", + "23 1/12/86 6 58 200 1 " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "data = read.csv(\"shuttle.csv\",header=T)\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Le jeu de données nous indique la date de l'essai, le nombre de joints\n", + "toriques mesurés (il y en a 6 sur le lançeur principal), la\n", + "température (en Farenheit) et la pression (en psi), et enfin le\n", + "nombre de dysfonctionnements relevés." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Inspection graphique des données\n", + "Les vols où aucun incident n'est relevé n'apportant aucun information\n", + "sur l'influence de la température ou de la pression sur les\n", + "dysfonctionnements, nous nous concentrons sur les expériences où au\n", + "moins un joint a été défectueux." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\n", + "\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\t\n", + "\n", + "
A data.frame: 7 × 5
DateCountTemperaturePressureMalfunction
<fct><int><int><int><int>
211/12/81670 501
92/03/84 6572001
104/06/84 6632001
118/30/84 6702001
141/24/85 6532002
2110/30/856752002
231/12/86 6582001
\n" + ], + "text/latex": [ + "A data.frame: 7 × 5\n", + "\\begin{tabular}{r|lllll}\n", + " & Date & Count & Temperature & Pressure & Malfunction\\\\\n", + " & & & & & \\\\\n", + "\\hline\n", + "\t2 & 11/12/81 & 6 & 70 & 50 & 1\\\\\n", + "\t9 & 2/03/84 & 6 & 57 & 200 & 1\\\\\n", + "\t10 & 4/06/84 & 6 & 63 & 200 & 1\\\\\n", + "\t11 & 8/30/84 & 6 & 70 & 200 & 1\\\\\n", + "\t14 & 1/24/85 & 6 & 53 & 200 & 2\\\\\n", + "\t21 & 10/30/85 & 6 & 75 & 200 & 2\\\\\n", + "\t23 & 1/12/86 & 6 & 58 & 200 & 1\\\\\n", + "\\end{tabular}\n" + ], + "text/markdown": [ + "\n", + "A data.frame: 7 × 5\n", + "\n", + "| | Date <fct> | Count <int> | Temperature <int> | Pressure <int> | Malfunction <int> |\n", + "|---|---|---|---|---|---|\n", + "| 2 | 11/12/81 | 6 | 70 | 50 | 1 |\n", + "| 9 | 2/03/84 | 6 | 57 | 200 | 1 |\n", + "| 10 | 4/06/84 | 6 | 63 | 200 | 1 |\n", + "| 11 | 8/30/84 | 6 | 70 | 200 | 1 |\n", + "| 14 | 1/24/85 | 6 | 53 | 200 | 2 |\n", + "| 21 | 10/30/85 | 6 | 75 | 200 | 2 |\n", + "| 23 | 1/12/86 | 6 | 58 | 200 | 1 |\n", + "\n" + ], + "text/plain": [ + " Date Count Temperature Pressure Malfunction\n", + "2 11/12/81 6 70 50 1 \n", + "9 2/03/84 6 57 200 1 \n", + "10 4/06/84 6 63 200 1 \n", + "11 8/30/84 6 70 200 1 \n", + "14 1/24/85 6 53 200 2 \n", + "21 10/30/85 6 75 200 2 \n", + "23 1/12/86 6 58 200 1 " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "data = data[data$Malfunction>0,]\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Très bien, nous avons une variabilité de température importante mais\n", + "la pression est quasiment toujours égale à 200, ce qui devrait\n", + "simplifier l'analyse.\n", + "\n", + "Comment la fréquence d'échecs varie-t-elle avec la température ?" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAMAAADKOT/pAAAC+lBMVEUAAAABAQECAgIDAwME\nBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUW\nFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJycp\nKSkqKiorKystLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6Ojo7Ozs8\nPDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tMTExNTU1O\nTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1eXl5fX19g\nYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29wcHBxcXFy\ncnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGCgoKDg4OE\nhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OUlJSVlZWW\nlpaXl5eYmJiZmZmampqbm5ucnJydnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWmpqanp6eo\nqKipqamqqqqrq6usrKytra2urq6vr6+wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4uLi5ubm6\nurq7u7u8vLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXGxsbHx8fIyMjJycnKysrLy8vM\nzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc3Nzd3d3e\n3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u7u7v7+/w\n8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7///9puzMQAAAA\nCXBIWXMAABJ0AAASdAHeZh94AAAgAElEQVR4nO3dC3SU5b3v8WdIhksgICi3cAlotbUtETxc\nWvBQo2WrWPTUgtgqEVqsgMZdVKBFQLywd2i1anW70b29HbcepFGPp8IRkSpFYQOixeIlokes\n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\nRTZ+AAAAAElFTkSuQmCC", + "text/plain": [ + "plot without title" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plot(data=data, Malfunction/Count ~ Temperature, ylim=c(0,1))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "À première vue, ce n'est pas flagrant mais bon, essayons quand même\n", + "d'estimer l'impact de la température $t$ sur la probabilité de\n", + "dysfonctionnements d'un joint." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Estimation de l'influence de la température\n", + "\n", + "Supposons que chacun des 6 joints toriques est endommagé avec la même\n", + "probabilité et indépendamment des autres et que cette probabilité ne\n", + "dépend que de la température. Si on note $p(t)$ cette probabilité, le\n", + "nombre de joints $D$ dysfonctionnant lorsque l'on effectue le vol à\n", + "température $t$ suit une loi binomiale de paramètre $n=6$ et\n", + "$p=p(t)$. Pour relier $p(t)$ à $t$, on va donc effectuer une\n", + "régression logistique." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "\n", + "Call:\n", + "glm(formula = Malfunction/Count ~ Temperature, family = binomial(link = \"logit\"), \n", + " data = data, weights = Count)\n", + "\n", + "Deviance Residuals: \n", + " 2 9 10 11 14 21 23 \n", + "-0.3015 -0.2836 -0.2919 -0.3015 0.6891 0.6560 -0.2850 \n", + "\n", + "Coefficients:\n", + " Estimate Std. Error z value Pr(>|z|)\n", + "(Intercept) -1.389528 3.195752 -0.435 0.664\n", + "Temperature 0.001416 0.049773 0.028 0.977\n", + "\n", + "(Dispersion parameter for binomial family taken to be 1)\n", + "\n", + " Null deviance: 1.3347 on 6 degrees of freedom\n", + "Residual deviance: 1.3339 on 5 degrees of freedom\n", + "AIC: 18.894\n", + "\n", + "Number of Fisher Scoring iterations: 4\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "logistic_reg = glm(data=data, Malfunction/Count ~ Temperature, weights=Count, \n", + " family=binomial(link='logit'))\n", + "summary(logistic_reg)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "L'estimateur le plus probable du paramètre de température est 0.001416\n", + "et l'erreur standard de cet estimateur est de 0.049, autrement dit on\n", + "ne peut pas distinguer d'impact particulier et il faut prendre nos\n", + "estimations avec des pincettes." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Estimation de la probabilité de dysfonctionnant des joints toriques\n", + "\n", + "La température prévue le jour du décollage est de 31°F. Essayons\n", + "d'estimer la probabilité de dysfonctionnement des joints toriques à\n", + "cette température à partir du modèle que nous venons de construire :" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAMAAADKOT/pAAAC/VBMVEUAAAABAQECAgIDAwME\nBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUW\nFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJyco\nKCgpKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6\nOjo7Ozs8PDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tM\nTExNTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1e\nXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29w\ncHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGC\ngoKDg4OEhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OU\nlJSVlZWWlpaXl5eYmJiZmZmampqbm5udnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWmpqan\np6eoqKipqamqqqqrq6usrKytra2urq6vr6+wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4uLi5\nubm6urq7u7u8vLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXGxsbHx8fIyMjJycnKysrL\ny8vMzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc3Nzd\n3d3e3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u7u7v\n7+/w8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7///8D/m+7\nAAAACXBIWXMAABJ0AAASdAHeZh94AAAgAElEQVR4nO3de3yU1YGH8ROSEAh35CYKAV231q5C\nsVWsgLihXlop1guI1YKw4gpqWrHNqhQUpVrY4loX14JXtGsthrq21ZoiXhYvhYiKghDRCoqC\nJVHkFgx5PzvnHUh2WXhTM7/3vHPC8/1j5m1yZs6Z6XnC3GJMACBjJukFAM0BIQEChAQIEBIg\nQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBI\ngAAhAQKEBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiBASIAA\nIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQIEBIgQEiAACEB\nAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKE\nBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQI\nEBIgQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiDgIKRXlwFeefWL7/L4Q1pqAM8s/cLbPP6Q\nlpia2OcAhGrMki98GUIC9kFIgAAhAQKEBAgQEiBASIAAIQECrkOqW1teVrZoXSOjCAmecRtS\n1eRu6XeBe0/fHjWOkOAZpyFt6GuOGjtt5swpo3uaflURAwkJnnEa0vj8R/Yc1c7JKYkYSEjw\njNOQeoxrOB7VK2IgIcEzTkPKn9FwfEPLiIGEBM84DaloZMPxiD4RAwkJnnEaUknOrJ3po61T\nTWnEQEKCZ5yGVD3AtCsee8WkMUMLzeDPIgYSEjzj9n2kmtn9c+3bSPkD59ZGjSMkeMb5R4R2\nrKmoqGwsE0KCZ/isHSBASIBAUiG9XVy8z1d2Ly6v92+EBL8kFdJys++1vNO1U71Cs1UwB+BM\nUiHtWLEi4rt3magXx4Gsk53PkQgJnkkspL9WRnyTkOCZxEIqjboWQoJnCAkQICRAwGlIx/8v\nPQgJzYjTkFq0KKiXS0hoRpyGVNqu4aU6HtqhOXEa0q6vfm3X3mNCQnPi9sWGla2v2XtISGhO\nHL9q9+nmvUfP3BIxjJDgGT4iBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAh\nAQKEBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQEC\nhAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQE\nCBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKEBAgQ\nEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQIEBIg\nQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQECiYS0641lOyMHEBI84zakRUP7nPlS\n8GRPY9rPiRpHSPCM05BeyDPtW7R5oX2v74/sZJ6IGEhI8IzTkIb3eC3YdGrvftuDoKrPGRED\nCQmecRrSITelTpaa++zxzZ0jBhISPOM0pLwHUicbzO/t8d15EQMJCZ5xGlL3aamTZ8zt9vi6\n7hEDCQmecRrSBZ2frnn92C/3fj8IVnY6L2IgIcEzTkNa1c4Y03llUeGpJ+XlvhwxkJDgGbfv\nI60YfeLYt4IVJ+SYI34bNY6Q4JlkPiL02abo7xMSPMNn7QABQgIEkgrp7eLifb5SNXFCvcGE\nBL8kFdJys++1EBI8llRIO1asiPguD+3gGZ4jAQKuQ6pbW15WtmhdI6MICZ5xG1LV5G4m1Hv6\n9qhxhATPOA1pQ19z1NhpM2dOGd3T9KuKGEhI8IzTkMbnP7LnqHZOTknEQEKCZ5yG1GNcw/Go\nXhEDCQmecRpS/oyG4xtaRgwkJHjGaUhFIxuOR/SJGEhI8IzTkEpyZu3579ltnWpKIwYSEjzj\nNKTqAaZd8dgrJo0ZWmgGR6VCSPCM2/eRamb3z7VvI+UPnFsbNY6Q4BnnHxHasaaiorKmkUGE\nBM/wWTtAgJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAAAUICBAgJ\nECAkQICQAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAAAUICBAgJECAkQICQAAFCAgQICRAg\nJECAkAABQgIECAkQICRAgJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAABQgIECAkQICRA\ngJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAAAUICBAgJECAkQICQ\nAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAAB\nQgIECAkQICRAgJAAAUICBJIIqfb1JeuiRxASPOM2pCWTUifzuxtj+j0bNY6Q4BmnIS1u2bYu\n+I1pe/7Eb7YoWBYxkJDgGachDe1WGQR9izakDl9qPTxiICHBM05Dan9NEHxibg+PL+0YMZCQ\n4BmnIbX5SRDszHk0PL6xVcRAQoJnnIZ08lHbguAb19jDnf36RQwkJHjGaUiPmwF//Lzi0Pu3\n7XrpH80vIwYSEjzj9uXveW1M62OKTG6uybm6LmIcIcEzjt+Q/WjW6UXtCg45/qqKyGGEBM/w\nESFAgJAAAUICBJIK6e3i4n2+8k7XTvUKzRbBHIAzSYW03Ox7LbsXl9cr4V8k+CWpkHasWBHx\nXR7awTM8RwIEXIdUt7a8rGxRI7/XR0jwjduQqiZ3M6He07dHjSMkeMZpSBv6mqPGTps5c8ro\nnqZfVcRAQoJnnIY0Pv+RPUe1c3JKIgYSEjzjNKQe4xqOR/WKGEhI8IzTkPJnNBzf0DJiICHB\nM05DKhrZcDyiT8RAQoJnnIZUkjNrZ/po61RTGjGQkOAZpyFVDzDtisdeMWnM0EIzOCoVQoJn\n3L6PVDO7f659Gyl/4NzaqHGEBM84/4jQjjUVFZU1jQwiJHiGz9oBAoQECBASIEBIgAAhAQKE\nBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQI\nEBIgQEiAACEBAoQECGQa0pC51brF1CMkeCbTkHJMwTlljf2nvL8wQoJnMg1p/W0n5ZhOE56r\n0y0pICR4R/AcKWyp6LqVohVZhATPaF5sWH/bkDzlSxCEBM9oQqp64MLOhISDmCCkjb88Lc90\nuOQp0YosQoJnMg3p/TuG5prW55Xt1C0pICR4J/OXv/POuH+Lbj1phATPZBrSoDmbdIupR0jw\nDB8RAgQyDql2yYL/TJOtiZDgnUxDWtbH7KVbFCHBN5mGNLBjyZ3z0nSLIiT4JtOQ2izUraUB\nIcEzmYbUvUK3lgaEBM9kGtKV1+rW0oCQ4JlMQ9o2/PwHn34+pFsUIcE3mYb0ci9etQMyDumE\nViOvn5amWxQhwTeZhtRqvm4tDQgJnsk0pEOW69bSgJDgmUxD+qebdGtpQEjwTKYhVQ+bWL6y\nMqRbFCHBN5mGZAyv2gEZhzR6zPi9dIsiJPiG30cCBDIN6bE3dGtpQEjwTMbvI92qW0sDQoJn\nMg1p2Jm7dYupR0jwTKYhfTT6jF8t4+VvHOx4+RsQyDSkUReP4+VvgJe/AQFCAgQICRAgJECA\nkAABQgIECAkQICRAgJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAA\nAUICBAgJECAkQICQAAFCAgQICRBIJqRPS1dFfp+Q4JlkQlpvHo/8PiHBM05Dqv+7zaPNaZF/\nvYKQ4BmnIZn/I2IgIcEzTkP6YW7/J6utN83D1dURAwkJnnH7HGlp/5zLPwl4joRmx/GLDZ/f\n2rrnAkJCs+P8Vbu3i83wdYSEZiaBl7/v7dx2GiGheUnifaSNFxhCQvOSzBuyf5i8MvL7hATP\n8Fk7QICQAIGkQnq7uHifr+xeXF6vhJDgl6RCWv7/PiL0TtdO9QrNFsEcgDNJhbRjxYqI7/LQ\nDp7hORIg4DqkurXlZWWL1jUyipDgGbchVU3ulv4Vit7Tt0eNIyR4xmlIG/qao8ZOmzlzyuie\npl9VxEBCgmfc/oZs/iN7jmrn5JREDCQkeMZpSD3GNRyP6hUxkJDgGach5c9oOL6hZcRAQoJn\nnIZUNLLheESfiIGEBM84DakkZ9bO9NHWqaY0YiAhwTNOQ6oeYNoVj71i0pihhWZwVCqEBM+4\nfR+pZnb/XPs2Uv7AubVR4wgJnnH+EaEdayoqKmsaGURI8AyftQMECAkQICRAgJAAAUICBAgJ\nECAkQICQAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAAAUICBAgJECAkQICQst+SX1x/31+S\nXoQT2xbefPPCbUmvokkIKdt9cErucd/slXdtXdILid+T3dsPGtS++5NJr6MpCCnL1Rx30jup\ns//qMDXplcRuacGPtwfB9h8XLEt6JU1ASFluXpfN4flvCjYlvJLYnT4qfT7y9GTX0SSElOXO\nuSx9vvuQh5NdSOx25pWnD57K35nsSpqCkLLcyXv/gke/2xNdR/w+MKvTB6vNB8mupCkIKcsN\nvzJ9Xtf9wWQXErvtLZ5LHzzbIvLvomYnQspytx+Wfjm4PPf9hFcSu0ET0ucTBiW7jiYhpCy3\ntWh4depsWc9JSa8kdn/K+0Vd6p/e2/MWJb2SJiCkbPfW0R3OvOSkFhc39ocHmoH7C48cNeqI\nwgeSXkdTEFLWq/n1jy+e8VLSq3Diwzsuu+yOD5NeRZMQEiBASIAAIQEChAQIEBIgQEiAACEB\nAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKE\nBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQI\nEBIgQEiAACEBAoQECBASIEBIgAAhAQKEBAgQEiBASIAAIQEChAQIEBIgQEiAACEBAoQECBAS\nIJBYSFXvRnyTkOAZtyG99q2iQXNqw8PSqGshJCTk86qUj9emVC5LWVqe8tQj1i+t2a8e4HJO\nQ/rvAlOYb06psseEBJFddu9vtnt/7St28z9tN/9jdu/Pt3v/jltTbipNmTwh5dLzrdOHpZx4\nfMqXjkjp3imlwOxfvv1mVzvsiOOPv+sAi3Aa0rfzF9btnJ3/9a0BIR3cauze32i3/hq79Zct\nsnv/Ubv377F7/xd270+3e/9qu/cnjLR7/zS790+we/8Yu6cPs9u7zQH2vulov3u4HfcP9hKD\n7GXPstdykb2+y+xVl9pJbg3/nfm1nfmPdg3/bVfzhl3Y+3aJW//2W+QypF4X2dNFLb9VS0i+\nqbP7qupdu8WW2832rN12v7Mb8FfhXgx35XV2f15pt+oYu2m/a7fvqXYjHx/+PO8a9XM/x36z\nUzjuOHuJwfbCw+3VXGiv8J/tVf9LOMuddr4H7dS/q9/7r9uFvWuXWJ3M/eM0pPyp4dkD5ipC\nil+t3VZ/DR/xvGr32jP1W/+hhq1/bf3WH2f37LnD6n/shw95etrN3fZAP/bb2u/2tOO+ZC9x\nQnjhc+31jLPXeJW97ql2ltnhhOEzjafsKpbY9bxpV/aBXeQnSd9VAk5DOvw76fNrzUxC2o9q\nu6vW2/31ht1pL9s9V77Abr+76x/w/DR8VBI+4LnQbtlv2c17SvhT/0i7pQ+xm7vV37j1vx5u\n/fPs9Yyx13ilve7rGh7y/Kr+x/6zdkHL63/sV9UlfV9lG6chXZVzxy57XjfG/ODK5hBSuKfe\ns9trhd1oLzXs/HvtPry9YedPtPv0YrtjR4SbN9z5R9c/1j/gD/0W9rudwwc8/exFvmEvfGb4\nfDmM6Uf2ym+08/yrnXFe+FP/SbuM5//vIx62frychvTX3mZYeFB3VWqPRAyMK6St9c9x11bY\nffbcPg/0Z9kdOc3uzR+F23S03bDftnt3sN3FA8IN3S3yWW5u+FC/jx3Y317mZHvp086vf7xz\ntb32nzT80G94rL84fNpdaRf3sV3n9ljuAsTD7ftIH0/8wZ6jR49sWkgby8ufCH/qzrO78Of7\n2/jfsVu3+Pj6x/mHh1v7QBvftKl/tHNUeJlT61/gGRVe5zX26m/a55H+7+3Ofybc+WGWf7U7\nf0eT7xd4z7ePCE0zhQ2v6g/Y38afXP8U92fhxn/Ibvzfhg+6wo2/ym78dTzagZRvIQFZiZAA\ngaRCeru4eJ+vVIUvbKUNJiT4JamQlv+/V+0ICR5LKqQdK1ZEfJeHdvAMz5EAAdch1a0tLytb\ntK6RUYQEz7gNqWpyt/S7oL2nR75vT0jwjNOQNvQ1R42dNnPmlNE9Tb+qiIGEBM84DWl8/iN7\njmrn5JREDCQkeMZpSD3GNRyP6hUxkJDgGbe/2Dej4fiGlhEDCQmecRpS0ciG4xF9IgYSEjzj\nNKSSnFk700dbp5rSiIGEBM84Dal6gGlXPPaKSWOGFprBUakQEjzj9n2kmtn9c+3bSPkD59ZG\njSMkeMb5R4R2rKmoqKxpZBAhwTN81q4Z2T1vcOfOg+ftTh1+fHW/gj7nvtzky2dq9fGtTd5h\n9wiuyROE1HzsOrtD6aOPlrY/+/Og8rCvzP7Dvefn3d3Ey2fqT7kFI6aPP9xckvE1+YKQmo+f\ndVltz1Z3mVl3wpnhy6N3tVzdpMtnupLdbbp+as+/Z/6Y6VX5gpCaj6LZ6fOf93m5xXvpw5Ou\nadLlM13JPebF9EG7r2d6Vb4gpGajyuz5kyPLzW1/v+dr1w9r0uWjPlD8t7ho78dWTu6c4TV5\ng5CajY1mZfrgTXPLV/Z87cZTmnT5jRkuZWTBnoNTO2Z4Td4gpGZjd+cH0wfzO/+x4NP04Xcu\nbdLlM33d7lbzfvqgx9EZXpM3CKn5uPLLW+zZli9fWdP7h+FXns99tkmXz3Qln+UNCM/nmF9k\nelW+IKTmY/PRxy784IOyY4/eHJS3vPjF6lX/2m5SEy+fqZ+ZI+b95ffDc47N+Jp8QUjNyObx\nrY1pPd528NLJLYw5/N+/2H+U+X9dPlN3t7d/UGCk4r1dPxBSs1K7Zs3eDzFuffWjjC6fqY2P\nRP0H15odQgIECAkQICRAgJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAABQgIECAkQICRA\ngJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAAAUICBAgJECAkQICQ\nAAFCAgQICRAgJECAkAABQgIECAkQICRAgJAAAUICBAgJECAkQICQAAFCAgQICRAgJECAkAAB\n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", + "text/plain": [ + "plot without title" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "tempv = seq(from=30, to=90, by = .5)\n", + "rmv <- predict(logistic_reg,list(Temperature=tempv),type=\"response\")\n", + "plot(tempv,rmv,type=\"l\",ylim=c(0,1))\n", + "points(data=data, Malfunction/Count ~ Temperature)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "hideCode": false, + "hidePrompt": false, + "scrolled": true + }, + "source": [ + "Comme on pouvait s'attendre au vu des données initiales, la\n", + "température n'a pas d'impact notable sur la probabilité d'échec des\n", + "joints toriques. Elle sera d'environ 0.2, comme dans les essais\n", + "précédents où nous il y a eu défaillance d'au moins un joint. Revenons\n", + "à l'ensemble des données initiales pour estimer la probabilité de\n", + "défaillance d'un joint :" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "0.0652173913043478" + ], + "text/latex": [ + "0.0652173913043478" + ], + "text/markdown": [ + "0.0652173913043478" + ], + "text/plain": [ + "[1] 0.06521739" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "data_full = read.csv(\"shuttle.csv\",header=T)\n", + "sum(data_full$Malfunction)/sum(data_full$Count)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Cette probabilité est donc d'environ $p=0.065$, sachant qu'il existe\n", + "un joint primaire un joint secondaire sur chacune des trois parties du\n", + "lançeur, la probabilité de défaillance des deux joints d'un lançeur\n", + "est de $p^2 \\approx 0.00425$. La probabilité de défaillance d'un des\n", + "lançeur est donc de $1-(1-p^2)^3 \\approx 1.2%$. Ça serait vraiment\n", + "pas de chance... Tout est sous contrôle, le décollage peut donc avoir\n", + "lieu demain comme prévu.\n", + "\n", + "Seulement, le lendemain, la navette Challenger explosera et emportera\n", + "avec elle ses sept membres d'équipages. L'opinion publique est\n", + "fortement touchée et lors de l'enquête qui suivra, la fiabilité des\n", + "joints toriques sera directement mise en cause. Au delà des problèmes\n", + "de communication interne à la NASA qui sont pour beaucoup dans ce\n", + "fiasco, l'analyse précédente comporte (au moins) un petit\n", + "problème... Saurez-vous le trouver ? Vous êtes libre de modifier cette\n", + "analyse et de regarder ce jeu de données sous tous les angles afin\n", + "d'expliquer ce qui ne va pas." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Hide code", + "kernelspec": { + "display_name": "R", + "language": "R", + "name": "ir" + }, + "language_info": { + "codemirror_mode": "r", + "file_extension": ".r", + "mimetype": "text/x-r-source", + "name": "R", + "pygments_lexer": "r", + "version": "3.5.1" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/module2/exo5/exo5_R_fr.org b/module2/exo5/exo5_R_fr.org new file mode 100644 index 0000000000000000000000000000000000000000..336a9f760971fcd52c97d0e11da9ea164474a9bb --- /dev/null +++ b/module2/exo5/exo5_R_fr.org @@ -0,0 +1,207 @@ +#+TITLE: Analyse du risque de défaillance des joints toriques de la navette Challenger +#+AUTHOR: Arnaud Legrand +#+LANGUAGE: fr + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +#+LATEX_HEADER: \usepackage[utf8]{inputenc} +#+LATEX_HEADER: \usepackage[T1]{fontenc} +#+LATEX_HEADER: \usepackage[a4paper,margin=.8in]{geometry} +#+LATEX_HEADER: \usepackage[french]{babel} + +# #+PROPERTY: header-args :session :exports both + +Le 27 Janvier 1986, veille du décollage de la navette /Challenger/, eu +lieu une télé-conférence de trois heures entre les ingénieurs de la +Morton Thiokol (constructeur d'un des moteurs) et de la NASA. La +discussion portait principalement sur les conséquences de la +température prévue au moment du décollage de 31°F (juste en dessous de +0°C) sur le succès du vol et en particulier sur la performance des +joints toriques utilisés dans les moteurs. En effet, aucun test +n'avait été effectué à cette température. + +L'étude qui suit reprend donc une partie des analyses effectuées cette +nuit là et dont l'objectif était d'évaluer l'influence potentielle de +la température et de la pression à laquelle sont soumis les joints +toriques sur leur probabilité de dysfonctionnement. Pour cela, nous +disposons des résultats des expériences réalisées par les ingénieurs +de la NASA durant les 6 années précédant le lancement de la navette +Challenger. + +* Chargement des données +Nous commençons donc par charger ces données: +#+begin_src R :results output :session *R* :exports both +data = read.csv("shuttle.csv",header=T) +data +#+end_src + +#+RESULTS: +#+begin_example + Date Count Temperature Pressure Malfunction +1 4/12/81 6 66 50 0 +2 11/12/81 6 70 50 1 +3 3/22/82 6 69 50 0 +4 11/11/82 6 68 50 0 +5 4/04/83 6 67 50 0 +6 6/18/82 6 72 50 0 +7 8/30/83 6 73 100 0 +8 11/28/83 6 70 100 0 +9 2/03/84 6 57 200 1 +10 4/06/84 6 63 200 1 +11 8/30/84 6 70 200 1 +12 10/05/84 6 78 200 0 +13 11/08/84 6 67 200 0 +14 1/24/85 6 53 200 2 +15 4/12/85 6 67 200 0 +16 4/29/85 6 75 200 0 +17 6/17/85 6 70 200 0 +18 7/29/85 6 81 200 0 +19 8/27/85 6 76 200 0 +20 10/03/85 6 79 200 0 +21 10/30/85 6 75 200 2 +22 11/26/85 6 76 200 0 +23 1/12/86 6 58 200 1 +#+end_example + +Le jeu de données nous indique la date de l'essai, le nombre de joints +toriques mesurés (il y en a 6 sur le lançeur principal), la +température (en Fahrenheit) et la pression (en psi), et enfin le +nombre de dysfonctionnements relevés. + +* Inspection graphique des données +Les vols où aucun incident n'est relevé n'apportant aucune information +sur l'influence de la température ou de la pression sur les +dysfonctionnements, nous nous concentrons sur les expériences où au +moins un joint a été défectueux. + +#+begin_src R :results output :session *R* :exports both +data = data[data$Malfunction>0,] +data +#+end_src + +#+RESULTS: +: Date Count Temperature Pressure Malfunction +: 2 11/12/81 6 70 50 1 +: 9 2/03/84 6 57 200 1 +: 10 4/06/84 6 63 200 1 +: 11 8/30/84 6 70 200 1 +: 14 1/24/85 6 53 200 2 +: 21 10/30/85 6 75 200 2 +: 23 1/12/86 6 58 200 1 + +Très bien, nous avons une variabilité de température importante mais +la pression est quasiment toujours égale à 200, ce qui devrait +simplifier l'analyse. + +Comment la fréquence d'échecs varie-t-elle avec la température ? +#+begin_src R :results output graphics :file "freq_temp.png" :exports both :width 600 :height 400 :session *R* +plot(data=data, Malfunction/Count ~ Temperature, ylim=c(0,1)) +#+end_src + +#+RESULTS: +[[file:freq_temp.png]] + +À première vue, ce n'est pas flagrant mais bon, essayons quand même +d'estimer l'impact de la température $t$ sur la probabilité de +dysfonctionnements d'un joint. + +* Estimation de l'influence de la température + +Supposons que chacun des 6 joints toriques est endommagé avec la même +probabilité et indépendamment des autres et que cette probabilité ne +dépend que de la température. Si on note $p(t)$ cette probabilité, le +nombre de joints $D$ dysfonctionnant lorsque l'on effectue le vol à +température $t$ suit une loi binomiale de paramètre $n=6$ et +$p=p(t)$. Pour relier $p(t)$ à $t$, on va donc effectuer une +régression logistique. + +#+begin_src R :results output :session *R* :exports both +logistic_reg = glm(data=data, Malfunction/Count ~ Temperature, weights=Count, + family=binomial(link='logit')) +summary(logistic_reg) +#+end_src + +#+RESULTS: +#+begin_example + +Call: +glm(formula = Malfunction/Count ~ Temperature, family = binomial(link = "logit"), + data = data, weights = Count) + +Deviance Residuals: + 2 9 10 11 14 21 23 +-0.3015 -0.2836 -0.2919 -0.3015 0.6891 0.6560 -0.2850 + +Coefficients: + Estimate Std. Error z value Pr(>|z|) +(Intercept) -1.389528 3.195752 -0.435 0.664 +Temperature 0.001416 0.049773 0.028 0.977 + +(Dispersion parameter for binomial family taken to be 1) + + Null deviance: 1.3347 on 6 degrees of freedom +Residual deviance: 1.3339 on 5 degrees of freedom +AIC: 18.894 + +Number of Fisher Scoring iterations: 4 +#+end_example + +L'estimateur le plus probable du paramètre de température est 0.001416 +et l'erreur standard de cet estimateur est de 0.049, autrement dit on +ne peut pas distinguer d'impact particulier et il faut prendre nos +estimations avec des pincettes. + +* Estimation de la probabilité de dysfonctionnant des joints toriques +La température prévue le jour du décollage est de 31°F. Essayons +d'estimer la probabilité de dysfonctionnement des joints toriques à +cette température à partir du modèle que nous venons de construire: + +#+begin_src R :results output graphics :file "proba_estimate.png" :exports both :width 600 :height 400 :session *R* +# shuttle=shuttle[shuttle$r!=0,] +tempv = seq(from=30, to=90, by = .5) +rmv <- predict(logistic_reg,list(Temperature=tempv),type="response") +plot(tempv,rmv,type="l",ylim=c(0,1)) +points(data=data, Malfunction/Count ~ Temperature) +#+end_src + +#+RESULTS: +[[file:proba_estimate.png]] + +Comme on pouvait s'attendre au vu des données initiales, la +température n'a pas d'impact notable sur la probabilité d'échec des +joints toriques. Elle sera d'environ 0.2, comme dans les essais +précédents où nous il y a eu défaillance d'au moins un joint. Revenons +à l'ensemble des données initiales pour estimer la probabilité de +défaillance d'un joint: + +#+begin_src R :results output :session *R* :exports both +data_full = read.csv("shuttle.csv",header=T) +sum(data_full$Malfunction)/sum(data_full$Count) +#+end_src + +#+RESULTS: +: [1] 0.06521739 + +Cette probabilité est donc d'environ $p=0.065$, sachant qu'il existe +un joint primaire un joint secondaire sur chacune des trois parties du +lançeur, la probabilité de défaillance des deux joints d'un lançeur +est de $p^2 \approx 0.00425$. La probabilité de défaillance d'un des +lançeur est donc de $1-(1-p^2)^3 \approx 1.2%$. Ça serait vraiment +pas de chance... Tout est sous contrôle, le décollage peut donc avoir +lieu demain comme prévu. + +Seulement, le lendemain, la navette Challenger explosera et emportera +avec elle ses sept membres d'équipages. L'opinion publique est +fortement touchée et lors de l'enquête qui suivra, la fiabilité des +joints toriques sera directement mise en cause. Au delà des problèmes +de communication interne à la NASA qui sont pour beaucoup dans ce +fiasco, l'analyse précédente comporte (au moins) un petit +problème... Saurez-vous le trouver ? Vous êtes libre de modifier cette +analyse et de regarder ce jeu de données sous tous les angles afin +d'expliquer ce qui ne va pas. + diff --git a/module2/exo5/exo5_en.Rmd b/module2/exo5/exo5_en.Rmd new file mode 100644 index 0000000000000000000000000000000000000000..f9003e3a9de8b87c66b620b3fb5157fc127a4e17 --- /dev/null +++ b/module2/exo5/exo5_en.Rmd @@ -0,0 +1,119 @@ +--- +title: "Analysis of the risk of failure of the O-rings on the Challenger shuttle" +author: "Arnaud Legrand" +date: "28 juin 2018" +output: html_document +--- + +On January 27, 1986, the day before the takeoff of the shuttle _Challenger_, had +a three-hour teleconference was held between +Morton Thiokol (the manufacturer of one of the engines) and NASA. The +discussion focused on the consequences of the +temperature at take-off of 31°F (just below +0°C) for the success of the flight and in particular on the performance of the +O-rings used in the engines. Indeed, no test +had been performed at this temperature. + +The following study takes up some of the analyses carried out that +night with the objective of assessing the potential influence of +the temperature and pressure to which the O-rings are subjected +on their probability of malfunction. Our starting point is +the results of the experiments carried out by NASA engineers +during the six years preceding the launch of the shuttle +Challenger. + +# Loading the data +We start by loading this data: + +```{r} +data = read.csv("shuttle.csv",header=T) +data +``` + +The data set shows us the date of each test, the number of O-rings +(there are 6 on the main launcher), the +temperature (in Fahrenheit) and pressure (in psi), and finally the +number of identified malfunctions. + +# Graphical inspection +Flights without incidents do not provide any information +on the influence of temperature or pressure on malfunction. +We thus focus on the experiments in which at least one O-ring was defective. + +```{r} +data = data[data$Malfunction>0,] +data +``` + +We have a high temperature variability but +the pressure is almost always 200, which should +simplify the analysis. + +How does the frequency of failure vary with temperature? +```{r} +plot(data=data, Malfunction/Count ~ Temperature, ylim=c(0,1)) +``` + +At first glance, the dependence does not look very important, but let's try to +estimate the impact of temperature $t$ on the probability of O-ring malfunction. + +# Estimation of the temperature influence + +Suppose that each of the six O-rings is damaged with the same +probability and independently of the others and that this probability +depends only on the temperature. If $p(t)$ is this probability, the +number $D$ of malfunctioning O-rings during a flight at +temperature $t$ follows a binomial law with parameters $n=6$ and +$p=p(t)$. To link $p(t)$ to $t$, we will therefore perform a +logistic regression. + +```{r} +logistic_reg = glm(data=data, Malfunction/Count ~ Temperature, weights=Count, + family=binomial(link='logit')) +summary(logistic_reg) +``` + +The most likely estimator of the temperature parameter is 0.001416 +and the standard error of this estimator is 0.049, in other words we +cannot distinguish any particular impact and we must take our +estimates with caution. + +# Estimation of the probability of O-ring malfunction +The expected temperature on the take-off day is 31°F. Let's try to +estimate the probability of O-ring malfunction at +this temperature from the model we just built: + +```{r} +# shuttle=shuttle[shuttle$r!=0,] +tempv = seq(from=30, to=90, by = .5) +rmv <- predict(logistic_reg,list(Temperature=tempv),type="response") +plot(tempv,rmv,type="l",ylim=c(0,1)) +points(data=data, Malfunction/Count ~ Temperature) +``` + +As expected from the initial data, the +temperature has no significant impact on the probability of failure of the +O-rings. It will be about 0.2, as in the tests +where we had a failure of at least one joint. Let's get back to the initial dataset to estimate the probability of failure: + +```{r} +data_full = read.csv("shuttle.csv",header=T) +sum(data_full$Malfunction)/sum(data_full$Count) +``` + +This probability is thus about $p=0.065$. Knowing that there is +a primary and a secondary O-ring on each of the three parts of the +launcher, the probability of failure of both joints of a launcher +is $p^2 \approx 0.00425$. The probability of failure of any one of the +launchers is $1-(1-p^2)^3 \approx 1.2%$. That would really be +bad luck.... Everything is under control, so the takeoff can happen +tomorrow as planned. + +But the next day, the Challenger shuttle exploded and took away +with her the seven crew members. The public was shocked and in +the subsequent investigation, the reliability of the +O-rings was questioned. Beyond the internal communication problems +of NASA, which have a lot to do with this fiasco, the previous analysis +includes (at least) a small problem.... Can you find it? +You are free to modify this analysis and to look at this dataset +from all angles in order to to explain what's wrong. diff --git a/module2/exo5/exo5_en.ipynb b/module2/exo5/exo5_en.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..6a0919d7ba4c9594341883f6d283db9ea050de72 --- /dev/null +++ b/module2/exo5/exo5_en.ipynb @@ -0,0 +1,714 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Analysis of the risk of failure of the O-rings on the Challenger shuttle" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "On January 27, 1986, the day before the takeoff of the shuttle _Challenger_, had\n", + "a three-hour teleconference was held between \n", + "Morton Thiokol (the manufacturer of one of the engines) and NASA. The\n", + "discussion focused on the consequences of the\n", + "temperature at take-off of 31°F (just below\n", + "0°C) for the success of the flight and in particular on the performance of the\n", + "O-rings used in the engines. Indeed, no test\n", + "had been performed at this temperature.\n", + "\n", + "The following study takes up some of the analyses carried out that\n", + "night with the objective of assessing the potential influence of\n", + "the temperature and pressure to which the O-rings are subjected\n", + "on their probability of malfunction. Our starting point is \n", + "the results of the experiments carried out by NASA engineers\n", + "during the six years preceding the launch of the shuttle\n", + "Challenger." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Loading the data\n", + "We start by loading this data:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DateCountTemperaturePressureMalfunction
04/12/81666500
111/12/81670501
23/22/82669500
311/11/82668500
44/04/83667500
56/18/82672500
68/30/836731000
711/28/836701000
82/03/846572001
94/06/846632001
108/30/846702001
1110/05/846782000
1211/08/846672000
131/24/856532002
144/12/856672000
154/29/856752000
166/17/856702000
177/29/856812000
188/27/856762000
1910/03/856792000
2010/30/856752002
2111/26/856762000
221/12/866582001
\n", + "
" + ], + "text/plain": [ + " Date Count Temperature Pressure Malfunction\n", + "0 4/12/81 6 66 50 0\n", + "1 11/12/81 6 70 50 1\n", + "2 3/22/82 6 69 50 0\n", + "3 11/11/82 6 68 50 0\n", + "4 4/04/83 6 67 50 0\n", + "5 6/18/82 6 72 50 0\n", + "6 8/30/83 6 73 100 0\n", + "7 11/28/83 6 70 100 0\n", + "8 2/03/84 6 57 200 1\n", + "9 4/06/84 6 63 200 1\n", + "10 8/30/84 6 70 200 1\n", + "11 10/05/84 6 78 200 0\n", + "12 11/08/84 6 67 200 0\n", + "13 1/24/85 6 53 200 2\n", + "14 4/12/85 6 67 200 0\n", + "15 4/29/85 6 75 200 0\n", + "16 6/17/85 6 70 200 0\n", + "17 7/29/85 6 81 200 0\n", + "18 8/27/85 6 76 200 0\n", + "19 10/03/85 6 79 200 0\n", + "20 10/30/85 6 75 200 2\n", + "21 11/26/85 6 76 200 0\n", + "22 1/12/86 6 58 200 1" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import numpy as np\n", + "import pandas as pd\n", + "data = pd.read_csv(\"shuttle.csv\")\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The data set shows us the date of each test, the number of O-rings (there are 6 on the main launcher), the temperature (in Fahrenheit) and pressure (in psi), and finally the number of identified malfunctions." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Graphical inspection\n", + "Flights without incidents do not provide any information\n", + "on the influence of temperature or pressure on malfunction.\n", + "We thus focus on the experiments in which at least one O-ring\n", + "was defective." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DateCountTemperaturePressureMalfunction
111/12/81670501
82/03/846572001
94/06/846632001
108/30/846702001
131/24/856532002
2010/30/856752002
221/12/866582001
\n", + "
" + ], + "text/plain": [ + " Date Count Temperature Pressure Malfunction\n", + "1 11/12/81 6 70 50 1\n", + "8 2/03/84 6 57 200 1\n", + "9 4/06/84 6 63 200 1\n", + "10 8/30/84 6 70 200 1\n", + "13 1/24/85 6 53 200 2\n", + "20 10/30/85 6 75 200 2\n", + "22 1/12/86 6 58 200 1" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data = data[data.Malfunction>0]\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We have a high temperature variability but\n", + "the pressure is almost always 200, which should\n", + "simplify the analysis.\n", + "\n", + "How does the frequency of failure vary with temperature?" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "pd.set_option('mode.chained_assignment',None) # this removes a useless warning from pandas\n", + "import matplotlib.pyplot as plt\n", + "\n", + "data[\"Frequency\"]=data.Malfunction/data.Count\n", + "data.plot(x=\"Temperature\",y=\"Frequency\",kind=\"scatter\",ylim=[0,1])\n", + "plt.grid(True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "At first glance, the dependence does not look very important, but let's try to\n", + "estimate the impact of temperature $t$ on the probability of O-ring malfunction." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Estimation of the temperature influence\n", + "\n", + "Suppose that each of the six O-rings is damaged with the same\n", + "probability and independently of the others and that this probability\n", + "depends only on the temperature. If $p(t)$ is this probability, the\n", + "number $D$ of malfunctioning O-rings during a flight at\n", + "temperature $t$ follows a binomial law with parameters $n=6$ and\n", + "$p=p(t)$. To link $p(t)$ to $t$, we will therefore perform a\n", + "logistic regression." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "
Generalized Linear Model Regression Results
Dep. Variable: Frequency No. Observations: 7
Model: GLM Df Residuals: 5
Model Family: Binomial Df Model: 1
Link Function: logit Scale: 1.0000
Method: IRLS Log-Likelihood: -2.5250
Date: Sat, 13 Apr 2019 Deviance: 0.22231
Time: 19:12:05 Pearson chi2: 0.236
No. Iterations: 4 Covariance Type: nonrobust
\n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "
coef std err z P>|z| [0.025 0.975]
Intercept -1.3895 7.828 -0.178 0.859 -16.732 13.953
Temperature 0.0014 0.122 0.012 0.991 -0.238 0.240
" + ], + "text/plain": [ + "\n", + "\"\"\"\n", + " Generalized Linear Model Regression Results \n", + "==============================================================================\n", + "Dep. Variable: Frequency No. Observations: 7\n", + "Model: GLM Df Residuals: 5\n", + "Model Family: Binomial Df Model: 1\n", + "Link Function: logit Scale: 1.0000\n", + "Method: IRLS Log-Likelihood: -2.5250\n", + "Date: Sat, 13 Apr 2019 Deviance: 0.22231\n", + "Time: 19:12:05 Pearson chi2: 0.236\n", + "No. Iterations: 4 Covariance Type: nonrobust\n", + "===============================================================================\n", + " coef std err z P>|z| [0.025 0.975]\n", + "-------------------------------------------------------------------------------\n", + "Intercept -1.3895 7.828 -0.178 0.859 -16.732 13.953\n", + "Temperature 0.0014 0.122 0.012 0.991 -0.238 0.240\n", + "===============================================================================\n", + "\"\"\"" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import statsmodels.api as sm\n", + "\n", + "data[\"Success\"]=data.Count-data.Malfunction\n", + "data[\"Intercept\"]=1\n", + "\n", + "logmodel=sm.GLM(data['Frequency'], data[['Intercept','Temperature']], family=sm.families.Binomial(sm.families.links.logit)).fit()\n", + "\n", + "logmodel.summary()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The most likely estimator of the temperature parameter is 0.0014\n", + "and the standard error of this estimator is 0.122, in other words we\n", + "cannot distinguish any particular impact and we must take our\n", + "estimates with caution." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Estimation of the probability of O-ring malfunction\n", + "\n", + "The expected temperature on the take-off day is 31°F. Let's try to\n", + "estimate the probability of O-ring malfunction at\n", + "this temperature from the model we just built:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAEKCAYAAAAcgp5RAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAGyFJREFUeJzt3X2UVPWd5/H3pxuQBhEjkhkFDWSWtHF9ABRQWZ3WqGhORLPrE2vGMRNCdmeMk83Knng2E43Rc2YHd2I26zgy6jgxiUo8iiSHCahjT2Y8PoCCILAIY4g2JEGND7Q2Snd/9497u6kuqunqpvqhfnxe5/Tpurd+de/3V7fvp27fuvUrRQRmZpaumsEuwMzM+peD3swscQ56M7PEOejNzBLnoDczS5yD3swscT0GvaR7Je2U9HI390vS/5G0VdI6SdMrX6aZmfVVOUf09wEX7Of+C4Ep+c8C4M4DL8vMzCqlx6CPiF8Av9tPk4uBH0TmWeBwSUdVqkAzMzswwyqwjAnA6wXTTfm8Xxc3lLSA7KifkSNHnnLsscdWYPVDU3t7OzU16b4FknL/Uu4buH/V7pVXXnkzIsb35jGVCHqVmFdyXIWIWAwsBqivr4/NmzdXYPVDU2NjIw0NDYNdRr9JuX8p9w3cv2on6Ve9fUwlXvaagGMKpicCOyqwXDMzq4BKBP0y4Or86pvTgHcjYp/TNmZmNjh6PHUj6QGgAThSUhNwIzAcICL+FlgOfBbYCnwAfLG/ijUzs97rMegjYl4P9wfwZxWryMyqwp49e2hqamL37t2DXUoXY8eOZdOmTYNdxgEbOXIkEydOZPjw4Qe8rEq8GWtmB6GmpibGjBnDpEmTkEpdkzE4du3axZgxYwa7jAMSEbz11ls0NTUxefLkA15eutcgmVm/2r17N+PGjRtSIZ8KSYwbN65i/y056M2szxzy/aeSz62D3swscT5Hb2ZVq7a2lhNPPLFzeunSpYwbN24QKxqaHPRmVrXq6upYu3Ztl3m7du3qvN3a2sqwYY45n7oxs6T86Ec/4rLLLuOiiy7i/PPPB2DRokXMmDGDk046iRtvvLGz7a233kp9fT3nnnsu8+bN47bbbgOgoaGB1atXA/Dmm28yadIkANra2li4cGHnsu666y5g77ALl156KccddxxXXXUV2ZXnsGrVKs444wxOPvlkZs6cya5duzjzzDO7vEDNnj2bdevW9dtz4pc6Mztg3/7pBjbueK+iyzz+6MO48aJ/v982LS0tTJ06FYDJkyfz6KOPAvDMM8+wbt06jjjiCFauXMmWLVt4/vnniQjmzp3LL37xC0aPHs2DDz7ImjVraG1tZfr06Zxyyin7Xd8999zD2LFjWbVqFR9++CGzZ8/ufDFZs2YNGzZs4Oijj2b27Nk8/fTTzJw5kyuuuIKHHnqIGTNm8N5771FXV8f8+fO57777uP3223nllVf48MMPOemkkyrwrJXmoDezqlXq1A3AeeedxxFHHAHAypUrWblyJdOmTQOgubmZLVu2sGvXLj7/+c8zatQoAObOndvj+lauXMm6det4+OGHAXj33XfZsmULI0aMYObMmUycOBGAqVOnsm3bNsaOHctRRx3FjBkzADjssMMAuOyyy/jOd77DokWLuPfee7nmmmsO7InogYPezA5YT0feA2306NGdtyOCG264ga985Std2tx+++3dXsI4bNgw2tvbAbpcyx4RfP/732fOnDld2jc2NnLIIYd0TtfW1tLa2kpElFzHqFGjOO+883jsscdYsmRJ52mi/uJz9GaWtDlz5nDvvffS3NwMwPbt29m5cydnnXUWjz76KC0tLezatYuf/vSnnY+ZNGkSL7zwAkDn0XvHsu6880727NkDwCuvvML777/f7bqPO+44duzYwapVq4DsjeLW1lYA5s+fz3XXXceMGTM6//voLz6iN7OknX/++WzatInTTz8dgEMPPZQf/vCHTJ8+nSuuuIKpU6fyiU98gjPPPLPzMddffz2XX345999/P+ecc07n/Pnz57Nt2zamT59ORDB+/HiWLl3a7bpHjBjBQw89xFe/+lVaWlqoq6vjiSee4NBDD+WUU07hsMMO44tfHIBxICNiUH4+9alPRcqeeuqpwS6hX6Xcv5T7FlG5/m3cuLEiy6m09957r0+Pu/HGG2PRokUVrqZ727dvjylTpkRbW1u3bUo9x8Dq6GXe+tSNmdkA+8EPfsCsWbO49dZbB+RrD33qxswMuOmmmwZsXVdffTVXX331gK3PR/Rm1mcRJb8e2iqgks+tg97M+mTkyJG89dZbDvt+EPl49CNHjqzI8nzqxsz6ZOLEiTQ1NfHGG28Mdild7N69u2IBOZg6vmGqEhz0ZtYnw4cP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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "data_pred = pd.DataFrame({'Temperature': np.linspace(start=30, stop=90, num=121), 'Intercept': 1})\n", + "data_pred['Frequency'] = logmodel.predict(data_pred[['Intercept','Temperature']])\n", + "data_pred.plot(x=\"Temperature\",y=\"Frequency\",kind=\"line\",ylim=[0,1])\n", + "plt.scatter(x=data[\"Temperature\"],y=data[\"Frequency\"])\n", + "plt.grid(True)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "hideCode": false, + "hidePrompt": false, + "scrolled": true + }, + "source": [ + "As expected from the initial data, the\n", + "temperature has no significant impact on the probability of failure of the\n", + "O-rings. It will be about 0.2, as in the tests\n", + "where we had a failure of at least one joint. Let's get back\n", + "to the initial dataset to estimate the probability of failure:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.06521739130434782\n" + ] + } + ], + "source": [ + "data = pd.read_csv(\"shuttle.csv\")\n", + "print(np.sum(data.Malfunction)/np.sum(data.Count))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This probability is thus about $p=0.065$. Knowing that there is\n", + "a primary and a secondary O-ring on each of the three parts of the\n", + "launcher, the probability of failure of both joints of a launcher\n", + "is $p^2 \\approx 0.00425$. The probability of failure of any one of the\n", + "launchers is $1-(1-p^2)^3 \\approx 1.2%$. That would really be\n", + "bad luck.... Everything is under control, so the takeoff can happen\n", + "tomorrow as planned.\n", + "\n", + "But the next day, the Challenger shuttle exploded and took away\n", + "with her the seven crew members. The public was shocked and in\n", + "the subsequent investigation, the reliability of the\n", + "O-rings was questioned. Beyond the internal communication problems\n", + "of NASA, which have a lot to do with this fiasco, the previous analysis\n", + "includes (at least) a small problem.... Can you find it?\n", + "You are free to modify this analysis and to look at this dataset\n", + "from all angles in order to to explain what's wrong." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Hide code", + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/module2/exo5/exo5_fr.Rmd b/module2/exo5/exo5_fr.Rmd new file mode 100644 index 0000000000000000000000000000000000000000..479d7823321976e2d925d00ea599e205bfbd8cc7 --- /dev/null +++ b/module2/exo5/exo5_fr.Rmd @@ -0,0 +1,124 @@ +--- +title: "Analyse du risque de défaillance des joints toriques de la navette Challenger" +author: "Arnaud Legrand" +date: "28 juin 2018" +output: html_document +--- + +Le 27 Janvier 1986, veille du décollage de la navette _Challenger_, eu +lieu une télé-conférence de trois heures entre les ingénieurs de la +Morton Thiokol (constructeur d'un des moteurs) et de la NASA. La +discussion portait principalement sur les conséquences de la +température prévue au moment du décollage de 31°F (juste en dessous de +0°C) sur le succès du vol et en particulier sur la performance des +joints toriques utilisés dans les moteurs. En effet, aucun test +n'avait été effectué à cette température. + +L'étude qui suit reprend donc une partie des analyses effectuées cette +nuit là et dont l'objectif était d'évaluer l'influence potentielle de +la température et de la pression à laquelle sont soumis les joints +toriques sur leur probabilité de dysfonctionnement. Pour cela, nous +disposons des résultats des expériences réalisées par les ingénieurs +de la NASA durant les 6 années précédant le lancement de la navette +Challenger. + +# Chargement des données +Nous commençons donc par charger ces données: + +```{r} +data = read.csv("shuttle.csv",header=T) +data +``` + +Le jeu de données nous indique la date de l'essai, le nombre de joints +toriques mesurés (il y en a 6 sur le lançeur principal), la +température (en Farenheit) et la pression (en psi), et enfin le +nombre de dysfonctionnements relevés. + +# Inspection graphique des données +Les vols où aucun incident n'est relevé n'apportant aucun information +sur l'influence de la température ou de la pression sur les +dysfonctionnements, nous nous concentrons sur les expériences où au +moins un joint a été défectueux. + +```{r} +data = data[data$Malfunction>0,] +data +``` + +Très bien, nous avons une variabilité de température importante mais +la pression est quasiment toujours égale à 200, ce qui devrait +simplifier l'analyse. + +Comment la fréquence d'échecs varie-t-elle avec la température ? +```{r} +plot(data=data, Malfunction/Count ~ Temperature, ylim=c(0,1)) +``` + +À première vue, ce n'est pas flagrant mais bon, essayons quand même +d'estimer l'impact de la température $t$ sur la probabilité de +dysfonctionnements d'un joint. + +# Estimation de l'influence de la température + +Supposons que chacun des 6 joints toriques est endommagé avec la même +probabilité et indépendamment des autres et que cette probabilité ne +dépend que de la température. Si on note $p(t)$ cette probabilité, le +nombre de joints $D$ dysfonctionnant lorsque l'on effectue le vol à +température $t$ suit une loi binomiale de paramètre $n=6$ et +$p=p(t)$. Pour relier $p(t)$ à $t$, on va donc effectuer une +régression logistique. + +```{r} +logistic_reg = glm(data=data, Malfunction/Count ~ Temperature, weights=Count, + family=binomial(link='logit')) +summary(logistic_reg) +``` + +L'estimateur le plus probable du paramètre de température est 0.001416 +et l'erreur standard de cet estimateur est de 0.049, autrement dit on +ne peut pas distinguer d'impact particulier et il faut prendre nos +estimations avec des pincettes. + +# Estimation de la probabilité de dysfonctionnant des joints toriques +La température prévue le jour du décollage est de 31°F. Essayons +d'estimer la probabilité de dysfonctionnement des joints toriques à +cette température à partir du modèle que nous venons de construire: + +```{r} +# shuttle=shuttle[shuttle$r!=0,] +tempv = seq(from=30, to=90, by = .5) +rmv <- predict(logistic_reg,list(Temperature=tempv),type="response") +plot(tempv,rmv,type="l",ylim=c(0,1)) +points(data=data, Malfunction/Count ~ Temperature) +``` + +Comme on pouvait s'attendre au vu des données initiales, la +température n'a pas d'impact notable sur la probabilité d'échec des +joints toriques. Elle sera d'environ 0.2, comme dans les essais +précédents où nous il y a eu défaillance d'au moins un joint. Revenons +à l'ensemble des données initiales pour estimer la probabilité de +défaillance d'un joint: + +```{r} +data_full = read.csv("shuttle.csv",header=T) +sum(data_full$Malfunction)/sum(data_full$Count) +``` + +Cette probabilité est donc d'environ $p=0.065$, sachant qu'il existe +un joint primaire un joint secondaire sur chacune des trois parties du +lançeur, la probabilité de défaillance des deux joints d'un lançeur +est de $p^2 \approx 0.00425$. La probabilité de défaillance d'un des +lançeur est donc de $1-(1-p^2)^3 \approx 1.2%$. Ça serait vraiment +pas de chance... Tout est sous contrôle, le décollage peut donc avoir +lieu demain comme prévu. + +Seulement, le lendemain, la navette Challenger explosera et emportera +avec elle ses sept membres d'équipages. L'opinion publique est +fortement touchée et lors de l'enquête qui suivra, la fiabilité des +joints toriques sera directement mise en cause. Au delà des problèmes +de communication interne à la NASA qui sont pour beaucoup dans ce +fiasco, l'analyse précédente comporte (au moins) un petit +problème... Saurez-vous le trouver ? Vous êtes libre de modifier cette +analyse et de regarder ce jeu de données sous tous les angles afin +d'expliquer ce qui ne va pas. diff --git a/module2/exo5/exo5_fr.ipynb b/module2/exo5/exo5_fr.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..26ad6d94fa840f788a57621b06dc6af83a848391 --- /dev/null +++ b/module2/exo5/exo5_fr.ipynb @@ -0,0 +1,713 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Analyse du risque de défaillance des joints toriques de la navette Challenger" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Le 27 Janvier 1986, veille du décollage de la navette *Challenger*, eu\n", + "lieu une télé-conférence de trois heures entre les ingénieurs de la\n", + "Morton Thiokol (constructeur d'un des moteurs) et de la NASA. La\n", + "discussion portait principalement sur les conséquences de la\n", + "température prévue au moment du décollage de 31°F (juste en dessous de\n", + "0°C) sur le succès du vol et en particulier sur la performance des\n", + "joints toriques utilisés dans les moteurs. En effet, aucun test\n", + "n'avait été effectué à cette température.\n", + "\n", + "L'étude qui suit reprend donc une partie des analyses effectuées cette\n", + "nuit là et dont l'objectif était d'évaluer l'influence potentielle de\n", + "la température et de la pression à laquelle sont soumis les joints\n", + "toriques sur leur probabilité de dysfonctionnement. Pour cela, nous\n", + "disposons des résultats des expériences réalisées par les ingénieurs\n", + "de la NASA durant les 6 années précédant le lancement de la navette\n", + "Challenger.\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Chargement des données\n", + "Nous commençons donc par charger ces données:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DateCountTemperaturePressureMalfunction
04/12/81666500
111/12/81670501
23/22/82669500
311/11/82668500
44/04/83667500
56/18/82672500
68/30/836731000
711/28/836701000
82/03/846572001
94/06/846632001
108/30/846702001
1110/05/846782000
1211/08/846672000
131/24/856532002
144/12/856672000
154/29/856752000
166/17/856702000
177/29/856812000
188/27/856762000
1910/03/856792000
2010/30/856752002
2111/26/856762000
221/12/866582001
\n", + "
" + ], + "text/plain": [ + " Date Count Temperature Pressure Malfunction\n", + "0 4/12/81 6 66 50 0\n", + "1 11/12/81 6 70 50 1\n", + "2 3/22/82 6 69 50 0\n", + "3 11/11/82 6 68 50 0\n", + "4 4/04/83 6 67 50 0\n", + "5 6/18/82 6 72 50 0\n", + "6 8/30/83 6 73 100 0\n", + "7 11/28/83 6 70 100 0\n", + "8 2/03/84 6 57 200 1\n", + "9 4/06/84 6 63 200 1\n", + "10 8/30/84 6 70 200 1\n", + "11 10/05/84 6 78 200 0\n", + "12 11/08/84 6 67 200 0\n", + "13 1/24/85 6 53 200 2\n", + "14 4/12/85 6 67 200 0\n", + "15 4/29/85 6 75 200 0\n", + "16 6/17/85 6 70 200 0\n", + "17 7/29/85 6 81 200 0\n", + "18 8/27/85 6 76 200 0\n", + "19 10/03/85 6 79 200 0\n", + "20 10/30/85 6 75 200 2\n", + "21 11/26/85 6 76 200 0\n", + "22 1/12/86 6 58 200 1" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import numpy as np\n", + "import pandas as pd\n", + "data = pd.read_csv(\"shuttle.csv\")\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Le jeu de données nous indique la date de l'essai, le nombre de joints\n", + "toriques mesurés (il y en a 6 sur le lançeur principal), la\n", + "température (en Farenheit) et la pression (en psi), et enfin le\n", + "nombre de dysfonctionnements relevés. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Inspection graphique des données\n", + "Les vols où aucun incident n'est relevé n'apportant aucun information\n", + "sur l'influence de la température ou de la pression sur les\n", + "dysfonctionnements, nous nous concentrons sur les expériences où au\n", + "moins un joint a été défectueux.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DateCountTemperaturePressureMalfunction
111/12/81670501
82/03/846572001
94/06/846632001
108/30/846702001
131/24/856532002
2010/30/856752002
221/12/866582001
\n", + "
" + ], + "text/plain": [ + " Date Count Temperature Pressure Malfunction\n", + "1 11/12/81 6 70 50 1\n", + "8 2/03/84 6 57 200 1\n", + "9 4/06/84 6 63 200 1\n", + "10 8/30/84 6 70 200 1\n", + "13 1/24/85 6 53 200 2\n", + "20 10/30/85 6 75 200 2\n", + "22 1/12/86 6 58 200 1" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data = data[data.Malfunction>0]\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Très bien, nous avons une variabilité de température importante mais\n", + "la pression est quasiment toujours égale à 200, ce qui devrait\n", + "simplifier l'analyse.\n", + "\n", + "Comment la fréquence d'échecs varie-t-elle avec la température ?\n" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "pd.set_option('mode.chained_assignment',None) # this removes a useless warning from pandas\n", + "import matplotlib.pyplot as plt\n", + "\n", + "data[\"Frequency\"]=data.Malfunction/data.Count\n", + "data.plot(x=\"Temperature\",y=\"Frequency\",kind=\"scatter\",ylim=[0,1])\n", + "plt.grid(True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "À première vue, ce n'est pas flagrant mais bon, essayons quand même\n", + "d'estimer l'impact de la température $t$ sur la probabilité de\n", + "dysfonctionnements d'un joint. \n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Estimation de l'influence de la température\n", + "\n", + "Supposons que chacun des 6 joints toriques est endommagé avec la même\n", + "probabilité et indépendamment des autres et que cette probabilité ne\n", + "dépend que de la température. Si on note $p(t)$ cette probabilité, le\n", + "nombre de joints $D$ dysfonctionnant lorsque l'on effectue le vol à\n", + "température $t$ suit une loi binomiale de paramètre $n=6$ et\n", + "$p=p(t)$. Pour relier $p(t)$ à $t$, on va donc effectuer une\n", + "régression logistique." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "
Generalized Linear Model Regression Results
Dep. Variable: Frequency No. Observations: 7
Model: GLM Df Residuals: 5
Model Family: Binomial Df Model: 1
Link Function: logit Scale: 1.0000
Method: IRLS Log-Likelihood: -2.5250
Date: Sat, 13 Apr 2019 Deviance: 0.22231
Time: 19:11:24 Pearson chi2: 0.236
No. Iterations: 4 Covariance Type: nonrobust
\n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "
coef std err z P>|z| [0.025 0.975]
Intercept -1.3895 7.828 -0.178 0.859 -16.732 13.953
Temperature 0.0014 0.122 0.012 0.991 -0.238 0.240
" + ], + "text/plain": [ + "\n", + "\"\"\"\n", + " Generalized Linear Model Regression Results \n", + "==============================================================================\n", + "Dep. Variable: Frequency No. Observations: 7\n", + "Model: GLM Df Residuals: 5\n", + "Model Family: Binomial Df Model: 1\n", + "Link Function: logit Scale: 1.0000\n", + "Method: IRLS Log-Likelihood: -2.5250\n", + "Date: Sat, 13 Apr 2019 Deviance: 0.22231\n", + "Time: 19:11:24 Pearson chi2: 0.236\n", + "No. Iterations: 4 Covariance Type: nonrobust\n", + "===============================================================================\n", + " coef std err z P>|z| [0.025 0.975]\n", + "-------------------------------------------------------------------------------\n", + "Intercept -1.3895 7.828 -0.178 0.859 -16.732 13.953\n", + "Temperature 0.0014 0.122 0.012 0.991 -0.238 0.240\n", + "===============================================================================\n", + "\"\"\"" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import statsmodels.api as sm\n", + "\n", + "data[\"Success\"]=data.Count-data.Malfunction\n", + "data[\"Intercept\"]=1\n", + "\n", + "logmodel=sm.GLM(data['Frequency'], data[['Intercept','Temperature']], family=sm.families.Binomial(sm.families.links.logit)).fit()\n", + "\n", + "logmodel.summary()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "L'estimateur le plus probable du paramètre de température est 0.0014\n", + "et l'erreur standard de cet estimateur est de 0.122, autrement dit on\n", + "ne peut pas distinguer d'impact particulier et il faut prendre nos\n", + "estimations avec des pincettes.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Estimation de la probabilité de dysfonctionnant des joints toriques\n", + "La température prévue le jour du décollage est de 31°F. Essayons\n", + "d'estimer la probabilité de dysfonctionnement des joints toriques à\n", + "cette température à partir du modèle que nous venons de construire:\n" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAEKCAYAAAAcgp5RAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAGyFJREFUeJzt3X2UVPWd5/H3pxuQBhEjkhkFDWSWtHF9ABRQWZ3WqGhORLPrE2vGMRNCdmeMk83Knng2E43Rc2YHd2I26zgy6jgxiUo8iiSHCahjT2Y8PoCCILAIY4g2JEGND7Q2Snd/9497u6kuqunqpvqhfnxe5/Tpurd+de/3V7fvp27fuvUrRQRmZpaumsEuwMzM+peD3swscQ56M7PEOejNzBLnoDczS5yD3swscT0GvaR7Je2U9HI390vS/5G0VdI6SdMrX6aZmfVVOUf09wEX7Of+C4Ep+c8C4M4DL8vMzCqlx6CPiF8Av9tPk4uBH0TmWeBwSUdVqkAzMzswwyqwjAnA6wXTTfm8Xxc3lLSA7KifkSNHnnLsscdWYPVDU3t7OzU16b4FknL/Uu4buH/V7pVXXnkzIsb35jGVCHqVmFdyXIWIWAwsBqivr4/NmzdXYPVDU2NjIw0NDYNdRr9JuX8p9w3cv2on6Ve9fUwlXvaagGMKpicCOyqwXDMzq4BKBP0y4Or86pvTgHcjYp/TNmZmNjh6PHUj6QGgAThSUhNwIzAcICL+FlgOfBbYCnwAfLG/ijUzs97rMegjYl4P9wfwZxWryMyqwp49e2hqamL37t2DXUoXY8eOZdOmTYNdxgEbOXIkEydOZPjw4Qe8rEq8GWtmB6GmpibGjBnDpEmTkEpdkzE4du3axZgxYwa7jAMSEbz11ls0NTUxefLkA15eutcgmVm/2r17N+PGjRtSIZ8KSYwbN65i/y056M2szxzy/aeSz62D3swscT5Hb2ZVq7a2lhNPPLFzeunSpYwbN24QKxqaHPRmVrXq6upYu3Ztl3m7du3qvN3a2sqwYY45n7oxs6T86Ec/4rLLLuOiiy7i/PPPB2DRokXMmDGDk046iRtvvLGz7a233kp9fT3nnnsu8+bN47bbbgOgoaGB1atXA/Dmm28yadIkANra2li4cGHnsu666y5g77ALl156KccddxxXXXUV2ZXnsGrVKs444wxOPvlkZs6cya5duzjzzDO7vEDNnj2bdevW9dtz4pc6Mztg3/7pBjbueK+iyzz+6MO48aJ/v982LS0tTJ06FYDJkyfz6KOPAvDMM8+wbt06jjjiCFauXMmWLVt4/vnniQjmzp3LL37xC0aPHs2DDz7ImjVraG1tZfr06Zxyyin7Xd8999zD2LFjWbVqFR9++CGzZ8/ufDFZs2YNGzZs4Oijj2b27Nk8/fTTzJw5kyuuuIKHHnqIGTNm8N5771FXV8f8+fO57777uP3223nllVf48MMPOemkkyrwrJXmoDezqlXq1A3AeeedxxFHHAHAypUrWblyJdOmTQOgubmZLVu2sGvXLj7/+c8zatQoAObOndvj+lauXMm6det4+OGHAXj33XfZsmULI0aMYObMmUycOBGAqVOnsm3bNsaOHctRRx3FjBkzADjssMMAuOyyy/jOd77DokWLuPfee7nmmmsO7InogYPezA5YT0feA2306NGdtyOCG264ga985Std2tx+++3dXsI4bNgw2tvbAbpcyx4RfP/732fOnDld2jc2NnLIIYd0TtfW1tLa2kpElFzHqFGjOO+883jsscdYsmRJ52mi/uJz9GaWtDlz5nDvvffS3NwMwPbt29m5cydnnXUWjz76KC0tLezatYuf/vSnnY+ZNGkSL7zwAkDn0XvHsu6880727NkDwCuvvML777/f7bqPO+44duzYwapVq4DsjeLW1lYA5s+fz3XXXceMGTM6//voLz6iN7OknX/++WzatInTTz8dgEMPPZQf/vCHTJ8+nSuuuIKpU6fyiU98gjPPPLPzMddffz2XX345999/P+ecc07n/Pnz57Nt2zamT59ORDB+/HiWLl3a7bpHjBjBQw89xFe/+lVaWlqoq6vjiSee4NBDD+WUU07hsMMO44tfHIBxICNiUH4+9alPRcqeeuqpwS6hX6Xcv5T7FlG5/m3cuLEiy6m09957r0+Pu/HGG2PRokUVrqZ727dvjylTpkRbW1u3bUo9x8Dq6GXe+tSNmdkA+8EPfsCsWbO49dZbB+RrD33qxswMuOmmmwZsXVdffTVXX331gK3PR/Rm1mcRJb8e2iqgks+tg97M+mTkyJG89dZbDvt+EPl49CNHjqzI8nzqxsz6ZOLEiTQ1NfHGG28Mdild7N69u2IBOZg6vmGqEhz0ZtYnw4cP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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "data_pred = pd.DataFrame({'Temperature': np.linspace(start=30, stop=90, num=121), 'Intercept': 1})\n", + "data_pred['Frequency'] = logmodel.predict(data_pred[['Intercept','Temperature']])\n", + "data_pred.plot(x=\"Temperature\",y=\"Frequency\",kind=\"line\",ylim=[0,1])\n", + "plt.scatter(x=data[\"Temperature\"],y=data[\"Frequency\"])\n", + "plt.grid(True)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "hideCode": false, + "hidePrompt": false, + "scrolled": true + }, + "source": [ + "Comme on pouvait s'attendre au vu des données initiales, la\n", + "température n'a pas d'impact notable sur la probabilité d'échec des\n", + "joints toriques. Elle sera d'environ 0.2, comme dans les essais\n", + "précédents où nous il y a eu défaillance d'au moins un joint. Revenons\n", + "à l'ensemble des données initiales pour estimer la probabilité de\n", + "défaillance d'un joint:\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.06521739130434782\n" + ] + } + ], + "source": [ + "data = pd.read_csv(\"shuttle.csv\")\n", + "print(np.sum(data.Malfunction)/np.sum(data.Count))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Cette probabilité est donc d'environ $p=0.065$, sachant qu'il existe\n", + "un joint primaire un joint secondaire sur chacune des trois parties du\n", + "lançeur, la probabilité de défaillance des deux joints d'un lançeur\n", + "est de $p^2 \\approx 0.00425$. La probabilité de défaillance d'un des\n", + "lançeur est donc de $1-(1-p^2)^3 \\approx 1.2%$. Ça serait vraiment\n", + "pas de chance... Tout est sous contrôle, le décollage peut donc avoir\n", + "lieu demain comme prévu.\n", + "\n", + "Seulement, le lendemain, la navette Challenger explosera et emportera\n", + "avec elle ses sept membres d'équipages. L'opinion publique est\n", + "fortement touchée et lors de l'enquête qui suivra, la fiabilité des\n", + "joints toriques sera directement mise en cause. Au delà des problèmes\n", + "de communication interne à la NASA qui sont pour beaucoup dans ce\n", + "fiasco, l'analyse précédente comporte (au moins) un petit\n", + "problème... Saurez-vous le trouver ? Vous êtes libre de modifier cette\n", + "analyse et de regarder ce jeu de données sous tous les angles afin\n", + "d'expliquer ce qui ne va pas." + ] + } + ], + "metadata": { + "celltoolbar": "Hide code", + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/module2/exo5/exo5_python_en.org b/module2/exo5/exo5_python_en.org new file mode 100644 index 0000000000000000000000000000000000000000..39a203bed10eed51f00f5222dee62329bf13ec72 --- /dev/null +++ b/module2/exo5/exo5_python_en.org @@ -0,0 +1,217 @@ +#+TITLE: Analysis of the risk of failure of the O-rings on the Challenger shuttle +#+AUTHOR: Arnaud Legrand +#+LANGUAGE: en + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +#+LATEX_HEADER: \usepackage{a4} +#+LATEX_HEADER: \usepackage[french]{babel} + +# #+PROPERTY: header-args :session :exports both + +On January 27, 1986, the day before the takeoff of the shuttle /Challenger/, had +a three-hour teleconference was held between +Morton Thiokol (the manufacturer of one of the engines) and NASA. The +discussion focused on the consequences of the +temperature at take-off of 31°F (just below +0°C) for the success of the flight and in particular on the performance of the +O-rings used in the engines. Indeed, no test +had been performed at this temperature. + +The following study takes up some of the analyses carried out that +night with the objective of assessing the potential influence of +the temperature and pressure to which the O-rings are subjected +on their probability of malfunction. Our starting point is +the results of the experiments carried out by NASA engineers +during the six years preceding the launch of the shuttle +Challenger. + +* Loading the data +We start by loading this data: +#+begin_src python :results value :session *python* :exports both +import numpy as np +import pandas as pd +data = pd.read_csv("shuttle.csv") +data +#+end_src + +#+RESULTS: +#+begin_example + Date Count Temperature Pressure Malfunction +0 4/12/81 6 66 50 0 +1 11/12/81 6 70 50 1 +2 3/22/82 6 69 50 0 +3 11/11/82 6 68 50 0 +4 4/04/83 6 67 50 0 +5 6/18/82 6 72 50 0 +6 8/30/83 6 73 100 0 +7 11/28/83 6 70 100 0 +8 2/03/84 6 57 200 1 +9 4/06/84 6 63 200 1 +10 8/30/84 6 70 200 1 +11 10/05/84 6 78 200 0 +12 11/08/84 6 67 200 0 +13 1/24/85 6 53 200 2 +14 4/12/85 6 67 200 0 +15 4/29/85 6 75 200 0 +16 6/17/85 6 70 200 0 +17 7/29/85 6 81 200 0 +18 8/27/85 6 76 200 0 +19 10/03/85 6 79 200 0 +20 10/30/85 6 75 200 2 +21 11/26/85 6 76 200 0 +22 1/12/86 6 58 200 1 +#+end_example + +The data set shows us the date of each test, the number of O-rings +(there are 6 on the main launcher), the +temperature (in Fahrenheit) and pressure (in psi), and finally the +number of identified malfunctions. + +* Graphical inspection +Flights without incidents do not provide any information +on the influence of temperature or pressure on malfunction. +We thus focus on the experiments in which at least one O-ring was defective. + +#+begin_src python :results value :session *python* :exports both +data = data[data.Malfunction>0] +data +#+end_src + +#+RESULTS: +: Date Count Temperature Pressure Malfunction +: 1 11/12/81 6 70 50 1 +: 8 2/03/84 6 57 200 1 +: 9 4/06/84 6 63 200 1 +: 10 8/30/84 6 70 200 1 +: 13 1/24/85 6 53 200 2 +: 20 10/30/85 6 75 200 2 +: 22 1/12/86 6 58 200 1 + +We have a high temperature variability but +the pressure is almost always 200, which should +simplify the analysis. + +How does the frequency of failure vary with temperature? +#+begin_src python :results output file :var matplot_lib_filename="freq_temp_python.png" :exports both :session *python* +import matplotlib.pyplot as plt + +plt.clf() +data["Frequency"]=data.Malfunction/data.Count +data.plot(x="Temperature",y="Frequency",kind="scatter",ylim=[0,1]) +plt.grid(True) + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:freq_temp_python.png]] + +At first glance, the dependence does not look very important, but let's try to +estimate the impact of temperature $t$ on the probability of O-ring malfunction. + +* Estimation of the temperature influence + +Suppose that each of the six O-rings is damaged with the same +probability and independently of the others and that this probability +depends only on the temperature. If $p(t)$ is this probability, the +number $D$ of malfunctioning O-rings during a flight at +temperature $t$ follows a binomial law with parameters $n=6$ and +$p=p(t)$. To link $p(t)$ to $t$, we will therefore perform a +logistic regression. + +#+begin_src python :results value :session *python* :exports both +import statsmodels.api as sm + +data["Success"]=data.Count-data.Malfunction +data["Intercept"]=1 + + +# logit_model=sm.Logit(data["Frequency"],data[["Intercept","Temperature"]]).fit() +logmodel=sm.GLM(data['Frequency'], data[['Intercept','Temperature']], family=sm.families.Binomial(sm.families.links.logit)).fit() + +logmodel.summary() +#+end_src + +#+RESULTS: +#+begin_example + Generalized Linear Model Regression Results +============================================================================== +Dep. Variable: Frequency No. Observations: 7 +Model: GLM Df Residuals: 5 +Model Family: Binomial Df Model: 1 +Link Function: logit Scale: 1.0 +Method: IRLS Log-Likelihood: -3.6370 +Date: Fri, 20 Jul 2018 Deviance: 3.3763 +Time: 16:56:08 Pearson chi2: 0.236 +No. Iterations: 5 +=============================================================================== + coef std err z P>|z| [0.025 0.975] +------------------------------------------------------------------------------- +Intercept -1.3895 7.828 -0.178 0.859 -16.732 13.953 +Temperature 0.0014 0.122 0.012 0.991 -0.238 0.240 +=============================================================================== +#+end_example + +The most likely estimator of the temperature parameter is 0.0014 +and the standard error of this estimator is 0.122, in other words we +cannot distinguish any particular impact and we must take our +estimates with caution. + +* Estimation of the probability of O-ring malfunction +The expected temperature on the take-off day is 31°F. Let's try to +estimate the probability of O-ring malfunction at +this temperature from the model we just built: + +#+begin_src python :results output file :var matplot_lib_filename="proba_estimate_python.png" :exports both :session *python* +import matplotlib.pyplot as plt + +data_pred = pd.DataFrame({'Temperature': np.linspace(start=30, stop=90, num=121), 'Intercept': 1}) +data_pred['Frequency'] = logmodel.predict(data_pred[['Intercept','Temperature']]) +data_pred.plot(x="Temperature",y="Frequency",kind="line",ylim=[0,1]) +plt.scatter(x=data["Temperature"],y=data["Frequency"]) +plt.grid(True) + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:proba_estimate_python.png]] + +As expected from the initial data, the +temperature has no significant impact on the probability of failure of the +O-rings. It will be about 0.2, as in the tests +where we had a failure of at least one joint. Let's get back to the initial dataset to estimate the probability of failure: + +#+begin_src python :results output :session *python* :exports both +data = pd.read_csv("shuttle.csv") +print(np.sum(data.Malfunction)/np.sum(data.Count)) +#+end_src + +#+RESULTS: +: 0.06521739130434782 + +This probability is thus about $p=0.065$. Knowing that there is +a primary and a secondary O-ring on each of the three parts of the +launcher, the probability of failure of both joints of a launcher +is $p^2 \approx 0.00425$. The probability of failure of any one of the +launchers is $1-(1-p^2)^3 \approx 1.2%$. That would really be +bad luck.... Everything is under control, so the takeoff can happen +tomorrow as planned. + +But the next day, the Challenger shuttle exploded and took away +with her the seven crew members. The public was shocked and in +the subsequent investigation, the reliability of the +O-rings was questioned. Beyond the internal communication problems +of NASA, which have a lot to do with this fiasco, the previous analysis +includes (at least) a small problem.... Can you find it? +You are free to modify this analysis and to look at this dataset +from all angles in order to to explain what's wrong. + diff --git a/module2/exo5/exo5_python_fr.org b/module2/exo5/exo5_python_fr.org new file mode 100644 index 0000000000000000000000000000000000000000..afff5e05bdb366128291b42847d9bd44d1f8bf04 --- /dev/null +++ b/module2/exo5/exo5_python_fr.org @@ -0,0 +1,222 @@ +#+TITLE: Analyse du risque de défaillance des joints toriques de la navette Challenger +#+AUTHOR: Arnaud Legrand +#+LANGUAGE: fr + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +#+LATEX_HEADER: \usepackage{a4} +#+LATEX_HEADER: \usepackage[french]{babel} + +# #+PROPERTY: header-args :session :exports both + +Le 27 Janvier 1986, veille du décollage de la navette /Challenger/, eu +lieu une télé-conférence de trois heures entre les ingénieurs de la +Morton Thiokol (constructeur d'un des moteurs) et de la NASA. La +discussion portait principalement sur les conséquences de la +température prévue au moment du décollage de 31°F (juste en dessous de +0°C) sur le succès du vol et en particulier sur la performance des +joints toriques utilisés dans les moteurs. En effet, aucun test +n'avait été effectué à cette température. + +L'étude qui suit reprend donc une partie des analyses effectuées cette +nuit là et dont l'objectif était d'évaluer l'influence potentielle de +la température et de la pression à laquelle sont soumis les joints +toriques sur leur probabilité de dysfonctionnement. Pour cela, nous +disposons des résultats des expériences réalisées par les ingénieurs +de la NASA durant les 6 années précédant le lancement de la navette +Challenger. + +* Chargement des données +Nous commençons donc par charger ces données: +#+begin_src python :results value :session *python* :exports both +import numpy as np +import pandas as pd +data = pd.read_csv("shuttle.csv") +data +#+end_src + +#+RESULTS: +#+begin_example + Date Count Temperature Pressure Malfunction +0 4/12/81 6 66 50 0 +1 11/12/81 6 70 50 1 +2 3/22/82 6 69 50 0 +3 11/11/82 6 68 50 0 +4 4/04/83 6 67 50 0 +5 6/18/82 6 72 50 0 +6 8/30/83 6 73 100 0 +7 11/28/83 6 70 100 0 +8 2/03/84 6 57 200 1 +9 4/06/84 6 63 200 1 +10 8/30/84 6 70 200 1 +11 10/05/84 6 78 200 0 +12 11/08/84 6 67 200 0 +13 1/24/85 6 53 200 2 +14 4/12/85 6 67 200 0 +15 4/29/85 6 75 200 0 +16 6/17/85 6 70 200 0 +17 7/29/85 6 81 200 0 +18 8/27/85 6 76 200 0 +19 10/03/85 6 79 200 0 +20 10/30/85 6 75 200 2 +21 11/26/85 6 76 200 0 +22 1/12/86 6 58 200 1 +#+end_example + +Le jeu de données nous indique la date de l'essai, le nombre de joints +toriques mesurés (il y en a 6 sur le lançeur principal), la +température (en Fahrenheit) et la pression (en psi), et enfin le +nombre de dysfonctionnements relevés. + +* Inspection graphique des données +Les vols où aucun incident n'est relevé n'apportant aucune information +sur l'influence de la température ou de la pression sur les +dysfonctionnements, nous nous concentrons sur les expériences où au +moins un joint a été défectueux. + +#+begin_src python :results value :session *python* :exports both +data = data[data.Malfunction>0] +data +#+end_src + +#+RESULTS: +: Date Count Temperature Pressure Malfunction +: 1 11/12/81 6 70 50 1 +: 8 2/03/84 6 57 200 1 +: 9 4/06/84 6 63 200 1 +: 10 8/30/84 6 70 200 1 +: 13 1/24/85 6 53 200 2 +: 20 10/30/85 6 75 200 2 +: 22 1/12/86 6 58 200 1 + +Très bien, nous avons une variabilité de température importante mais +la pression est quasiment toujours égale à 200, ce qui devrait +simplifier l'analyse. + +Comment la fréquence d'échecs varie-t-elle avec la température ? +#+begin_src python :results output file :var matplot_lib_filename="freq_temp_python.png" :exports both :session *python* +import matplotlib.pyplot as plt + +plt.clf() +data["Frequency"]=data.Malfunction/data.Count +data.plot(x="Temperature",y="Frequency",kind="scatter",ylim=[0,1]) +plt.grid(True) + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:freq_temp_python.png]] + +À première vue, ce n'est pas flagrant mais bon, essayons quand même +d'estimer l'impact de la température $t$ sur la probabilité de +dysfonctionnements d'un joint. + +* Estimation de l'influence de la température + +Supposons que chacun des 6 joints toriques est endommagé avec la même +probabilité et indépendamment des autres et que cette probabilité ne +dépend que de la température. Si on note $p(t)$ cette probabilité, le +nombre de joints $D$ dysfonctionnant lorsque l'on effectue le vol à +température $t$ suit une loi binomiale de paramètre $n=6$ et +$p=p(t)$. Pour relier $p(t)$ à $t$, on va donc effectuer une +régression logistique. + +#+begin_src python :results value :session *python* :exports both +import statsmodels.api as sm + +data["Success"]=data.Count-data.Malfunction +data["Intercept"]=1 + + +# logit_model=sm.Logit(data["Frequency"],data[["Intercept","Temperature"]]).fit() +logmodel=sm.GLM(data['Frequency'], data[['Intercept','Temperature']], family=sm.families.Binomial(sm.families.links.logit)).fit() + +logmodel.summary() +#+end_src + +#+RESULTS: +#+begin_example + Generalized Linear Model Regression Results +============================================================================== +Dep. Variable: Frequency No. Observations: 7 +Model: GLM Df Residuals: 5 +Model Family: Binomial Df Model: 1 +Link Function: logit Scale: 1.0 +Method: IRLS Log-Likelihood: -3.6370 +Date: Fri, 20 Jul 2018 Deviance: 3.3763 +Time: 16:56:08 Pearson chi2: 0.236 +No. Iterations: 5 +=============================================================================== + coef std err z P>|z| [0.025 0.975] +------------------------------------------------------------------------------- +Intercept -1.3895 7.828 -0.178 0.859 -16.732 13.953 +Temperature 0.0014 0.122 0.012 0.991 -0.238 0.240 +=============================================================================== +#+end_example + +L'estimateur le plus probable du paramètre de température est 0.0014 +et l'erreur standard de cet estimateur est de 0.122, autrement dit on +ne peut pas distinguer d'impact particulier et il faut prendre nos +estimations avec des pincettes. + +* Estimation de la probabilité de dysfonctionnant des joints toriques +La température prévue le jour du décollage est de 31°F. Essayons +d'estimer la probabilité de dysfonctionnement des joints toriques à +cette température à partir du modèle que nous venons de construire: + +#+begin_src python :results output file :var matplot_lib_filename="proba_estimate_python.png" :exports both :session *python* +import matplotlib.pyplot as plt + +data_pred = pd.DataFrame({'Temperature': np.linspace(start=30, stop=90, num=121), 'Intercept': 1}) +data_pred['Frequency'] = logmodel.predict(data_pred[['Intercept','Temperature']]) +data_pred.plot(x="Temperature",y="Frequency",kind="line",ylim=[0,1]) +plt.scatter(x=data["Temperature"],y=data["Frequency"]) +plt.grid(True) + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:proba_estimate_python.png]] + +Comme on pouvait s'attendre au vu des données initiales, la +température n'a pas d'impact notable sur la probabilité d'échec des +joints toriques. Elle sera d'environ 0.2, comme dans les essais +précédents où nous il y a eu défaillance d'au moins un joint. Revenons +à l'ensemble des données initiales pour estimer la probabilité de +défaillance d'un joint: + +#+begin_src python :results output :session *python* :exports both +data = pd.read_csv("shuttle.csv") +print(np.sum(data.Malfunction)/np.sum(data.Count)) +#+end_src + +#+RESULTS: +: 0.06521739130434782 + +Cette probabilité est donc d'environ $p=0.065$, sachant qu'il existe +un joint primaire un joint secondaire sur chacune des trois parties du +lançeur, la probabilité de défaillance des deux joints d'un lançeur +est de $p^2 \approx 0.00425$. La probabilité de défaillance d'un des +lançeur est donc de $1-(1-p^2)^3 \approx 1.2%$. Ça serait vraiment +pas de chance... Tout est sous contrôle, le décollage peut donc avoir +lieu demain comme prévu. + +Seulement, le lendemain, la navette Challenger explosera et emportera +avec elle ses sept membres d'équipages. L'opinion publique est +fortement touchée et lors de l'enquête qui suivra, la fiabilité des +joints toriques sera directement mise en cause. Au delà des problèmes +de communication interne à la NASA qui sont pour beaucoup dans ce +fiasco, l'analyse précédente comporte (au moins) un petit +problème... Saurez-vous le trouver ? Vous êtes libre de modifier cette +analyse et de regarder ce jeu de données sous tous les angles afin +d'expliquer ce qui ne va pas. + diff --git a/module2/exo5/exo_en.ipynb b/module2/exo5/exo_en.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..c6e426cc5a3f07652dd44b207b4aaa7f66574f56 --- /dev/null +++ b/module2/exo5/exo_en.ipynb @@ -0,0 +1,714 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Analysis of the risk of failure of the O-rings on the Challenger shuttle" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "On January 27, 1986, the day before the takeoff of the shuttle _Challenger_, had\n", + "a three-hour teleconference was held between \n", + "Morton Thiokol (the manufacturer of one of the engines) and NASA. The\n", + "discussion focused on the consequences of the\n", + "temperature at take-off of 31°F (just below\n", + "0°C) for the success of the flight and in particular on the performance of the\n", + "O-rings used in the engines. Indeed, no test\n", + "had been performed at this temperature.\n", + "\n", + "The following study takes up some of the analyses carried out that\n", + "night with the objective of assessing the potential influence of\n", + "the temperature and pressure to which the O-rings are subjected\n", + "on their probability of malfunction. Our starting point is \n", + "the results of the experiments carried out by NASA engineers\n", + "during the six years preceding the launch of the shuttle\n", + "Challenger." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Loading the data\n", + "We start by loading this data:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DateCountTemperaturePressureMalfunction
04/12/81666500
111/12/81670501
23/22/82669500
311/11/82668500
44/04/83667500
56/18/82672500
68/30/836731000
711/28/836701000
82/03/846572001
94/06/846632001
108/30/846702001
1110/05/846782000
1211/08/846672000
131/24/856532002
144/12/856672000
154/29/856752000
166/17/856702000
177/29/856812000
188/27/856762000
1910/03/856792000
2010/30/856752002
2111/26/856762000
221/12/866582001
\n", + "
" + ], + "text/plain": [ + " Date Count Temperature Pressure Malfunction\n", + "0 4/12/81 6 66 50 0\n", + "1 11/12/81 6 70 50 1\n", + "2 3/22/82 6 69 50 0\n", + "3 11/11/82 6 68 50 0\n", + "4 4/04/83 6 67 50 0\n", + "5 6/18/82 6 72 50 0\n", + "6 8/30/83 6 73 100 0\n", + "7 11/28/83 6 70 100 0\n", + "8 2/03/84 6 57 200 1\n", + "9 4/06/84 6 63 200 1\n", + "10 8/30/84 6 70 200 1\n", + "11 10/05/84 6 78 200 0\n", + "12 11/08/84 6 67 200 0\n", + "13 1/24/85 6 53 200 2\n", + "14 4/12/85 6 67 200 0\n", + "15 4/29/85 6 75 200 0\n", + "16 6/17/85 6 70 200 0\n", + "17 7/29/85 6 81 200 0\n", + "18 8/27/85 6 76 200 0\n", + "19 10/03/85 6 79 200 0\n", + "20 10/30/85 6 75 200 2\n", + "21 11/26/85 6 76 200 0\n", + "22 1/12/86 6 58 200 1" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import numpy as np\n", + "import pandas as pd\n", + "data = pd.read_csv(\"shuttle.csv\")\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The data set shows us the date of each test, the number of O-rings (there are 6 on the main launcher), the temperature (in Fahrenheit) and pressure (in psi), and finally the number of identified malfunctions." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Graphical inspection\n", + "Flights without incidents do not provide any information\n", + "on the influence of temperature or pressure on malfunction.\n", + "We thus focus on the experiments in which at least one O-ring\n", + "was defective." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DateCountTemperaturePressureMalfunction
111/12/81670501
82/03/846572001
94/06/846632001
108/30/846702001
131/24/856532002
2010/30/856752002
221/12/866582001
\n", + "
" + ], + "text/plain": [ + " Date Count Temperature Pressure Malfunction\n", + "1 11/12/81 6 70 50 1\n", + "8 2/03/84 6 57 200 1\n", + "9 4/06/84 6 63 200 1\n", + "10 8/30/84 6 70 200 1\n", + "13 1/24/85 6 53 200 2\n", + "20 10/30/85 6 75 200 2\n", + "22 1/12/86 6 58 200 1" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data = data[data.Malfunction>0]\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We have a high temperature variability but\n", + "the pressure is almost always 200, which should\n", + "simplify the analysis.\n", + "\n", + "How does the frequency of failure vary with temperature?" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "pd.set_option('mode.chained_assignment',None) # this removes a useless warning from pandas\n", + "import matplotlib.pyplot as plt\n", + "\n", + "data[\"Frequency\"]=data.Malfunction/data.Count\n", + "data.plot(x=\"Temperature\",y=\"Frequency\",kind=\"scatter\",ylim=[0,1])\n", + "plt.grid(True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "At first glance, the dependence does not look very important, but let's try to\n", + "estimate the impact of temperature $t$ on the probability of O-ring malfunction." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Estimation of the temperature influence\n", + "\n", + "Suppose that each of the six O-rings is damaged with the same\n", + "probability and independently of the others and that this probability\n", + "depends only on the temperature. If $p(t)$ is this probability, the\n", + "number $D$ of malfunctioning O-rings during a flight at\n", + "temperature $t$ follows a binomial law with parameters $n=6$ and\n", + "$p=p(t)$. To link $p(t)$ to $t$, we will therefore perform a\n", + "logistic regression." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "
Generalized Linear Model Regression Results
Dep. Variable: Frequency No. Observations: 7
Model: GLM Df Residuals: 5
Model Family: Binomial Df Model: 1
Link Function: logit Scale: 1.0000
Method: IRLS Log-Likelihood: -2.5250
Date: Sat, 13 Apr 2019 Deviance: 0.22231
Time: 19:12:05 Pearson chi2: 0.236
No. Iterations: 4 Covariance Type: nonrobust
\n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "\n", + " \n", + "\n", + "
coef std err z P>|z| [0.025 0.975]
Intercept -1.3895 7.828 -0.178 0.859 -16.732 13.953
Temperature 0.0014 0.122 0.012 0.991 -0.238 0.240
" + ], + "text/plain": [ + "\n", + "\"\"\"\n", + " Generalized Linear Model Regression Results \n", + "==============================================================================\n", + "Dep. Variable: Frequency No. Observations: 7\n", + "Model: GLM Df Residuals: 5\n", + "Model Family: Binomial Df Model: 1\n", + "Link Function: logit Scale: 1.0000\n", + "Method: IRLS Log-Likelihood: -2.5250\n", + "Date: Sat, 13 Apr 2019 Deviance: 0.22231\n", + "Time: 19:12:05 Pearson chi2: 0.236\n", + "No. Iterations: 4 Covariance Type: nonrobust\n", + "===============================================================================\n", + " coef std err z P>|z| [0.025 0.975]\n", + "-------------------------------------------------------------------------------\n", + "Intercept -1.3895 7.828 -0.178 0.859 -16.732 13.953\n", + "Temperature 0.0014 0.122 0.012 0.991 -0.238 0.240\n", + "===============================================================================\n", + "\"\"\"" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import statsmodels.api as sm\n", + "\n", + "data[\"Success\"]=data.Count-data.Malfunction\n", + "data[\"Intercept\"]=1\n", + "\n", + "logmodel=sm.GLM(data['Frequency'], data[['Intercept','Temperature']], family=sm.families.Binomial(sm.families.links.logit)).fit()\n", + "\n", + "logmodel.summary()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The most likely estimator of the temperature parameter is 0.0014\n", + "and the standard error of this estimator is 0.122, in other words we\n", + "cannot distinguish any particular impact and we must take our\n", + "estimates with caution." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Estimation of the probability of O-ring malfunction\n", + "\n", + "The expected temperature on the take-off day is 31°F. Let's try to\n", + "estimate the probability of O-ring malfunction at\n", + "this temperature from the model we just built:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAEKCAYAAAAcgp5RAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAGyFJREFUeJzt3X2UVPWd5/H3pxuQBhEjkhkFDWSWtHF9ABRQWZ3WqGhORLPrE2vGMRNCdmeMk83Knng2E43Rc2YHd2I26zgy6jgxiUo8iiSHCahjT2Y8PoCCILAIY4g2JEGND7Q2Snd/9497u6kuqunqpvqhfnxe5/Tpurd+de/3V7fvp27fuvUrRQRmZpaumsEuwMzM+peD3swscQ56M7PEOejNzBLnoDczS5yD3swscT0GvaR7Je2U9HI390vS/5G0VdI6SdMrX6aZmfVVOUf09wEX7Of+C4Ep+c8C4M4DL8vMzCqlx6CPiF8Av9tPk4uBH0TmWeBwSUdVqkAzMzswwyqwjAnA6wXTTfm8Xxc3lLSA7KifkSNHnnLsscdWYPVDU3t7OzU16b4FknL/Uu4buH/V7pVXXnkzIsb35jGVCHqVmFdyXIWIWAwsBqivr4/NmzdXYPVDU2NjIw0NDYNdRr9JuX8p9w3cv2on6Ve9fUwlXvaagGMKpicCOyqwXDMzq4BKBP0y4Or86pvTgHcjYp/TNmZmNjh6PHUj6QGgAThSUhNwIzAcICL+FlgOfBbYCnwAfLG/ijUzs97rMegjYl4P9wfwZxWryMyqwp49e2hqamL37t2DXUoXY8eOZdOmTYNdxgEbOXIkEydOZPjw4Qe8rEq8GWtmB6GmpibGjBnDpEmTkEpdkzE4du3axZgxYwa7jAMSEbz11ls0NTUxefLkA15eutcgmVm/2r17N+PGjRtSIZ8KSYwbN65i/y056M2szxzy/aeSz62D3swscT5Hb2ZVq7a2lhNPPLFzeunSpYwbN24QKxqaHPRmVrXq6upYu3Ztl3m7du3qvN3a2sqwYY45n7oxs6T86Ec/4rLLLuOiiy7i/PPPB2DRokXMmDGDk046iRtvvLGz7a233kp9fT3nnnsu8+bN47bbbgOgoaGB1atXA/Dmm28yadIkANra2li4cGHnsu666y5g77ALl156KccddxxXXXUV2ZXnsGrVKs444wxOPvlkZs6cya5duzjzzDO7vEDNnj2bdevW9dtz4pc6Mztg3/7pBjbueK+iyzz+6MO48aJ/v982LS0tTJ06FYDJkyfz6KOPAvDMM8+wbt06jjjiCFauXMmWLVt4/vnniQjmzp3LL37xC0aPHs2DDz7ImjVraG1tZfr06Zxyyin7Xd8999zD2LFjWbVqFR9++CGzZ8/ufDFZs2YNGzZs4Oijj2b27Nk8/fTTzJw5kyuuuIKHHnqIGTNm8N5771FXV8f8+fO57777uP3223nllVf48MMPOemkkyrwrJXmoDezqlXq1A3AeeedxxFHHAHAypUrWblyJdOmTQOgubmZLVu2sGvXLj7/+c8zatQoAObOndvj+lauXMm6det4+OGHAXj33XfZsmULI0aMYObMmUycOBGAqVOnsm3bNsaOHctRRx3FjBkzADjssMMAuOyyy/jOd77DokWLuPfee7nmmmsO7InogYPezA5YT0feA2306NGdtyOCG264ga985Std2tx+++3dXsI4bNgw2tvbAbpcyx4RfP/732fOnDld2jc2NnLIIYd0TtfW1tLa2kpElFzHqFGjOO+883jsscdYsmRJ52mi/uJz9GaWtDlz5nDvvffS3NwMwPbt29m5cydnnXUWjz76KC0tLezatYuf/vSnnY+ZNGkSL7zwAkDn0XvHsu6880727NkDwCuvvML777/f7bqPO+44duzYwapVq4DsjeLW1lYA5s+fz3XXXceMGTM6//voLz6iN7OknX/++WzatInTTz8dgEMPPZQf/vCHTJ8+nSuuuIKpU6fyiU98gjPPPLPzMddffz2XX345999/P+ecc07n/Pnz57Nt2zamT59ORDB+/HiWLl3a7bpHjBjBQw89xFe/+lVaWlqoq6vjiSee4NBDD+WUU07hsMMO44tfHIBxICNiUH4+9alPRcqeeuqpwS6hX6Xcv5T7FlG5/m3cuLEiy6m09957r0+Pu/HGG2PRokUVrqZ727dvjylTpkRbW1u3bUo9x8Dq6GXe+tSNmdkA+8EPfsCsWbO49dZbB+RrD33qxswMuOmmmwZsXVdffTVXX331gK3PR/Rm1mcRJb8e2iqgks+tg97M+mTkyJG89dZbDvt+EPl49CNHjqzI8nzqxsz6ZOLEiTQ1NfHGG28Mdild7N69u2IBOZg6vmGqEhz0ZtYnw4cP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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "data_pred = pd.DataFrame({'Temperature': np.linspace(start=30, stop=90, num=121), 'Intercept': 1})\n", + "data_pred['Frequency'] = logmodel.predict(data_pred[['Intercept','Temperature']])\n", + "data_pred.plot(x=\"Temperature\",y=\"Frequency\",kind=\"line\",ylim=[0,1])\n", + "plt.scatter(x=data[\"Temperature\"],y=data[\"Frequency\"])\n", + "plt.grid(True)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "hideCode": false, + "hidePrompt": false, + "scrolled": true + }, + "source": [ + "As expected from the initial data, the\n", + "temperature has no significant impact on the probability of failure of the\n", + "O-rings. It will be about 0.2, as in the tests\n", + "where we had a failure of at least one joint. Let's get back\n", + "to the initial dataset to estimate the probability of failure:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.06521739130434782\n" + ] + } + ], + "source": [ + "data = pd.read_csv(\"shuttle.csv\")\n", + "print(np.sum(data.Malfunction)/np.sum(data.Count))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This probability is thus about $p=0.065$. Knowing that there is\n", + "a primary and a secondary O-ring on each of the three parts of the\n", + "launcher, the probability of failure of both joints of a launcher\n", + "is $p^2 \\approx 0.00425$. The probability of failure of any one of the\n", + "launchers is $1-(1-p^2)^3 \\approx 1.2%$. That would really be\n", + "bad luck.... Everything is under control, so the takeoff can happen\n", + "tomorrow as planned.\n", + "\n", + "But the next day, the Challenger shuttle exploded and took away\n", + "with her the seven crew members. The public was shocked and in\n", + "the subsequent investigation, the reliability of the\n", + "O-rings was questioned. Beyond the internal communication problems\n", + "of NASA, which have a lot to do with this fiasco, the previous analysis\n", + "includes (at least) a small problem.... Can you find it?\n", + "You are free to modify this analysis and to look at this dataset\n", + "from all angles in order to to explain what's wrong." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Hide code", + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.4" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/module2/exo5/freq_temp.png b/module2/exo5/freq_temp.png new file mode 100644 index 0000000000000000000000000000000000000000..875d15fb0a5895ef4a9ac2856eca288ea1e75387 Binary files /dev/null and b/module2/exo5/freq_temp.png differ diff --git a/module2/exo5/freq_temp_python.png b/module2/exo5/freq_temp_python.png new file mode 100644 index 0000000000000000000000000000000000000000..93cb9e626441d23f6dff59ed252d7b14eb37abdb Binary files /dev/null and b/module2/exo5/freq_temp_python.png differ diff --git a/module2/exo5/proba_estimate.png b/module2/exo5/proba_estimate.png new file mode 100644 index 0000000000000000000000000000000000000000..ac71d62b849d17d1dc58a16816eedee6544d48f5 Binary files /dev/null and b/module2/exo5/proba_estimate.png differ diff --git a/module2/exo5/proba_estimate_python.png b/module2/exo5/proba_estimate_python.png new file mode 100644 index 0000000000000000000000000000000000000000..77fc4b275dd8815b1ab91cd3b67b1beb93e00748 Binary files /dev/null and b/module2/exo5/proba_estimate_python.png differ diff --git a/module2/exo5/shuttle.csv b/module2/exo5/shuttle.csv new file mode 100644 index 0000000000000000000000000000000000000000..e59e1337ed61fc3862edb87cb94bb3a93c1bf583 --- /dev/null +++ b/module2/exo5/shuttle.csv @@ -0,0 +1,24 @@ +Date,Count,Temperature,Pressure,Malfunction +4/12/81,6,66,50,0 +11/12/81,6,70,50,1 +3/22/82,6,69,50,0 +11/11/82,6,68,50,0 +4/04/83,6,67,50,0 +6/18/82,6,72,50,0 +8/30/83,6,73,100,0 +11/28/83,6,70,100,0 +2/03/84,6,57,200,1 +4/06/84,6,63,200,1 +8/30/84,6,70,200,1 +10/05/84,6,78,200,0 +11/08/84,6,67,200,0 +1/24/85,6,53,200,2 +4/12/85,6,67,200,0 +4/29/85,6,75,200,0 +6/17/85,6,70,200,0 +7/29/85,6,81,200,0 +8/27/85,6,76,200,0 +10/03/85,6,79,200,0 +10/30/85,6,75,200,2 +11/26/85,6,76,200,0 +1/12/86,6,58,200,1 diff --git a/module2/exo5/shuttle_modif.csv b/module2/exo5/shuttle_modif.csv new file mode 100644 index 0000000000000000000000000000000000000000..fd50ff2ede0bd24d686372298df4b52045f8219e --- /dev/null +++ b/module2/exo5/shuttle_modif.csv @@ -0,0 +1,24 @@ +Date,Count,Temperature,Pressure,Malfunction +4/12/81,6,66,50,0 +11/12/81,6,70,50,1 +3/22/82,6,69,50,0 +11/11/82,6,68,50,0 +4/04/83,6,67,50,0 +6/18/82,6,72,50,0 +8/30/83,6,73,100,0 +11/28/83,6,70,100,0 +2/03/84,6,57,200,1 +4/06/84,6,63,200,1 +8/30/84,6,70,200,1 +10/05/84,6,78,200,0 +11/08/84,6,67,200,0 +1/24/85,6,53,200,2 +4/12/85,6,67,200,0 +4/29/85,6,75,200,0 +6/17/85,6,70,200,0 +7/29/85,6,81,200,0 +8/27/85,6,76,200,0 +10/03/85,6,79,200,0 +10/30/85,6,75,200,2 +11/26/85,6,76,200,0 +1/12/86,6,58,200,1 \ No newline at end of file diff --git a/module3/.ipynb_checkpoints/analyse-syndrome-grippal-checkpoint.ipynb b/module3/.ipynb_checkpoints/analyse-syndrome-grippal-checkpoint.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..442c39061fd91f05b859814fc6b15eca1486efa0 --- /dev/null +++ b/module3/.ipynb_checkpoints/analyse-syndrome-grippal-checkpoint.ipynb @@ -0,0 +1,1575 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Incidence du syndrome grippal" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "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": 18, + "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": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "ename": "EmptyDataError", + "evalue": "No columns to parse from file", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mEmptyDataError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 11\u001b[0m \u001b[0mf\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mwrite\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mr\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcontent\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 12\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 13\u001b[0;31m \u001b[0mraw_data\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mpd\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mread_csv\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mskiprows\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 14\u001b[0m \u001b[0mraw_data\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/opt/conda/lib/python3.6/site-packages/pandas/io/parsers.py\u001b[0m in \u001b[0;36mparser_f\u001b[0;34m(filepath_or_buffer, sep, delimiter, header, names, index_col, usecols, squeeze, prefix, mangle_dupe_cols, dtype, engine, converters, true_values, false_values, skipinitialspace, skiprows, nrows, na_values, keep_default_na, na_filter, verbose, skip_blank_lines, parse_dates, infer_datetime_format, keep_date_col, date_parser, dayfirst, iterator, chunksize, compression, thousands, decimal, lineterminator, quotechar, quoting, escapechar, comment, encoding, dialect, tupleize_cols, error_bad_lines, warn_bad_lines, skipfooter, skip_footer, doublequote, delim_whitespace, as_recarray, compact_ints, use_unsigned, low_memory, buffer_lines, memory_map, float_precision)\u001b[0m\n\u001b[1;32m 707\u001b[0m skip_blank_lines=skip_blank_lines)\n\u001b[1;32m 708\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 709\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0m_read\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilepath_or_buffer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mkwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 710\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 711\u001b[0m \u001b[0mparser_f\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__name__\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mname\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/opt/conda/lib/python3.6/site-packages/pandas/io/parsers.py\u001b[0m in \u001b[0;36m_read\u001b[0;34m(filepath_or_buffer, kwds)\u001b[0m\n\u001b[1;32m 447\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 448\u001b[0m \u001b[0;31m# Create the parser.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 449\u001b[0;31m \u001b[0mparser\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mTextFileReader\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilepath_or_buffer\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 450\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 451\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mchunksize\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0miterator\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/opt/conda/lib/python3.6/site-packages/pandas/io/parsers.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, f, engine, **kwds)\u001b[0m\n\u001b[1;32m 816\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0moptions\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'has_index_names'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mkwds\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'has_index_names'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 817\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 818\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_make_engine\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mengine\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 819\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 820\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mclose\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/opt/conda/lib/python3.6/site-packages/pandas/io/parsers.py\u001b[0m in \u001b[0;36m_make_engine\u001b[0;34m(self, engine)\u001b[0m\n\u001b[1;32m 1047\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_make_engine\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mengine\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'c'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1048\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mengine\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'c'\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1049\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_engine\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mCParserWrapper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0moptions\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1050\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1051\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mengine\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'python'\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/opt/conda/lib/python3.6/site-packages/pandas/io/parsers.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, src, **kwds)\u001b[0m\n\u001b[1;32m 1693\u001b[0m \u001b[0mkwds\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'allow_leading_cols'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mindex_col\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mFalse\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1694\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1695\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_reader\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparsers\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mTextReader\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msrc\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwds\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1696\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1697\u001b[0m \u001b[0;31m# XXX\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32mpandas/_libs/parsers.pyx\u001b[0m in \u001b[0;36mpandas._libs.parsers.TextReader.__cinit__\u001b[0;34m()\u001b[0m\n", + "\u001b[0;31mEmptyDataError\u001b[0m: No columns to parse from file" + ] + } + ], + "source": [ + "import os.path\n", + "import requests\n", + "\n", + "filename = 'data_7.csv'\n", + "\n", + "if os.path.isfile(filename):\n", + " print(f'{filename} already exists, download not necessary')\n", + "else:\n", + " r = requests.get(data_url)\n", + " with open(filename, 'w') as f:\n", + " f.write(str(r.content))\n", + " print(str(r.content)\n", + " \n", + "raw_data = pd.read_csv(filename, skiprows=1)\n", + "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": 33, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
weekindicatorincinc_lowinc_upinc100inc100_lowinc100_upgeo_inseegeo_name
172419891930NaNNaN0NaNNaNFRFrance
\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low inc100_up \\\n", + "1724 198919 3 0 NaN NaN 0 NaN NaN \n", + "\n", + " geo_insee geo_name \n", + "1724 FR France " + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "raw_data[raw_data.isnull().any(axis=1)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nous éliminons ce point, ce qui n'a pas d'impact fort sur notre analyse qui est assez simple." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
weekindicatorincinc_lowinc_upinc100inc100_lowinc100_upgeo_inseegeo_name
020222131753812255.022821.02618.034.0FRFrance
120222032041316271.024555.03125.037.0FRFrance
220221931787414068.021680.02721.033.0FRFrance
320221833035325089.035617.04638.054.0FRFrance
420221733600630373.041639.05446.062.0FRFrance
520221634994942836.057062.07564.086.0FRFrance
6202215310080690824.0110788.0152137.0167.0FRFrance
72022143155441143891.0166991.0234217.0251.0FRFrance
82022133191914179558.0204270.0289270.0308.0FRFrance
92022123166224155035.0177413.0251234.0268.0FRFrance
102022113122849113306.0132392.0185171.0199.0FRFrance
1120221038790479741.096067.0133121.0145.0FRFrance
1220220935018243958.056406.07667.085.0FRFrance
1320220833096325942.035984.04739.055.0FRFrance
1420220733488229446.040318.05345.061.0FRFrance
1520220634662340398.052848.07061.079.0FRFrance
1620220536297056043.069897.09585.0105.0FRFrance
1720220437220964804.079614.010998.0120.0FRFrance
1820220337461367144.082082.0113102.0124.0FRFrance
1920220235592049511.062329.08474.094.0FRFrance
2020220135762950699.064559.08777.097.0FRFrance
2120215235434947029.061669.08271.093.0FRFrance
2220215134169835359.048037.06353.073.0FRFrance
2320215033811732497.043737.05849.067.0FRFrance
2420214934016834716.045620.06153.069.0FRFrance
2520214834184236364.047320.06355.071.0FRFrance
2620214733659831338.041858.05547.063.0FRFrance
2720214633005925302.034816.04639.053.0FRFrance
2820214532036416564.024164.03125.037.0FRFrance
2920214431899915042.022956.02923.035.0FRFrance
.................................
193119852132609619621.032571.04735.059.0FRFrance
193219852032789620885.034907.05138.064.0FRFrance
193319851934315432821.053487.07859.097.0FRFrance
193419851834055529935.051175.07455.093.0FRFrance
193519851733405324366.043740.06244.080.0FRFrance
193619851635036236451.064273.09166.0116.0FRFrance
193719851536388145538.082224.011683.0149.0FRFrance
19381985143134545114400.0154690.0244207.0281.0FRFrance
19391985133197206176080.0218332.0357319.0395.0FRFrance
19401985123245240223304.0267176.0445405.0485.0FRFrance
19411985113276205252399.0300011.0501458.0544.0FRFrance
19421985103353231326279.0380183.0640591.0689.0FRFrance
19431985093369895341109.0398681.0670618.0722.0FRFrance
19441985083389886359529.0420243.0707652.0762.0FRFrance
19451985073471852432599.0511105.0855784.0926.0FRFrance
19461985063565825518011.0613639.01026939.01113.0FRFrance
19471985053637302592795.0681809.011551074.01236.0FRFrance
19481985043424937390794.0459080.0770708.0832.0FRFrance
19491985033213901174689.0253113.0388317.0459.0FRFrance
195019850239758680949.0114223.0177147.0207.0FRFrance
195119850138548965918.0105060.0155120.0190.0FRFrance
195219845238483060602.0109058.0154110.0198.0FRFrance
1953198451310172680242.0123210.0185146.0224.0FRFrance
19541984503123680101401.0145959.0225184.0266.0FRFrance
1955198449310107381684.0120462.0184149.0219.0FRFrance
195619844837862060634.096606.0143110.0176.0FRFrance
195719844737202954274.089784.013199.0163.0FRFrance
195819844638733067686.0106974.0159123.0195.0FRFrance
19591984453135223101414.0169032.0246184.0308.0FRFrance
196019844436842220056.0116788.012537.0213.0FRFrance
\n", + "

1960 rows × 10 columns

\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low \\\n", + "0 202221 3 17538 12255.0 22821.0 26 18.0 \n", + "1 202220 3 20413 16271.0 24555.0 31 25.0 \n", + "2 202219 3 17874 14068.0 21680.0 27 21.0 \n", + "3 202218 3 30353 25089.0 35617.0 46 38.0 \n", + "4 202217 3 36006 30373.0 41639.0 54 46.0 \n", + "5 202216 3 49949 42836.0 57062.0 75 64.0 \n", + "6 202215 3 100806 90824.0 110788.0 152 137.0 \n", + "7 202214 3 155441 143891.0 166991.0 234 217.0 \n", + "8 202213 3 191914 179558.0 204270.0 289 270.0 \n", + "9 202212 3 166224 155035.0 177413.0 251 234.0 \n", + "10 202211 3 122849 113306.0 132392.0 185 171.0 \n", + "11 202210 3 87904 79741.0 96067.0 133 121.0 \n", + "12 202209 3 50182 43958.0 56406.0 76 67.0 \n", + "13 202208 3 30963 25942.0 35984.0 47 39.0 \n", + "14 202207 3 34882 29446.0 40318.0 53 45.0 \n", + "15 202206 3 46623 40398.0 52848.0 70 61.0 \n", + "16 202205 3 62970 56043.0 69897.0 95 85.0 \n", + "17 202204 3 72209 64804.0 79614.0 109 98.0 \n", + "18 202203 3 74613 67144.0 82082.0 113 102.0 \n", + "19 202202 3 55920 49511.0 62329.0 84 74.0 \n", + "20 202201 3 57629 50699.0 64559.0 87 77.0 \n", + "21 202152 3 54349 47029.0 61669.0 82 71.0 \n", + "22 202151 3 41698 35359.0 48037.0 63 53.0 \n", + "23 202150 3 38117 32497.0 43737.0 58 49.0 \n", + "24 202149 3 40168 34716.0 45620.0 61 53.0 \n", + "25 202148 3 41842 36364.0 47320.0 63 55.0 \n", + "26 202147 3 36598 31338.0 41858.0 55 47.0 \n", + "27 202146 3 30059 25302.0 34816.0 46 39.0 \n", + "28 202145 3 20364 16564.0 24164.0 31 25.0 \n", + "29 202144 3 18999 15042.0 22956.0 29 23.0 \n", + "... ... ... ... ... ... ... ... \n", + "1931 198521 3 26096 19621.0 32571.0 47 35.0 \n", + "1932 198520 3 27896 20885.0 34907.0 51 38.0 \n", + "1933 198519 3 43154 32821.0 53487.0 78 59.0 \n", + "1934 198518 3 40555 29935.0 51175.0 74 55.0 \n", + "1935 198517 3 34053 24366.0 43740.0 62 44.0 \n", + "1936 198516 3 50362 36451.0 64273.0 91 66.0 \n", + "1937 198515 3 63881 45538.0 82224.0 116 83.0 \n", + "1938 198514 3 134545 114400.0 154690.0 244 207.0 \n", + "1939 198513 3 197206 176080.0 218332.0 357 319.0 \n", + "1940 198512 3 245240 223304.0 267176.0 445 405.0 \n", + "1941 198511 3 276205 252399.0 300011.0 501 458.0 \n", + "1942 198510 3 353231 326279.0 380183.0 640 591.0 \n", + "1943 198509 3 369895 341109.0 398681.0 670 618.0 \n", + "1944 198508 3 389886 359529.0 420243.0 707 652.0 \n", + "1945 198507 3 471852 432599.0 511105.0 855 784.0 \n", + "1946 198506 3 565825 518011.0 613639.0 1026 939.0 \n", + "1947 198505 3 637302 592795.0 681809.0 1155 1074.0 \n", + "1948 198504 3 424937 390794.0 459080.0 770 708.0 \n", + "1949 198503 3 213901 174689.0 253113.0 388 317.0 \n", + "1950 198502 3 97586 80949.0 114223.0 177 147.0 \n", + "1951 198501 3 85489 65918.0 105060.0 155 120.0 \n", + "1952 198452 3 84830 60602.0 109058.0 154 110.0 \n", + "1953 198451 3 101726 80242.0 123210.0 185 146.0 \n", + "1954 198450 3 123680 101401.0 145959.0 225 184.0 \n", + "1955 198449 3 101073 81684.0 120462.0 184 149.0 \n", + "1956 198448 3 78620 60634.0 96606.0 143 110.0 \n", + "1957 198447 3 72029 54274.0 89784.0 131 99.0 \n", + "1958 198446 3 87330 67686.0 106974.0 159 123.0 \n", + "1959 198445 3 135223 101414.0 169032.0 246 184.0 \n", + "1960 198444 3 68422 20056.0 116788.0 125 37.0 \n", + "\n", + " inc100_up geo_insee geo_name \n", + "0 34.0 FR France \n", + "1 37.0 FR France \n", + "2 33.0 FR France \n", + "3 54.0 FR France \n", + "4 62.0 FR France \n", + "5 86.0 FR France \n", + "6 167.0 FR France \n", + "7 251.0 FR France \n", + "8 308.0 FR France \n", + "9 268.0 FR France \n", + "10 199.0 FR France \n", + "11 145.0 FR France \n", + "12 85.0 FR France \n", + "13 55.0 FR France \n", + "14 61.0 FR France \n", + "15 79.0 FR France \n", + "16 105.0 FR France \n", + "17 120.0 FR France \n", + "18 124.0 FR France \n", + "19 94.0 FR France \n", + "20 97.0 FR France \n", + "21 93.0 FR France \n", + "22 73.0 FR France \n", + "23 67.0 FR France \n", + "24 69.0 FR France \n", + "25 71.0 FR France \n", + "26 63.0 FR France \n", + "27 53.0 FR France \n", + "28 37.0 FR France \n", + "29 35.0 FR France \n", + "... ... ... ... \n", + "1931 59.0 FR France \n", + "1932 64.0 FR France \n", + "1933 97.0 FR France \n", + "1934 93.0 FR France \n", + "1935 80.0 FR France \n", + "1936 116.0 FR France \n", + "1937 149.0 FR France \n", + "1938 281.0 FR France \n", + "1939 395.0 FR France \n", + "1940 485.0 FR France \n", + "1941 544.0 FR France \n", + "1942 689.0 FR France \n", + "1943 722.0 FR France \n", + "1944 762.0 FR France \n", + "1945 926.0 FR France \n", + "1946 1113.0 FR France \n", + "1947 1236.0 FR France \n", + "1948 832.0 FR France \n", + "1949 459.0 FR France \n", + "1950 207.0 FR France \n", + "1951 190.0 FR France \n", + "1952 198.0 FR France \n", + "1953 224.0 FR France \n", + "1954 266.0 FR France \n", + "1955 219.0 FR France \n", + "1956 176.0 FR France \n", + "1957 163.0 FR France \n", + "1958 195.0 FR France \n", + "1959 308.0 FR France \n", + "1960 213.0 FR France \n", + "\n", + "[1960 rows x 10 columns]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data = raw_data.dropna().copy()\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nos données utilisent une convention inhabituelle: le numéro de\n", + "semaine est collé à l'année, donnant l'impression qu'il s'agit\n", + "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\n", + "semaine. Il faut lui fournir les dates de début et de fin de\n", + "semaine. Nous utilisons pour cela la bibliothèque `isoweek`.\n", + "\n", + "Comme la conversion des semaines est devenu assez complexe, nous\n", + "écrivons une petite fonction Python pour cela. Ensuite, nous\n", + "l'appliquons à tous les points de nos donnés. Les résultats vont\n", + "dans une nouvelle colonne 'period'." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "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": [ + "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": 8, + "metadata": {}, + "outputs": [], + "source": [ + "sorted_data = data.set_index('period').sort_index()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "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.\n", + "\n", + "Ceci s'avère tout à fait juste sauf pour deux périodes consécutives\n", + "entre lesquelles il manque une semaine.\n", + "\n", + "Nous reconnaissons ces dates: c'est la semaine sans observations\n", + "que nous avions supprimées !" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1989-05-01/1989-05-07 1989-05-15/1989-05-21\n" + ] + } + ], + "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": [ + "Un premier regard sur les données !" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sorted_data['inc'].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Un zoom sur les dernières années montre mieux la situation des pics en hiver. Le creux des incidences se trouve en été." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAY0AAAEKCAYAAADuEgmxAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzt3XmYlNWZ8P/v3V290Qt0N82OgoAoYkQhaNyyGNGsmnc0IZNEkpgh45hM4kzeGc3MvDom5hcziSYmP3Uc5RXNosaYSOKK+xIFG0UREGn2vaH3tdb7/eM5VVR3V3dXL9TSfX+uq66qPvU8p58qmrrrnPssoqoYY4wxychJ9wUYY4zJHhY0jDHGJM2ChjHGmKRZ0DDGGJM0CxrGGGOSZkHDGGNM0ixoGGOMSZoFDWOMMUmzoGGMMSZpvnRfwHAbP368zpgxI92XYYwxWWXdunVHVLWqv+NGXNCYMWMG1dXV6b4MY4zJKiKyK5njrHvKGGNM0ixoGGOMSVrSQUNEckXkLRH5i/u5QkRWi8hWd18ed+x1IlIjIltE5KK48oUissE9d5uIiCsvEJEHXfkaEZkRd84y9zu2isiy4XjRxhhjBmcgLY3vAJvjfr4WeFZV5wDPup8RkXnAUuAU4GLgdhHJdefcASwH5rjbxa78SqBBVWcDtwI3u7oqgOuBM4HFwPXxwckYY0xqJRU0RGQa8Cng7rjiS4CV7vFK4NK48gdU1a+qO4AaYLGITAbKVPU19TbxuK/bOdG6HgYucK2Qi4DVqlqvqg3Aao4GGmOMMSmWbEvj58C/AJG4somqegDA3U9w5VOBPXHH7XVlU93j7uVdzlHVENAEVPZRVxcislxEqkWk+vDhw0m+JGOMMQPVb9AQkU8Dtaq6Lsk6JUGZ9lE+2HOOFqjepaqLVHVRVVW/w4yNMcYMUjItjXOAz4rITuAB4GMi8mvgkOtywt3XuuP3AtPjzp8G7Hfl0xKUdzlHRHzAWKC+j7pGrXW7Gnh3X1O6L8MYM0r1GzRU9TpVnaaqM/AS3M+p6peBVUB0NNMy4FH3eBWw1I2ImomX8F7rurBaROQsl6+4ots50bouc79DgaeAJSJS7hLgS1zZqPV/Hn2Xnz69Jd2XYYwZpYYyI/zHwEMiciWwG7gcQFU3ishDwCYgBFytqmF3zlXAvUAR8IS7AdwD3C8iNXgtjKWurnoR+QHwhjvuRlWtH8I1Z7261gDF+SNuIr8xJksM6NNHVV8AXnCP64ALejnuJuCmBOXVwPwE5Z24oJPguRXAioFc50ilqtS3BZhQVpDuSzHGjFI2IzyLtAXCBMIROoPh/g82xphjwIJGFmloCwDQGYz0c6QxxhwbFjSySH0saFhLwxiTHhY0skh9uwUNY0x6WdDIIvWtLmiErHvKGJMeFjSySINraQRCESKRHhPjjTHmmLOgkUWiOQ0Av7U2jDFpYEEji0RbGmB5DWNMeljQyCJ1rXFBI2RBwxiTehY0skjXloZ1TxljUs+CRhapbwuQm+OtFm/dU8aYdLCgkUUa2oNMKisELGgYY9LDgkaWCEeUhvYAU8ZFg4Z1TxljUs+CRpZo6giiCpPHFgGWCDfGpIcFjSwRnaMx2bU0/NY9ZYxJAwsaWSI6cmpKtKVh3VPGmDToN2iISKGIrBWRt0Vko4j8pyu/QUT2ich6d/tk3DnXiUiNiGwRkYviyheKyAb33G1u21fc1rAPuvI1IjIj7pxlIrLV3ZYxSkWXRZ801hLhxpj0SWbnPj/wMVVtFZE84BURiW7Tequq/jT+YBGZh7dd6ynAFOAZETnRbfl6B7AceB14HLgYb8vXK4EGVZ0tIkuBm4EviEgFcD2wCFBgnYisUtWGob3s7BNdpLB8TD5gy4gYY9Kj35aGelrdj3nu1tdqeZcAD6iqX1V3ADXAYhGZDJSp6muqqsB9wKVx56x0jx8GLnCtkIuA1apa7wLFarxAM+oEXJAoK/LivLU0jDHpkFROQ0RyRWQ9UIv3Ib7GPfUtEXlHRFaISLkrmwrsiTt9ryub6h53L+9yjqqGgCagso+6ul/fchGpFpHqw4cPJ/OSsk40aJQW5gGW0zDGpEdSQUNVw6q6AJiG12qYj9fVNAtYABwAfuYOl0RV9FE+2HPir+8uVV2kqouqqqr6fC3ZKuCG2Bb6csjLFRtya4xJiwGNnlLVRuAF4GJVPeSCSQT4H2CxO2wvMD3utGnAflc+LUF5l3NExAeMBer7qGvUCYa9WJnvy6HQl2vdU8aYtEhm9FSViIxzj4uAjwPvuRxF1OeAd93jVcBSNyJqJjAHWKuqB4AWETnL5SuuAB6NOyc6Muoy4DmX93gKWCIi5a77a4krG3UCYa87Kt+XQ0FernVPGWPSIpnRU5OBlSKSixdkHlLVv4jI/SKyAK+7aCfwTQBV3SgiDwGbgBBwtRs5BXAVcC9QhDdqKjoK6x7gfhGpwWthLHV11YvID4A33HE3qmr9EF5v1oqOlsrPzaEwL8cm9xlj0qLfoKGq7wCnJyj/Sh/n3ATclKC8GpifoLwTuLyXulYAK/q7zpEuEIqQn5uDiFCYl2s5DWNMWtiM8CwRCEXIy/XGBRTm5Vj3lDEmLSxoZIlgOEK+z/vnskS4MSZdLGhkiUAoLmjkWdAwxqSHBY0sEYhvaVj3lDEmTSxoZAkvp+H9cxVYItwYkyYWNLKE342eAi+n4beWhjEmDSxoZIlgOEJBl+4pa2kYY1LPgkaWiE+EF9joKWNMmljQyBI9EuG2n4YxJg0saGSJ+ER4YV4u4YgSDFvgMMaklgWNLBEMxyXC87x766IyxqSaBY0s0X1yH9hGTMaY1LOgkSX8oa7LiHhl1tIwxqSWBY0sEYgbclsQ656yloYxJrUsaGSJ7olwsJyGMSb1LGhkia6JcOueMsakRzLbvRaKyFoReVtENorIf7ryChFZLSJb3X153DnXiUiNiGwRkYviyheKyAb33G1u21fc1rAPuvI1IjIj7pxl7ndsFZFljFJdJ/d5936bq2GMSbFkWhp+4GOqehqwALhYRM4CrgWeVdU5wLPuZ0RkHt52racAFwO3u61iAe4AluPtGz7HPQ9wJdCgqrOBW4GbXV0VwPXAmcBi4Pr44DRaRCJKKKKxoBHdjCkY1nReljFmFOo3aKin1f2Y524KXAKsdOUrgUvd40uAB1TVr6o7gBpgsYhMBspU9TVVVeC+budE63oYuMC1Qi4CVqtqvao2AKs5GmhGjYCbxBfNaUTvg9bSMMakWFI5DRHJFZH1QC3eh/gaYKKqHgBw9xPc4VOBPXGn73VlU93j7uVdzlHVENAEVPZR16gSDRoFvq5BIxSxoGGMSa2kgoaqhlV1ATANr9Uwv4/DJVEVfZQP9pyjv1BkuYhUi0j14cOH+7i07BRwLYr8bkEjYN1TxpgUG9DoKVVtBF7A6yI65LqccPe17rC9wPS406YB+135tATlXc4RER8wFqjvo67u13WXqi5S1UVVVVUDeUlZIRY0XLDIt+4pY0yaJDN6qkpExrnHRcDHgfeAVUB0NNMy4FH3eBWw1I2ImomX8F7rurBaROQsl6+4ots50bouA55zeY+ngCUiUu4S4Etc2ajSvaXhiyXCLWgYY1LLl8Qxk4GVbgRUDvCQqv5FRF4DHhKRK4HdwOUAqrpRRB4CNgEh4GpVjU4ouAq4FygCnnA3gHuA+0WkBq+FsdTVVS8iPwDecMfdqKr1Q3nB2ajXRLgFDWNMivUbNFT1HeD0BOV1wAW9nHMTcFOC8mqgRz5EVTtxQSfBcyuAFf1d50jWvaUR656ynIYxJsVsRngWiLY0Yolwn3VPGWPSw4JGFoi2NApcC8OXY91Txpj0sKCRBXoOufVaGjbk1hiTahY0skA0aEQT4CJCXq5YS8MYk3IWNLJAsFtOA7wAErKgYYxJMQsaWaB7Ihy8oGGjp4wxqWZBIwv4u80IBy+vEbCWhjEmxSxoZIHuiXBwLQ1bRsQYk2IWNLJALKeR2y2nEbHuKWNMalnQyAKJWxrWPWWMST0LGlnAuqeMMZnCgkYWCIQjiIAv5+j2It7oKQsaxpjUsqCRBQKhCHm5OXgrynu8yX2W0zDGpJYFjSwQCEdi605FWUvDGJMOFjSyQCAU6ZLPAC+/YUHDGJNqFjSyQKKgYTPCjTHpkMx2r9NF5HkR2SwiG0XkO678BhHZJyLr3e2TcedcJyI1IrJFRC6KK18oIhvcc7e5bV9xW8M+6MrXiMiMuHOWichWd1vGKBQI9wwavhxbsNAYk3rJbPcaAv5ZVd8UkVJgnYisds/dqqo/jT9YRObhbdd6CjAFeEZETnRbvt4BLAdeBx4HLsbb8vVKoEFVZ4vIUuBm4AsiUgFcDywC1P3uVaraMLSXnV2C4UhshduoPF+OzdMwxqRcvy0NVT2gqm+6xy3AZmBqH6dcAjygqn5V3QHUAItFZDJQpqqvqaoC9wGXxp2z0j1+GLjAtUIuAlarar0LFKvxAs2oEghFuswGB292eMi6p4wxKTagnIbrNjodWOOKviUi74jIChEpd2VTgT1xp+11ZVPd4+7lXc5R1RDQBFT2Udeo4k+Y07DuKWNM6iUdNESkBPgD8F1VbcbrapoFLAAOAD+LHprgdO2jfLDnxF/bchGpFpHqw4cP9/k6slGiRLjPhtwaY9IgqaAhInl4AeM3qvoIgKoeUtWwqkaA/wEWu8P3AtPjTp8G7Hfl0xKUdzlHRHzAWKC+j7q6UNW7VHWRqi6qqqpK5iVllUA4cfdUwJYRMcakWDKjpwS4B9isqrfElU+OO+xzwLvu8SpgqRsRNROYA6xV1QNAi4ic5eq8Ang07pzoyKjLgOdc3uMpYImIlLvuryWubFQJJhg9ZTPCjTHpkMzoqXOArwAbRGS9K/s+8EURWYDXXbQT+CaAqm4UkYeATXgjr652I6cArgLuBYrwRk094crvAe4XkRq8FsZSV1e9iPwAeMMdd6Oq1g/upWavRIlwb2l0a2kYY1Kr36Chqq+QOLfweB/n3ATclKC8GpifoLwTuLyXulYAK/q7zpGsr8l9qtplTSpjjDmWbEZ4FvCHIhTm9eyeAqyLyhiTUhY0skBnMEyBL7dLWXSyn42gMsakkgWNLOAPRShI0D0F2AQ/Y0xKWdDIAl73VLeWhgsitpSIMSaVLGhkuGA4QjiiPVoa+bGchgUNY0zqWNDIcH43ga8gr/sqt5bTMMakngWNDOcPelNceuuesqBhjEklCxoZrjPa0ui1e8oS4caY1LGgkeGiLQ0bcmuMyQQWNDKcv5eWhgUNY0w6WNDIcNGg0T2n4XPdU4GQdU8ZY1LHgkaG64x1T/VcGh2spWGMSS0LGhmutyG3sRnhttKtMSaFLGhkuP4S4dY9ZYxJJQsaGa4zltPobZVba2kYY1LHgkaGsyG3w2tPfXu6L8GYrJbMdq/TReR5EdksIhtF5DuuvEJEVovIVndfHnfOdSJSIyJbROSiuPKFIrLBPXeb2/YVtzXsg658jYjMiDtnmfsdW0VkGaNMrzkNmxE+YOt2NXDeT57nnb2N6b4UY7JWMi2NEPDPqnoycBZwtYjMA64FnlXVOcCz7mfcc0uBU4CLgdtFJPo1+Q5gOd6+4XPc8wBXAg2qOhu4FbjZ1VUBXA+cCSwGro8PTqNBZ68tDZsRPlDRYPHewZY0X4kx2avfoKGqB1T1Tfe4BdgMTAUuAVa6w1YCl7rHlwAPqKpfVXcANcBiEZkMlKnqa6qqwH3dzonW9TBwgWuFXASsVtV6VW0AVnM00IwKvU3usyG3A1dT2wpYF5UxQzGgnIbrNjodWANMVNUD4AUWYII7bCqwJ+60va5sqnvcvbzLOaoaApqAyj7qGjV6Cxo+CxoDttUFjd0WNIwZtKSDhoiUAH8AvquqzX0dmqBM+ygf7Dnx17ZcRKpFpPrw4cN9XFr28YfCFPhycOmfGOueGrhtFjSMGbKkgoaI5OEFjN+o6iOu+JDrcsLd17ryvcD0uNOnAftd+bQE5V3OEREfMBao76OuLlT1LlVdpKqLqqqqknlJWcMf7LnVK0Ce7acxIHWtfuraAuTmiHVPGTMEyYyeEuAeYLOq3hL31CogOpppGfBoXPlSNyJqJl7Ce63rwmoRkbNcnVd0Oyda12XAcy7v8RSwRETKXQJ8iSsbNfyhMAXd1p0CyMkRfDliQSNJ0XzGwuPLOdIaoM0fSvMVGZOdkmlpnAN8BfiYiKx3t08CPwYuFJGtwIXuZ1R1I/AQsAl4ErhaVcOurquAu/GS49uAJ1z5PUCliNQA/4QbiaWq9cAPgDfc7UZXNmr4g5EeE/ui8nJzrHsqSTWHvaBxwUle6m1vQ0c6L8eYfv37nzbw/Jba/g9MMV9/B6jqKyTOLQBc0Ms5NwE3JSivBuYnKO8ELu+lrhXAiv6uc6TqDIV7DLeN8uUKgZC1NJKx9VArY/JzWTyzAvDyGnMnlab5qoxJrDMY5tev7yai8NG5E/o/IYVsRniG6y2nAd6wW+ueSs62w63Mqirh+MpiwJLhJrPtb/RawnWt/jRfSU8WNDKcP9R70MjLzSFk3VNJOdIaYGJZIeVj8igp8Fky3GS0/Y2dANS3BdJ8JT1Z0MhwncFwjw2YovJ8lghPVnsgRHFBLiLC9Iox1tIwGW1fo/f3WddqQcMMUH8tjYAFjaS0+cOMyfdSeFPGFnKgqTPNV2RM7/a5lkadtTTMQPn7SITn5VhOI1ntgRDF+d77OG5MPo3tmfef0ZioaE6jqSOYcf/HLWhkOH+ojyG3PrEht0mIRJSOYJgxBV5Lo6I4jwYLGiaD7YsbEt6QYa0NCxoZrjPYR0vDRk8lpTMURpUuLY3OYISOQLifM41Jj/1NHbFu6UzrorKgkeH8oUiPvTSiLGgkp83vBYejLY18AGttmIwUiSgHGjuZN6UMyLwRVBY0Mpw3IzxxSyM/N8cm9yWhPeAtGRJtaZSP8YJGpv1nNAbgSKufQDjCB6aOjf2cSSxoZDBVdTPCE/8zFfhyYkunm97FWhqxoJEHQGN7MG3XZExv9rkk+HwXNDLty40FjQwWDCuqPffSiCrMy43t7Gd6F21pRIfcRrun6q17ymSg6MS+eVPKyJHMm6thQSOD+UOJt3qNKsjLoTNoLY3+tLmEd3HB0UQ4YMNuTUaKDredVj6GiuJ8S4Sb5EUDQm9DbouspZGUdn/XlsY41z2Vac1+YwCOtPnJ9+VQVuijsriA+jbLaZgk9dfSsO6p5MRaGi5o5OV6/yEtp2EyUVN7kHFFeYiI19Kw7imTrNj+4L20NArzcugMRfD2qzK96YjmNAqOBt/y4nxraZiM1NgejLWGK0oy7+/UgkYG87vuqd5aGkV5uYQjarPC+9G9pQHesFubp2EyUWNHgHFFXt5tfDbmNERkhYjUisi7cWU3iMi+bjv5RZ+7TkRqRGSLiFwUV75QRDa4525zW77itoV90JWvEZEZcecsE5Gt7hbdDnbU6Ix2T/Xa0sjtcpxJrN0fQqRrbqh8jC0lYjJTY3uQsdGWRnFBxq0/lUxL417g4gTlt6rqAnd7HEBE5gFLgVPcObeLSPRr8h3Acrw9w+fE1Xkl0KCqs4FbgZtdXRXA9cCZwGLgerdP+KhxtKXRyzyNaNCwvEaf2gJhxuR5y6JHlRfn09BmOQ2TeZo6vJwGeOukQWbNKeo3aKjqS0Cy+3JfAjygqn5V3YG3F/hiEZkMlKnqa+p1wN8HXBp3zkr3+GHgAtcKuQhYrar1qtoArCZx8Bqxoonw3maEF7pg4rdht31qD4RiS4hEWfeUyVTxOY3SQu++pTOLgkYfviUi77juq2gLYCqwJ+6Yva5sqnvcvbzLOaoaApqAyj7qGjU6+2lpFLkZzh3W0uhTmz8cW0IkqqI4n/ZA2FppJqN0BsN0BMOxuUSlhd6XnZbOUDovq4vBBo07gFnAAuAA8DNXLgmO1T7KB3tOFyKyXESqRaT68OHDfV13Vul3yK3PuqeS0R4IxeZoRJXHJvhlzjc4Y5o7vL/Hsa57qqRghAQNVT2kqmFVjQD/g5dzAK81MD3u0GnAflc+LUF5l3NExAeMxesO662uRNdzl6ouUtVFVVVVg3lJGam/nEYsEW7dU31q84djs8GjoutPWReVySSNLmh0755q9WfOl5tBBQ2Xo4j6HBAdWbUKWOpGRM3ES3ivVdUDQIuInOXyFVcAj8adEx0ZdRnwnMt7PAUsEZFy1/21xJWNGkfXTOptcp/3z2ctjb4lbGlEl0fPsOGMZnRrigaNoq7dU80Z1NLw9XeAiPwO+AgwXkT24o1o+oiILMDrLtoJfBNAVTeKyEPAJiAEXK2q0U+0q/BGYhUBT7gbwD3A/SJSg9fCWOrqqheRHwBvuONuVNVkE/IjQodrQXT/wIsqtNFTSWkLhJla3jXwVrqgccSChskg0e7SaEujLJYIz6KgoapfTFB8Tx/H3wTclKC8GpifoLwTuLyXulYAK/q7xpGqI9BzfkG8aNCwRHjfOgJhivK6/qmPLykA4EhLZq3rY0a36CKa0ZxGtFt1pIyeMsdYeyBMUbf5BfGiwcSG3PatLRDqkdMYW5RHXq5k3AY3ZnSLdk9FJ/f5cnMYk59Lawa1NCxoZLD2YLjXfAbYjPBktfvDPbr4cnKEyuICDltLw2SQxvYguTlCady8otJCX0Z1T1nQyGAdgXBsLkYiRZbT6FcgFCEQjvSYpwFQVVpgLQ2TURo7Aox1K9xGlRbm0ZLto6dMarQHQrHAkEgspxGw7qnedLjFCrvPCAcYX5LPYQsaJoM0th9dQiTKWhomae2BMEW9jJwCyM0R8nLFuqf60OaGLffW0rDuKZNJmjqOLlYYVVLgy6ghtxY0MliHW2ivL4U+24ipL7G5LglbGgXUtQaIRGxpeZMZErU0ygrzaLXRUyYZ7YG+E+EAhfm5NiO8D23+6F4aiVsaoYjGZuEak26NHYHYulNR1j1lktYZ7DsRDm73Pmtp9CraPZXofYzN1bC8hskQje3B2ByNKAsaJmlJtTSse6pPsUR4gtxQVakXNCyvYTJBKByhpTPUI2iUFOTREQxnzEZMFjQyWKI1k7orzLOg0Zdm1xdcVpg4pwHW0jCZod7NBh9f0rN7CqDNnxmtDQsaGawjie6pojzLafTl6Fo++T2es5aGySRHWqJBo6BLeabtqWFBI0MFwxGCYe139FRBXo6tPdWHaNBI1NIoK/SR78uxoGEyQl2b93dY2SNoeN1VzRkygsqCRoZqd33x/SfCrXuqL00dQUoLffhye/6piwhVJQWxCX7BcCQ2RNeYVKtr9Voalb10T1lLw/SpYwBBwx+y7qneNHX0HI0Sb3zcBL8bVm3kwlteir33xqRSNLfWW/dUpixaaEEjQ/W3AVNUkQ257VNjeyC2N0EiVSUF7Kprp6kjyCNv7mNfYwcrXt2Rwis0xnOkNUBervToSo12T2XK+lMWNDJUrHsqr//RU5bT6F1jRzC2C1oin/7AZHbXt/MPv1lHRzDMiRNLuPOFbdz98nb+/HbC3YWNOSbqWv1UFhf02Aoh67qnRGSFiNSKyLtxZRUislpEtrr78rjnrhORGhHZIiIXxZUvFJEN7rnb3LavuK1hH3Tla0RkRtw5y9zv2Coi0S1hR4Vo66HfeRqW0+hTorV84n32tCnMn1rGqzV1nDSplF/97Rl0BMP88LHN/PNDb+PtPGzMsVfXFmB8ac8vOFkXNPC2aL24W9m1wLOqOgd41v2MiMzD2671FHfO7SIS/dS7A1iOt2/4nLg6rwQaVHU2cCtws6urAm9r2TOBxcD18cFppGsPJBk0fDl0BiP24daLpgQzbOPl5Ajf/8TJAPztmcdx4sRSXvyXj/KPH5tNIBzJqIXizMh2xLU0uivw5ZKfm5M9QUNVX8LbuzveJcBK93glcGlc+QOq6lfVHUANsFhEJgNlqvqaep9u93U7J1rXw8AFrhVyEbBaVetVtQFYTc/gNWIlPXrKPW/J8J5U1XVP9R40AM6ePZ6nrzmfL595PABTxxUxs6oYgHrbQ9ykSF1roMfIqShvKZHszmlMVNUDAO5+giufCuyJO26vK5vqHncv73KOqoaAJqCyj7pGhY5gNBHeT07DZxsx9abVHyIc0T4T4VEnTiwlJ+doX3KF+8ZXZ7PFTQqoKkda/VSV9GxpQGatPzXcifBEm1lrH+WDPafrLxVZLiLVIlJ9+PDhpC400yXdPRXbvc9aGt1F91vuKxHem8pi75wjrdbSMMdeWyCMPxTpo6WRl/UtjUOuywl3X+vK9wLT446bBux35dMSlHc5R0R8wFi87rDe6upBVe9S1UWquqiqqmqQLymzJD9Pw/sntJZGT7HZ4P10TyUSHStv3VMmFY64uUKJchrgbcSU7S2NVUB0NNMy4NG48qVuRNRMvIT3WteF1SIiZ7l8xRXdzonWdRnwnMt7PAUsEZFylwBf4spGhaNDbvtfewqw3fsSiLU0kuie6q682DvHuqdMKkSXEBlf2nv3VGuGLFjYd4c5ICK/Az4CjBeRvXgjmn4MPCQiVwK7gcsBVHWjiDwEbAJCwNWqGv00uwpvJFYR8IS7AdwD3C8iNXgtjKWurnoR+QHwhjvuRlXtnpAfsdoDYfJyhbwEy1/EO7pPuAWN7o4uVjjwoFHgy6W00EedtTRMCkS7QaPdot153VNZEjRU9Yu9PHVBL8ffBNyUoLwamJ+gvBMXdBI8twJY0d81jkQdgVC/rQzwFiwEy2kkMpScBnj/gS1omFSIrjvVfQmRqNJCny1YaPrWEQz3O3IK4hLh1j3VQ2OH9x+xr3kafaksKbDuKZMS0XWnKnppaZS57qlM2M/egkaGSmbXPji65HemNF0zSVN7kHxfTmywwEBVFudbItykRF2rP7ZUfyIlhT5UoT0DBrxY0MhQHYH+N2CCo/MJ6u0bcQ+N7d7Evu5r+SSrsiTfhtyalKhvD/bYRyNebNHCDOiisqCRoZJtaYwtykPE+6MzXTV1BAeVBI+qLC6goT2QEV0CZmSrb/P32jUFmbX+lAWNDNUeDFOURE4jN0cYV5RHg3Wj9NDYERh0PgO8/uVwRGMgsRsMAAAfRklEQVQJdWOOlbrWAOUJtiSOspaG6VdHINTvVq9R5cX5sU3pzVGN7UHGDnLkFBzdQS06ht6YY6WhPdDrcFvwJveBtTRMH5LtngKoGJNvLY0Ealv8VPUyWSoZ0dm5ltcwx5KqUt8WoKKXJUQgswa8WNDIUC2dIYoL+u+eAtfSsKDRRXsgRH1bgGnlRYOuI9rSsPfWDMah5k4+f+drPL3xYJ/HtfhDBMNKRVLdUxY0TAJt/hBNHUEmjytM6ngbGtrTvoYOgGEJGjZXwwzGqzVHWLuznuX3r+Pul7f3ely0lyC5RLjlNEwC+xq9D7yp45L7wCsvzqehPWAbMcXZO8D3MJGKMfmIwGHrnjKDsLW2lbxc4bw54/nFs1vx9zIBN7rqQF/dU2Pyc8kRa2mYXgz0W3LFmHyCYc2YBc0ywd7Yezhm0HX4cnOoLM7ncEvncF2WGUW2Hmpl5vhivn7OTFo6Q/y1pi7hcbGWRh/dUyJCSUFmLFpoQSMDHW1pJPeBV+6atQ1t6W+6Zop9DR3k5QoThpAIB6gqLaS22bqnzMBtO9zK7AklnD27ktJCH49vOJDwuLokuqfAy2tkwvpTFjQy0L7GgX3gVUSX8bahoTH7GjuYMq6oy258gzGxrIBD1tIwA9QZDLOrro3ZE0op8OVy4ckTeXrTIYLhnguLRvORvW3AFJUpu/dZ0MhA+xo6mDS2MOkPvOikoAabqxGzt6F9SPmMqAmlBdbSMAO240gbEYU5E0oA+MSpk2nqCLJme8/dHRraAhT4cvpd1bosQ3bvs6CRgfY1dgzoAy/arK237qmYfQ0dQxo5FTWxrJAjrX7CtpSIGYCtta0AzHZBY/HMCgDe2dfY49i6Nm9iX39rpJVkyEZMFjQy0L6GjqTzGXA0aNgEP09nMExti39A72FvJpQWEFEbdmuSEwhFeGXrEd470EyOwMzxxYC3RtzUcUVsPtDS45z6tkAsL9mXTOmeSm72mEmZQCjCoZZOpg7gW3JJgY+8XLGlRJwDTV4OYiDvYW8mlHlzZWpb/LHHxiQSjijXPLiex1zCe+b44th+NwDzppSxaX9Tj/Pq2wL9JsEhc4LGkFoaIrJTRDaIyHoRqXZlFSKyWkS2uvvyuOOvE5EaEdkiIhfFlS909dSIyG1uH3HcXuMPuvI1IjJjKNebDQ41d6IK0wbQPSUilI/Jp97mEwBePgOGNrEvKjoY4VCzJcNN3256bDOPbTjAFR86npMnl/HRuRO6PD9vchnbj7TRHuj6wV/f1ve6U1GlLqeR7vlYw9HS+KiqHon7+VrgWVX9sYhc637+VxGZh7f/9ynAFOAZETnR7SF+B7AceB14HLgYbw/xK4EGVZ0tIkuBm4EvDMM1Z6zo/IIpA0ziVtiihTG76oYvaEyMa2kY05tgOMIDb+zmc6dP5cZLeuxqDcDJk8tQhS0HWzj9uNh36QF1TwXDij8U6dKCSbVjkdO4BFjpHq8ELo0rf0BV/aq6A6gBFovIZKBMVV9TL4Te1+2caF0PAxdIf9miLBebozHAD7xyW7QwZsvBFkoLfMMyeiq6Z7O1NExfNu5vpj0Q5oKTJ/R6zClTygC65DX8oTCt/lByLY0MWel2qEFDgadFZJ2ILHdlE1X1AIC7j76LU4E9cefudWVT3ePu5V3OUdUQ0ARUdr8IEVkuItUiUn348OEhvqT02ri/icK8nAF/4FWVFnDQPtgA2HygmZMmlw56x754+T5vVri1NExf1u7wZnsvnlHR6zHTyosoLfCx6cDRvMaBRu//bDL5suiKzfvdF8t0GWrQOEdVzwA+AVwtIuf3cWyi/8HaR3lf53QtUL1LVRep6qKqqqr+rjmjrd1RzxnHlfe6V3BvZlWVsK+xo0d/6Wijqrx3sIWTJpUNW51VNlfD9GPtjgZmVI7p88NfRDh5chkb9zfHyrYd7jo0ty8fmDYOgPV7eg7bTaUhBQ1V3e/ua4E/AouBQ67LCXdf6w7fC0yPO30asN+VT0tQ3uUcEfEBY4Ges2NGiKaOIJsONMfGdA/EiRNLUIVttW3H4Mqyx96GDlr9IU6ePHxBY2JZIbVZMit8b0M7P37iPZatWMuj6/elPWk6GkQiyhs765P6f7vguHG8u6+JjoC3eGGNm88xq6r/oDF5bCETywp4a3fD0C54iAYdNESkWERKo4+BJcC7wCpgmTtsGfCoe7wKWOpGRM0E5gBrXRdWi4ic5fIVV3Q7J1rXZcBzOoL/F1TvrEcVzpzZoweuX3MmlgLw/qGe48BHk80HvG9xJ00uHbY6s2lW+DUPruful7ez9VAL33lgPf/x6LvpvqQR57VtdWx3LQSA92tbaOoIsjiJ/7dnz6okGFaqd3nffbcdbqWqtCCpbYlFhAXTx/FWFrc0JgKviMjbwFrgMVV9EvgxcKGIbAUudD+jqhuBh4BNwJPA1W7kFMBVwN14yfFteCOnAO4BKkWkBvgnvJFYI04konQGw6zZUU9+bg6nHzduwHUcXzmGvFzh/drRHjRaEIGTJg1f0JhYVsjhVj+hBOsGZZI99e28sbOBay48kZf+5aNcsmAKD72xN+F6R2ZwNu1v5kt3v86Ft77Ev/9pA03tQW5d/T45Amed0H9L44MzKvDlCK+6FW9raluZVVWc9O8//bhydtW1p3X/nEEPuVXV7cBpCcrrgAt6Oecm4KYE5dVAj3FqqtoJXD7Ya8wW9/51Jz96fDNF+bksmD5uUMPp8nJzOGF8CTWHWvs/eAR772AzMyqLGZM/fPNWT6gqJhxRdroF6DLVqre9Xt3PnjYFX24OH5lbxaPr98cWzjNDo6rc8OeNjC3K41MfmMxv1+zmkTf30R4I8x+fnpfUMvzFBT5OP24cr207gqpSU9vKZ06bkvQ1nD49mtdo4GMnTRz0axkKW0YkAzy58SClhT5UYckpg/9DmDOxZFS3NFSVjfubh7WVAcSS6omWgMgkq9bvZ9Hx5Uyv8D68TnRdllsOju4vEsPlyXcPsnZHPd+7aC4/vPRU/nDV2ZxQVczfnTeTr58zI+l6PjRrPBv2NbH9SBvNnaGkkuBRp04bS26O8Nbu9HVRWdBIs/ZAiLd2N/D5D07n3f+8iG+cd8Kg6zpxYil76kfPCKqa2lbufnl7LNn73sEWdte3c/asgeeE+jJrQjG+HOG9g839H5wmG/c3seVQC59dcPRb66yqEnIEtozyPNdwUFVue66GWVXFLP3gcYDXVfSXb5/Hv31q3oCGd58zq5KIwh0vbAOSS4JHjcn3sWD6OP741r5edwI81ixopNnaHfUEw8o5s8YPua4TJ3p/fNERGSPdrc+8zw8f28zv1nrTf1a9vZ/cHOGTp04e1t9T4MtlVlUJ72VwS+PXr++mMC+HS06bGisrzMtlxvhi3j+YudedLV7aeoTNB5r55odnkTvEPVoWHl/OadPH8fA6b3raQFoaAN+5YA57Gzr47ZrdQ7qOwbKgkWav1hwhPzeHD/YxKShZc103yjt7ey6KNtK0dAZ5ZtMhfDnCDx/bRE1tC6vW7+fc2eOpLBnabn2JnDS5lPcy9MO3uTPIn97ax2dPm8LYMV1H4cydWJryEXXBcITv/f5tXthS2//BWeKOF2qYVFbIpQum9n9wP3y5Odz+pTMoH5PHmPxcJg1wIczz5oznnNmV/PK5mrQslW5BI81eqalj4fHlFOUPfS2ZGZVjmFE5hqc2HhyGK8tsT208hD8U4RdLTycvN4eLf/4y+xo7uGRB8knFgThpUhn7Gjto6si8PUv++OY+OoJhvnzW8T2eO3FiKTvr2ugMpq4r47drdvPwur18+3dvxZbFyQat/hA/enwzT2w40GWk3O66dl7fXs+ys2cMeNJtb6aOK+K+r5/JTy77wIB3lxQRrv7obOrbArxac6T/E4aZBY002lPfzuYDzZw7Z+hdU+D9MV08fzKvbaujqT3zPtyG06Pr93FcxRg+eeokHv/OeXx2wRROmlTKklMmHZPfF533sSXNrQ1VZVddW5ef7399F6dNGxubMRxv7qRSIjq0LstwRHl9e11SQ45bOoP84tmtnDp1LBG3VHgkgzewavOH+OlTW3j+vVq+eX81d720nat+8yZfuOv1WK7s6U3el7BPDXO356nTxvLpDwzuS87C48sp8OWwdkfq5zpb0EijP7y5FxGG9dvxJ+ZPIhRRVm8+NGx1Zpo/v72fV2qOcOnpUxERpo4r4pbPL+DJ755PScGx2SLm5NgIqvQmw/+0fh8f/q8XePF9b42117fXU1PbmrCVAUfzXO/uG3yX5X89tYWld73Ov//pXVS1z10M//vF7dS3BfjR507l+s+cwtod9Tz69r5B/+5j7T/+9C6/er6Gr937Bq/W1PFfl32A/33RXNbtauBNN/P66Y2HOGlSKcdVDn1Tr+FS4Mvl9OPGscateZVKFjTSJBJRHl63l7NnVSY1vjtZH5g2lqnjinjCbQQz0ry89TD/9NB6Pnh8Bf/wkVkp+70TywqYOq6IVW/vT9vSHKrK3S/vAOAnT75HJKL8es0uxhbl9TrW/4TxJcyeUMJdL21POMkvEtEuC+AdbvHz4vuHY2XPbj7EnS9u44SqYh54Yw8f+ekLzPm3x1ly64v89KktXXY0PNjUyd2vbOeSBVM4ddpYLls4jQ9MG8vNT2zJyBF9f1i3l0fe2se3PzabX37xdO788kIuXzSdZWfPoCgvl99X7+VIq5/qXfVcdIxasEOxeGYlm/Y305zifcMtaKTBvsYOfvfGbvY2dHD5wun9nzAAIsJnTpvC81tqqRlhcza2HW7lH37zJrOqSrj7q4tSuqeAiHDVR2axblcDr6ShHxmgelcDG/c3c+7s8Wzc38y1j7zDU+8e5PKF03p9L3JyhOs+cRLbj7Txu7U9R9vc+JdNnHvzc7y9p5FH3tzL4h89w7IVa/ny3WvYU9/O937/NqdMKePxfzyPb39sNtPKi7jy3JlMKC3k/3+hhvN+8nwsh3bL6i1EIvC9JXNjv/v/fHoeB5s7+ftfv9mlWy3dOoNhfvzkeyw8vpzvfvxEPnPaFC6e7wWGkgIfnzx1Mn955wB3vbSdyBDnTx0rZ82sIKLw6Fv7uPHPm1K2+q0FjRR7/r1azv/J8/zbH99l3Ji8Y/INZvn5JzAm38dPntwy7HWny/7GDr6xspr83BzuXraIssL+1+oZbpcvmsaUsYX87On30/LN+d5XdzK2KI87v7KQeZPLeKh6L7MnlPC1c2f2ed7HTprAh06o5OfPbO3yrXTdrgZWvraTiML3/7iBG1Zt5PTp47jpc/PZfqSNT932Mm2BML9YuoDCvFz+eclcfvONs/i3T83j1984k9XXfJg5E0v59u/e4urfvslD1Xu54kPHxyYXAiyaUcENn5nHup31LLn1JZ7ZdGy6TQOhCH9//zrufXVHUsf/8a19HG7xc83HT0w4hPbyRdNo9Ye466XtnDdnPPOGcQHM4XL6ceXk5Qr/8ehGVry6g8vvfI0dR459YLagkUKbDzTzrd++yUmTSvnd353F0989f1hGTXVXUZzPN88/gac3HWLN9tT3eQ639w4287nbX+Vwi5///srCYe3OG4gCXy7/tGQu6/c08tGfvsArW1PX4qhr9fPUxoNctnAaJQU+Hr7qQ7x9/RKe/O75/e69IiL826dOpr4twJ1uQllHIMy1f3iHyWWF/OdnT2Hj/mY6QxH+6/LT+NKZx7PsQ8fT3Bnify+Z2+sSJLMnlLDyax/k+IoxPLHhAMvPP4HvXTS3x3FfPWcmz33vI8ydVMo3f72Ox49B1+n/vLydJzce5IY/b0rYoooXjih3vbSdU6eO5ZzZiSeCnjnTC3a/+caZ3Pf1xcOyN8twK8rP5bw5VZxQVcztXzqDjmCYv7uvus+c03CQkbZo7KJFi7S6ujrdl9GDPxTmU7e9QktnkEevPpdJYwc2Nnug2gMhltz6EqGw8udvnxvbwCXbqCqf/uUr1Lb4uf/KxcO6T8ZgVe+s51//8A6N7UFW/9OHqUhi17WhWvHKDm78yyae+u75zB3kMinXPLiexzcc4JF/OJu7X97Bn9bvY+XXFnPu7PH86x/eYdGMcr7gZjv7Q2HW7qjnnFnj+x0S2twZpL41wIzxfS+81+oPccU9a9h6qJUnr+k/2CVjV10b63Y1cN0jG/jo3An4Q2FefP8wq751LvOnjk14/HWPbOCv2+q4/UtnDPtE0FQLhCL4coScHKGmtoVWf5gF0we+4CmAiKxT1UX9HmdB49hTVX729Pv86vka7v3aB/nI3N63hBxOG/c38Td3/JUzjivnN984MyO/LfXniQ0HuOo3b/Kzy0/jbxZO6/+EFNl8oJnP/PIVPnPaFG79woJj/vs++YuX8eUKq7517qDr2NfYwZJbXqTN7eVwzcdP5DsfnzNcl5iUPfXtXPzzlzhxUikXnDSBc+dUDfpDbuuhFj512ysEwhHGlxTw2D+eS2FeLh/96QucML6YT5w6mTtf3MaE0gIuWTCFj588kcvvfI1AKMJ1nzyZLy6enpX/J44VCxoZ4gd/2cS9f91JOKL8rzOmcsvnj/0HTLyVf93J9as28tu/O5Ozh2GpklRo6QxSUuDDH4rwmV++QkSVp6/58JCXbxhutzy9hdueq+FvzzyO6z8zjwLf8Hc1vrm7gdWbDnHHC9u48ZJTuOJDM4ZU3/7GDp7ZfIiWzhBXfXjWgCeWDYc/rNvLtY+8QzCs5OUK/3rxSYQjypyJJf2u3NrUEeT/PPou58+p4vfr9rD5QAu/vvJMZk8oiXX1PrB2N9c+sgHwupnCEaV6VwP5vhyK83N5+KqzB7Te02iRbNA4NoPaR4GWziD5vhxCYeVAU6e3G1cwzMSyAs6eNZ7CvFye3niQe17ZwSfmT+KsEyq5LA3flL/wwen88rmt3P3yjowLGrXNnfx6zW7ycoTPf3A6B5s6ueOFbTy58SBnzqyg1R9ia20rd31lYcYFDIB/vGAO/nCE/35xOzsOt/F/v/bBpEZ0rd/TyP2v7eJQcydVpQV8+MQqLj295/IUa3fU87f/8zqhiHLq1LFd1pUarCnjioYceIbqbxZO49OnTabdH+bbv3uLHz62OfbcV8+ewRnHlzOtvIjTp49DRFBV/rqtjsqSfG56bDMvbz3Co+u9ZeB/9LlTOXVa126oyxdN5+WaIxxXMYbvLZlLjsCvX9/Fytd28V+XfcACxhBZS2OA/KEwN6zqO9k2bkweC48rZ93uBqaMLeJPV58zbMsPDMYvntnKrc+8P6T+8OEUiSh3vbydW1a/TzAcIf5PcEx+LpeePpWn3j1IKKLc8vnTuODkzBvuGO8P6/byvYff5iMnVnHHlxf2GThqmzu5+BcvE44oM8YXc6Cxg9oWP7d8/jTOnjWeV2qO0BkMEwhFuP2FbZQW+njkqrMpT0HeJB2C4Qhv72lkesUYfvVcDfe/viv23KyqYr63ZC5rdtRz7193xspv/ptTafWH2XGklRs/Oz8traWRaER1T4nIxcAvgFzgblX9cW/HHsugsW5XPTes2sSGfU18+azjmFRWSF5uDuNLCjhlahllhXnU1LbyUPUeth1uY2yRjx9cMj+2FWu61LcF+PBPnifPl8O/f+pkPjp3QuxDSFVT2q+7aX8zN/x5I2t31HPxKZO49hMnEYpEeGrjIY6vHMNZJ1QyvqSAjoD3wdl9Ab5M9ds1u/n+HzewYPo4lp9/AgeaOjl39nhvGY+IsmZHPe8dbOaJDQd5Z18jf/n2ucyeUEooHOHL96zhTbc/QiB0dAJe+Zg8Hvzmh2L7YowGe+rb8YcivLm7gRWv7IgtEvnVs2cwd1IpBb4c/tcZmZPbGklGTNAQkVzgfbytY/cCbwBfVNVNiY4fbNAIhCLc99pOxo3JpzAvB38wwtTyIo6vHEN9W4Dbn9/GYxsOMKG0gBsvOYWL52fXqIuth1q45qH1vLvPWwbjwnkTufDkidz23Fbq2wJMLCukqrSAiWWFTCgtYGJZAfOnjuWsmZU0dgTZVdfGoWY/7+xtJC83h0sWTGFXXTs769oozMvlcIu3HeoZx5dTPiafsCqRiHJcxRh8uTn8vnoPqzcdYt3uBsYW5fH9T5zM5YumjahE5JPvHuCaB9+mI25xwPElBYh4M60BcnOEH31ufmyUEsCRVj/fWFnNnAklfP3cmVQU55Ofm0NxgS+tLdR0C4Uj/GbNbjqDYZaff8KI+lvJRCMpaHwIuEFVL3I/Xwegqv9fouMHGzRqmztZ/KNne32+KC+X5eefwDc/fMKwbiWaSqFwhDd2NvBqzRFWvLqD9kCYeZPLOOuESmpbOqlt8VPb3MmhZn/sg6+00EdL59GJbL4cIaJKoqHgOUKf5adOHcvHT57IV8+ekTUtiIHa39jBoeZOJpQV8symQ7x3sJmOQJgPz63i/DlVFOblUnyM1scyZihGUtC4DLhYVb/hfv4KcKaqfivumOXAcoDjjjtu4a5duxLW1RdVpbkjRFNHkI5gmHxfDjvr2tjf2MGY/FzOnjWeiQNc9z6THWru9FbYnT0eX27Xb7OqSnNniBe21PJqzRFOqCphzoQSqkoLOHFiKUda/Ty18RBzJpRwypQy/KEIFcX5hCPK23sa6QyFyRFBRKipbaWu1c/nTp+a9m46Y0zvRlLQuBy4qFvQWKyq3050fKYNuTXGmGyQbNDIhg7TvUD8qn7TgP1puhZjjBnVsiFovAHMEZGZIpIPLAVWpfmajDFmVMr4jJyqhkTkW8BTeENuV6jqxjRfljHGjEoZHzQAVPVx4PF0X4cxxox22dA9ZYwxJkNY0DDGGJM0CxrGGGOSZkHDGGNM0jJ+ct9AiUgL0Nfm2GOBpmH+tcNd53hgOPcSHe7ry/T6RtP7Z+9dZtWXre/feKBYVav6rUFVR9QNqO7n+buOwe8c1jr7ew0ZcH2ZXt+oef/svcu4+rLy/RvIdY/G7qk/Z0mdw2m4ry/T6xtumfx67b3LrPqGW8a93pHYPVWtSayfkslGwmtIJ3v/Bs/eu6HJ1vdvINc9Elsad6X7AobBSHgN6WTv3+DZezc02fr+JX3dI66lYYwx5tgZiS0NY4wxx4gFjRQQkeki8ryIbBaRjSLyHVdeISKrRWSruy935ZXu+FYR+VW3ur4gIu+4en6SjteTaoN4/y4UkXUissHdfyyuroWuvEZEbpMRvofoML93N4nIHhFpTdfrSbXhev9EZIyIPCYi77l6fpzO1zUkwzmcy269DnObDJzhHpfi7Xk+D/gJcK0rvxa42T0uBs4F/h74VVw9lcBuoMr9vBK4IN2vLwPfv9OBKe7xfGBfXF1rgQ8BAjwBfCLdry+L3ruzXH2t6X5d2fb+AWOAj7rH+cDL2fq3l/YLGI034FHgQrxJiJNd2WRgS7fjvtotaHwQeCbu568At6f79WTq++fKBagDCtwx78U990Xgv9P9erLhvetWPmqCxrF4/9xzvwD+Lt2vZzA3655KMRGZgfdtZA0wUVUPALj7Cf2cXgOcJCIzRMQHXErXXQ1HvEG8f38DvKWqfmAq3k6QUXtd2agwxPdu1Buu909ExgGfAZ49ltd7rGTFfhojhYiUAH8AvquqzQPtTlfVBhG5CngQiAB/BU4Y9gvNUAN9/0TkFOBmYEm0KMFho2L44DC8d6PacL1/7sve74DbVHX7MbrcY8paGikiInl4f3S/UdVHXPEhEZnsnp8M1PZXj6r+WVXPVNUP4TWRtx6ra84kA33/RGQa8EfgClXd5or34u0xHzUq9psfpvdu1Brm9+8uYKuq/vzYX/mxYUEjBdwInXuAzap6S9xTq4Bl7vEyvP7S/uqa4O7LgX8A7h7eq808A33/XPP/MeA6VX01erDrRmgRkbNcnVeQxHuezYbrvRuthvP9E5Ef4i0Y+N1jfd3HVLqTKqPhhjcSSoF3gPXu9km80VDP4rUWngUq4s7ZCdQDrXjfkOe58t8Bm9xtabpfWya+f8C/A21xx64HJrjnFgHvAtuAX+EmuI7U2zC/dz9xf4sRd39Dul9ftrx/eK1aBTbHlX8j3a9vMDebEW6MMSZp1j1ljDEmaRY0jDHGJM2ChjHGmKRZ0DDGGJM0CxrGGGOSZkHDmBQTkb8XkSsGcPwMEXn3WF6TMcmyZUSMSSER8anqnem+DmMGy4KGMQPkFq57Em/hutPxlsu+AjgZuAUoAY4AX1XVAyLyAt46YecAq0SkFG+l2J+KyALgTryls7cBX1dvjbGFwAqgHXglda/OmL5Z95QxgzMXuEtVPwA0A1cDvwQuU9XoB/5NccePU9UPq+rPutVzH/Cvrp4NwPWu/P8C/6jeGmPGZAxraRgzOHv06NpCvwa+j7fpzmq3AmoucCDu+Ae7VyAiY/GCyYuuaCXw+wTl9wOfGP6XYMzAWdAwZnC6r7/TAmzso2XQNoC6JUH9xmQE654yZnCOE5FogPgi8DpQFS0TkTy3p0KvVLUJaBCR81zRV4AXVbURaBKRc135l4b/8o0ZHGtpGDM4m4FlIvLfeCud/hJ4CrjNdS/5gJ8DG/upZxlwp4iMAbYDX3PlXwNWiEi7q9eYjGCr3BozQG701F9UdX6aL8WYlLPuKWOMMUmzloYxxpikWUvDGGNM0ixoGGOMSZoFDWOMMUmzoGGMMSZpFjSMMcYkzYKGMcaYpP0/IFvKJvMJyc8AAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sorted_data['inc'][-200:].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Etude de l'incidence annuelle" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Etant donné que le pic de l'épidémie se situe en hiver, à cheval\n", + "entre deux années civiles, nous définissons la période de référence\n", + "entre deux minima de l'incidence, du 1er août de l'année $N$ au\n", + "1er août 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 août de chaque année, nous utilisons le\n", + "premier jour de la semaine qui contient le 1er août.\n", + "\n", + "Comme l'incidence de syndrome grippal est très faible en été, cette\n", + "modification ne risque pas de fausser nos conclusions.\n", + "\n", + "Encore un petit détail: les données commencent an octobre 1984, ce qui\n", + "rend la première année incomplète. Nous commençons donc l'analyse en 1985." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "first_august_week = [pd.Period(pd.Timestamp(y, 8, 1), 'W')\n", + " for y in range(1985,\n", + " sorted_data.index[-1].year)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "En partant de cette liste des semaines qui contiennent un 1er août, 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": 13, + "metadata": {}, + "outputs": [], + "source": [ + "year = []\n", + "yearly_incidence = []\n", + "for week1, week2 in zip(first_august_week[:-1],\n", + " first_august_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": [ + "Voici les incidences annuelles." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 14, + "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": [ + "Une liste triée permet de plus facilement répérer les valeurs les plus élevées (à la fin)." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "2021 938731\n", + "2014 1600941\n", + "1991 1659249\n", + "1995 1840410\n", + "2020 2053781\n", + "2012 2175217\n", + "2003 2234584\n", + "2019 2254386\n", + "2006 2307352\n", + "2017 2321583\n", + "2001 2529279\n", + "1992 2574578\n", + "1993 2703886\n", + "2018 2705325\n", + "1988 2765617\n", + "2007 2780164\n", + "1987 2855570\n", + "2016 2856393\n", + "2011 2857040\n", + "2008 2973918\n", + "1998 3034904\n", + "2002 3125418\n", + "2009 3444020\n", + "1994 3514763\n", + "1996 3539413\n", + "2004 3567744\n", + "1997 3620066\n", + "2015 3654892\n", + "2000 3826372\n", + "2005 3835025\n", + "1999 3908112\n", + "2010 4111392\n", + "2013 4182691\n", + "1986 5115251\n", + "1990 5235827\n", + "1989 5466192\n", + "dtype: int64" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "yearly_incidence.sort_values()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Enfin, un histogramme montre bien que les épidémies fortes, qui touchent environ 10% de la population\n", + " française, sont assez rares: il y en eu trois au cours des 35 dernières années." + ] + }, + { + "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.hist(xrot=20)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.4" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/module3/.ipynb_checkpoints/analyse-syndrome-varicelle-checkpoint.ipynb b/module3/.ipynb_checkpoints/analyse-syndrome-varicelle-checkpoint.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..e4fa91805654cfef401cc9672a6a67a3f9ed5681 --- /dev/null +++ b/module3/.ipynb_checkpoints/analyse-syndrome-varicelle-checkpoint.ipynb @@ -0,0 +1,2538 @@ +{ + "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 varicelle 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": 2, + "metadata": {}, + "outputs": [], + "source": [ + "data_url = \"https://www.sentiweb.fr/datasets/incidence-PAY-7.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": [ + "Download the file if it does not exist" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "data_10.csv already exists, download not necessary\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
weekindicatorincinc_lowinc_upinc100inc100_lowinc100_upgeo_inseegeo_name
020222131753812255.022821.02618.034.0FRFrance
120222032041316271.024555.03125.037.0FRFrance
220221931787414068.021680.02721.033.0FRFrance
320221833035325089.035617.04638.054.0FRFrance
420221733600630373.041639.05446.062.0FRFrance
520221634994942836.057062.07564.086.0FRFrance
6202215310080690824.0110788.0152137.0167.0FRFrance
72022143155441143891.0166991.0234217.0251.0FRFrance
82022133191914179558.0204270.0289270.0308.0FRFrance
92022123166224155035.0177413.0251234.0268.0FRFrance
102022113122849113306.0132392.0185171.0199.0FRFrance
1120221038790479741.096067.0133121.0145.0FRFrance
1220220935018243958.056406.07667.085.0FRFrance
1320220833096325942.035984.04739.055.0FRFrance
1420220733488229446.040318.05345.061.0FRFrance
1520220634662340398.052848.07061.079.0FRFrance
1620220536297056043.069897.09585.0105.0FRFrance
1720220437220964804.079614.010998.0120.0FRFrance
1820220337461367144.082082.0113102.0124.0FRFrance
1920220235592049511.062329.08474.094.0FRFrance
2020220135762950699.064559.08777.097.0FRFrance
2120215235434947029.061669.08271.093.0FRFrance
2220215134169835359.048037.06353.073.0FRFrance
2320215033811732497.043737.05849.067.0FRFrance
2420214934016834716.045620.06153.069.0FRFrance
2520214834184236364.047320.06355.071.0FRFrance
2620214733659831338.041858.05547.063.0FRFrance
2720214633005925302.034816.04639.053.0FRFrance
2820214532036416564.024164.03125.037.0FRFrance
2920214431899915042.022956.02923.035.0FRFrance
.................................
193119852132609619621.032571.04735.059.0FRFrance
193219852032789620885.034907.05138.064.0FRFrance
193319851934315432821.053487.07859.097.0FRFrance
193419851834055529935.051175.07455.093.0FRFrance
193519851733405324366.043740.06244.080.0FRFrance
193619851635036236451.064273.09166.0116.0FRFrance
193719851536388145538.082224.011683.0149.0FRFrance
19381985143134545114400.0154690.0244207.0281.0FRFrance
19391985133197206176080.0218332.0357319.0395.0FRFrance
19401985123245240223304.0267176.0445405.0485.0FRFrance
19411985113276205252399.0300011.0501458.0544.0FRFrance
19421985103353231326279.0380183.0640591.0689.0FRFrance
19431985093369895341109.0398681.0670618.0722.0FRFrance
19441985083389886359529.0420243.0707652.0762.0FRFrance
19451985073471852432599.0511105.0855784.0926.0FRFrance
19461985063565825518011.0613639.01026939.01113.0FRFrance
19471985053637302592795.0681809.011551074.01236.0FRFrance
19481985043424937390794.0459080.0770708.0832.0FRFrance
19491985033213901174689.0253113.0388317.0459.0FRFrance
195019850239758680949.0114223.0177147.0207.0FRFrance
195119850138548965918.0105060.0155120.0190.0FRFrance
195219845238483060602.0109058.0154110.0198.0FRFrance
1953198451310172680242.0123210.0185146.0224.0FRFrance
19541984503123680101401.0145959.0225184.0266.0FRFrance
1955198449310107381684.0120462.0184149.0219.0FRFrance
195619844837862060634.096606.0143110.0176.0FRFrance
195719844737202954274.089784.013199.0163.0FRFrance
195819844638733067686.0106974.0159123.0195.0FRFrance
19591984453135223101414.0169032.0246184.0308.0FRFrance
196019844436842220056.0116788.012537.0213.0FRFrance
\n", + "

1961 rows × 10 columns

\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low \\\n", + "0 202221 3 17538 12255.0 22821.0 26 18.0 \n", + "1 202220 3 20413 16271.0 24555.0 31 25.0 \n", + "2 202219 3 17874 14068.0 21680.0 27 21.0 \n", + "3 202218 3 30353 25089.0 35617.0 46 38.0 \n", + "4 202217 3 36006 30373.0 41639.0 54 46.0 \n", + "5 202216 3 49949 42836.0 57062.0 75 64.0 \n", + "6 202215 3 100806 90824.0 110788.0 152 137.0 \n", + "7 202214 3 155441 143891.0 166991.0 234 217.0 \n", + "8 202213 3 191914 179558.0 204270.0 289 270.0 \n", + "9 202212 3 166224 155035.0 177413.0 251 234.0 \n", + "10 202211 3 122849 113306.0 132392.0 185 171.0 \n", + "11 202210 3 87904 79741.0 96067.0 133 121.0 \n", + "12 202209 3 50182 43958.0 56406.0 76 67.0 \n", + "13 202208 3 30963 25942.0 35984.0 47 39.0 \n", + "14 202207 3 34882 29446.0 40318.0 53 45.0 \n", + "15 202206 3 46623 40398.0 52848.0 70 61.0 \n", + "16 202205 3 62970 56043.0 69897.0 95 85.0 \n", + "17 202204 3 72209 64804.0 79614.0 109 98.0 \n", + "18 202203 3 74613 67144.0 82082.0 113 102.0 \n", + "19 202202 3 55920 49511.0 62329.0 84 74.0 \n", + "20 202201 3 57629 50699.0 64559.0 87 77.0 \n", + "21 202152 3 54349 47029.0 61669.0 82 71.0 \n", + "22 202151 3 41698 35359.0 48037.0 63 53.0 \n", + "23 202150 3 38117 32497.0 43737.0 58 49.0 \n", + "24 202149 3 40168 34716.0 45620.0 61 53.0 \n", + "25 202148 3 41842 36364.0 47320.0 63 55.0 \n", + "26 202147 3 36598 31338.0 41858.0 55 47.0 \n", + "27 202146 3 30059 25302.0 34816.0 46 39.0 \n", + "28 202145 3 20364 16564.0 24164.0 31 25.0 \n", + "29 202144 3 18999 15042.0 22956.0 29 23.0 \n", + "... ... ... ... ... ... ... ... \n", + "1931 198521 3 26096 19621.0 32571.0 47 35.0 \n", + "1932 198520 3 27896 20885.0 34907.0 51 38.0 \n", + "1933 198519 3 43154 32821.0 53487.0 78 59.0 \n", + "1934 198518 3 40555 29935.0 51175.0 74 55.0 \n", + "1935 198517 3 34053 24366.0 43740.0 62 44.0 \n", + "1936 198516 3 50362 36451.0 64273.0 91 66.0 \n", + "1937 198515 3 63881 45538.0 82224.0 116 83.0 \n", + "1938 198514 3 134545 114400.0 154690.0 244 207.0 \n", + "1939 198513 3 197206 176080.0 218332.0 357 319.0 \n", + "1940 198512 3 245240 223304.0 267176.0 445 405.0 \n", + "1941 198511 3 276205 252399.0 300011.0 501 458.0 \n", + "1942 198510 3 353231 326279.0 380183.0 640 591.0 \n", + "1943 198509 3 369895 341109.0 398681.0 670 618.0 \n", + "1944 198508 3 389886 359529.0 420243.0 707 652.0 \n", + "1945 198507 3 471852 432599.0 511105.0 855 784.0 \n", + "1946 198506 3 565825 518011.0 613639.0 1026 939.0 \n", + "1947 198505 3 637302 592795.0 681809.0 1155 1074.0 \n", + "1948 198504 3 424937 390794.0 459080.0 770 708.0 \n", + "1949 198503 3 213901 174689.0 253113.0 388 317.0 \n", + "1950 198502 3 97586 80949.0 114223.0 177 147.0 \n", + "1951 198501 3 85489 65918.0 105060.0 155 120.0 \n", + "1952 198452 3 84830 60602.0 109058.0 154 110.0 \n", + "1953 198451 3 101726 80242.0 123210.0 185 146.0 \n", + "1954 198450 3 123680 101401.0 145959.0 225 184.0 \n", + "1955 198449 3 101073 81684.0 120462.0 184 149.0 \n", + "1956 198448 3 78620 60634.0 96606.0 143 110.0 \n", + "1957 198447 3 72029 54274.0 89784.0 131 99.0 \n", + "1958 198446 3 87330 67686.0 106974.0 159 123.0 \n", + "1959 198445 3 135223 101414.0 169032.0 246 184.0 \n", + "1960 198444 3 68422 20056.0 116788.0 125 37.0 \n", + "\n", + " inc100_up geo_insee geo_name \n", + "0 34.0 FR France \n", + "1 37.0 FR France \n", + "2 33.0 FR France \n", + "3 54.0 FR France \n", + "4 62.0 FR France \n", + "5 86.0 FR France \n", + "6 167.0 FR France \n", + "7 251.0 FR France \n", + "8 308.0 FR France \n", + "9 268.0 FR France \n", + "10 199.0 FR France \n", + "11 145.0 FR France \n", + "12 85.0 FR France \n", + "13 55.0 FR France \n", + "14 61.0 FR France \n", + "15 79.0 FR France \n", + "16 105.0 FR France \n", + "17 120.0 FR France \n", + "18 124.0 FR France \n", + "19 94.0 FR France \n", + "20 97.0 FR France \n", + "21 93.0 FR France \n", + "22 73.0 FR France \n", + "23 67.0 FR France \n", + "24 69.0 FR France \n", + "25 71.0 FR France \n", + "26 63.0 FR France \n", + "27 53.0 FR France \n", + "28 37.0 FR France \n", + "29 35.0 FR France \n", + "... ... ... ... \n", + "1931 59.0 FR France \n", + "1932 64.0 FR France \n", + "1933 97.0 FR France \n", + "1934 93.0 FR France \n", + "1935 80.0 FR France \n", + "1936 116.0 FR France \n", + "1937 149.0 FR France \n", + "1938 281.0 FR France \n", + "1939 395.0 FR France \n", + "1940 485.0 FR France \n", + "1941 544.0 FR France \n", + "1942 689.0 FR France \n", + "1943 722.0 FR France \n", + "1944 762.0 FR France \n", + "1945 926.0 FR France \n", + "1946 1113.0 FR France \n", + "1947 1236.0 FR France \n", + "1948 832.0 FR France \n", + "1949 459.0 FR France \n", + "1950 207.0 FR France \n", + "1951 190.0 FR France \n", + "1952 198.0 FR France \n", + "1953 224.0 FR France \n", + "1954 266.0 FR France \n", + "1955 219.0 FR France \n", + "1956 176.0 FR France \n", + "1957 163.0 FR France \n", + "1958 195.0 FR France \n", + "1959 308.0 FR France \n", + "1960 213.0 FR France \n", + "\n", + "[1961 rows x 10 columns]" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import os.path\n", + "import requests\n", + "\n", + "filename = 'varicelle-01.csv'\n", + "\n", + "if os.path.isfile(filename):\n", + " print(f'{filename} already exists, download not necessary')\n", + "else:\n", + " r = requests.get(data_url)\n", + " with open(filename, 'wb') as f:\n", + " f.write(r.content)\n", + " #print(str(r.content))\n", + " \n", + "raw_data = pd.read_csv(filename, skiprows=1)\n", + "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": 33, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
weekindicatorincinc_lowinc_upinc100inc100_lowinc100_upgeo_inseegeo_name
172419891930NaNNaN0NaNNaNFRFrance
\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low inc100_up \\\n", + "1724 198919 3 0 NaN NaN 0 NaN NaN \n", + "\n", + " geo_insee geo_name \n", + "1724 FR France " + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "raw_data[raw_data.isnull().any(axis=1)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nous éliminons ce point, ce qui n'a pas d'impact fort sur notre analyse qui est assez simple." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
weekindicatorincinc_lowinc_upinc100inc100_lowinc100_upgeo_inseegeo_name
020222131753812255.022821.02618.034.0FRFrance
120222032041316271.024555.03125.037.0FRFrance
220221931787414068.021680.02721.033.0FRFrance
320221833035325089.035617.04638.054.0FRFrance
420221733600630373.041639.05446.062.0FRFrance
520221634994942836.057062.07564.086.0FRFrance
6202215310080690824.0110788.0152137.0167.0FRFrance
72022143155441143891.0166991.0234217.0251.0FRFrance
82022133191914179558.0204270.0289270.0308.0FRFrance
92022123166224155035.0177413.0251234.0268.0FRFrance
102022113122849113306.0132392.0185171.0199.0FRFrance
1120221038790479741.096067.0133121.0145.0FRFrance
1220220935018243958.056406.07667.085.0FRFrance
1320220833096325942.035984.04739.055.0FRFrance
1420220733488229446.040318.05345.061.0FRFrance
1520220634662340398.052848.07061.079.0FRFrance
1620220536297056043.069897.09585.0105.0FRFrance
1720220437220964804.079614.010998.0120.0FRFrance
1820220337461367144.082082.0113102.0124.0FRFrance
1920220235592049511.062329.08474.094.0FRFrance
2020220135762950699.064559.08777.097.0FRFrance
2120215235434947029.061669.08271.093.0FRFrance
2220215134169835359.048037.06353.073.0FRFrance
2320215033811732497.043737.05849.067.0FRFrance
2420214934016834716.045620.06153.069.0FRFrance
2520214834184236364.047320.06355.071.0FRFrance
2620214733659831338.041858.05547.063.0FRFrance
2720214633005925302.034816.04639.053.0FRFrance
2820214532036416564.024164.03125.037.0FRFrance
2920214431899915042.022956.02923.035.0FRFrance
.................................
193119852132609619621.032571.04735.059.0FRFrance
193219852032789620885.034907.05138.064.0FRFrance
193319851934315432821.053487.07859.097.0FRFrance
193419851834055529935.051175.07455.093.0FRFrance
193519851733405324366.043740.06244.080.0FRFrance
193619851635036236451.064273.09166.0116.0FRFrance
193719851536388145538.082224.011683.0149.0FRFrance
19381985143134545114400.0154690.0244207.0281.0FRFrance
19391985133197206176080.0218332.0357319.0395.0FRFrance
19401985123245240223304.0267176.0445405.0485.0FRFrance
19411985113276205252399.0300011.0501458.0544.0FRFrance
19421985103353231326279.0380183.0640591.0689.0FRFrance
19431985093369895341109.0398681.0670618.0722.0FRFrance
19441985083389886359529.0420243.0707652.0762.0FRFrance
19451985073471852432599.0511105.0855784.0926.0FRFrance
19461985063565825518011.0613639.01026939.01113.0FRFrance
19471985053637302592795.0681809.011551074.01236.0FRFrance
19481985043424937390794.0459080.0770708.0832.0FRFrance
19491985033213901174689.0253113.0388317.0459.0FRFrance
195019850239758680949.0114223.0177147.0207.0FRFrance
195119850138548965918.0105060.0155120.0190.0FRFrance
195219845238483060602.0109058.0154110.0198.0FRFrance
1953198451310172680242.0123210.0185146.0224.0FRFrance
19541984503123680101401.0145959.0225184.0266.0FRFrance
1955198449310107381684.0120462.0184149.0219.0FRFrance
195619844837862060634.096606.0143110.0176.0FRFrance
195719844737202954274.089784.013199.0163.0FRFrance
195819844638733067686.0106974.0159123.0195.0FRFrance
19591984453135223101414.0169032.0246184.0308.0FRFrance
196019844436842220056.0116788.012537.0213.0FRFrance
\n", + "

1960 rows × 10 columns

\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low \\\n", + "0 202221 3 17538 12255.0 22821.0 26 18.0 \n", + "1 202220 3 20413 16271.0 24555.0 31 25.0 \n", + "2 202219 3 17874 14068.0 21680.0 27 21.0 \n", + "3 202218 3 30353 25089.0 35617.0 46 38.0 \n", + "4 202217 3 36006 30373.0 41639.0 54 46.0 \n", + "5 202216 3 49949 42836.0 57062.0 75 64.0 \n", + "6 202215 3 100806 90824.0 110788.0 152 137.0 \n", + "7 202214 3 155441 143891.0 166991.0 234 217.0 \n", + "8 202213 3 191914 179558.0 204270.0 289 270.0 \n", + "9 202212 3 166224 155035.0 177413.0 251 234.0 \n", + "10 202211 3 122849 113306.0 132392.0 185 171.0 \n", + "11 202210 3 87904 79741.0 96067.0 133 121.0 \n", + "12 202209 3 50182 43958.0 56406.0 76 67.0 \n", + "13 202208 3 30963 25942.0 35984.0 47 39.0 \n", + "14 202207 3 34882 29446.0 40318.0 53 45.0 \n", + "15 202206 3 46623 40398.0 52848.0 70 61.0 \n", + "16 202205 3 62970 56043.0 69897.0 95 85.0 \n", + "17 202204 3 72209 64804.0 79614.0 109 98.0 \n", + "18 202203 3 74613 67144.0 82082.0 113 102.0 \n", + "19 202202 3 55920 49511.0 62329.0 84 74.0 \n", + "20 202201 3 57629 50699.0 64559.0 87 77.0 \n", + "21 202152 3 54349 47029.0 61669.0 82 71.0 \n", + "22 202151 3 41698 35359.0 48037.0 63 53.0 \n", + "23 202150 3 38117 32497.0 43737.0 58 49.0 \n", + "24 202149 3 40168 34716.0 45620.0 61 53.0 \n", + "25 202148 3 41842 36364.0 47320.0 63 55.0 \n", + "26 202147 3 36598 31338.0 41858.0 55 47.0 \n", + "27 202146 3 30059 25302.0 34816.0 46 39.0 \n", + "28 202145 3 20364 16564.0 24164.0 31 25.0 \n", + "29 202144 3 18999 15042.0 22956.0 29 23.0 \n", + "... ... ... ... ... ... ... ... \n", + "1931 198521 3 26096 19621.0 32571.0 47 35.0 \n", + "1932 198520 3 27896 20885.0 34907.0 51 38.0 \n", + "1933 198519 3 43154 32821.0 53487.0 78 59.0 \n", + "1934 198518 3 40555 29935.0 51175.0 74 55.0 \n", + "1935 198517 3 34053 24366.0 43740.0 62 44.0 \n", + "1936 198516 3 50362 36451.0 64273.0 91 66.0 \n", + "1937 198515 3 63881 45538.0 82224.0 116 83.0 \n", + "1938 198514 3 134545 114400.0 154690.0 244 207.0 \n", + "1939 198513 3 197206 176080.0 218332.0 357 319.0 \n", + "1940 198512 3 245240 223304.0 267176.0 445 405.0 \n", + "1941 198511 3 276205 252399.0 300011.0 501 458.0 \n", + "1942 198510 3 353231 326279.0 380183.0 640 591.0 \n", + "1943 198509 3 369895 341109.0 398681.0 670 618.0 \n", + "1944 198508 3 389886 359529.0 420243.0 707 652.0 \n", + "1945 198507 3 471852 432599.0 511105.0 855 784.0 \n", + "1946 198506 3 565825 518011.0 613639.0 1026 939.0 \n", + "1947 198505 3 637302 592795.0 681809.0 1155 1074.0 \n", + "1948 198504 3 424937 390794.0 459080.0 770 708.0 \n", + "1949 198503 3 213901 174689.0 253113.0 388 317.0 \n", + "1950 198502 3 97586 80949.0 114223.0 177 147.0 \n", + "1951 198501 3 85489 65918.0 105060.0 155 120.0 \n", + "1952 198452 3 84830 60602.0 109058.0 154 110.0 \n", + "1953 198451 3 101726 80242.0 123210.0 185 146.0 \n", + "1954 198450 3 123680 101401.0 145959.0 225 184.0 \n", + "1955 198449 3 101073 81684.0 120462.0 184 149.0 \n", + "1956 198448 3 78620 60634.0 96606.0 143 110.0 \n", + "1957 198447 3 72029 54274.0 89784.0 131 99.0 \n", + "1958 198446 3 87330 67686.0 106974.0 159 123.0 \n", + "1959 198445 3 135223 101414.0 169032.0 246 184.0 \n", + "1960 198444 3 68422 20056.0 116788.0 125 37.0 \n", + "\n", + " inc100_up geo_insee geo_name \n", + "0 34.0 FR France \n", + "1 37.0 FR France \n", + "2 33.0 FR France \n", + "3 54.0 FR France \n", + "4 62.0 FR France \n", + "5 86.0 FR France \n", + "6 167.0 FR France \n", + "7 251.0 FR France \n", + "8 308.0 FR France \n", + "9 268.0 FR France \n", + "10 199.0 FR France \n", + "11 145.0 FR France \n", + "12 85.0 FR France \n", + "13 55.0 FR France \n", + "14 61.0 FR France \n", + "15 79.0 FR France \n", + "16 105.0 FR France \n", + "17 120.0 FR France \n", + "18 124.0 FR France \n", + "19 94.0 FR France \n", + "20 97.0 FR France \n", + "21 93.0 FR France \n", + "22 73.0 FR France \n", + "23 67.0 FR France \n", + "24 69.0 FR France \n", + "25 71.0 FR France \n", + "26 63.0 FR France \n", + "27 53.0 FR France \n", + "28 37.0 FR France \n", + "29 35.0 FR France \n", + "... ... ... ... \n", + "1931 59.0 FR France \n", + "1932 64.0 FR France \n", + "1933 97.0 FR France \n", + "1934 93.0 FR France \n", + "1935 80.0 FR France \n", + "1936 116.0 FR France \n", + "1937 149.0 FR France \n", + "1938 281.0 FR France \n", + "1939 395.0 FR France \n", + "1940 485.0 FR France \n", + "1941 544.0 FR France \n", + "1942 689.0 FR France \n", + "1943 722.0 FR France \n", + "1944 762.0 FR France \n", + "1945 926.0 FR France \n", + "1946 1113.0 FR France \n", + "1947 1236.0 FR France \n", + "1948 832.0 FR France \n", + "1949 459.0 FR France \n", + "1950 207.0 FR France \n", + "1951 190.0 FR France \n", + "1952 198.0 FR France \n", + "1953 224.0 FR France \n", + "1954 266.0 FR France \n", + "1955 219.0 FR France \n", + "1956 176.0 FR France \n", + "1957 163.0 FR France \n", + "1958 195.0 FR France \n", + "1959 308.0 FR France \n", + "1960 213.0 FR France \n", + "\n", + "[1960 rows x 10 columns]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data = raw_data.dropna().copy()\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nos données utilisent une convention inhabituelle: le numéro de\n", + "semaine est collé à l'année, donnant l'impression qu'il s'agit\n", + "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\n", + "semaine. Il faut lui fournir les dates de début et de fin de\n", + "semaine. Nous utilisons pour cela la bibliothèque `isoweek`.\n", + "\n", + "Comme la conversion des semaines est devenu assez complexe, nous\n", + "écrivons une petite fonction Python pour cela. Ensuite, nous\n", + "l'appliquons à tous les points de nos donnés. Les résultats vont\n", + "dans une nouvelle colonne 'period'." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "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": [ + "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": 8, + "metadata": {}, + "outputs": [], + "source": [ + "sorted_data = data.set_index('period').sort_index()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "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.\n", + "\n", + "Ceci s'avère tout à fait juste sauf pour deux périodes consécutives\n", + "entre lesquelles il manque une semaine.\n", + "\n", + "Nous reconnaissons ces dates: c'est la semaine sans observations\n", + "que nous avions supprimées !" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1989-05-01/1989-05-07 1989-05-15/1989-05-21\n" + ] + } + ], + "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": [ + "Un premier regard sur les données !" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sorted_data['inc'].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Un zoom sur les dernières années montre mieux la situation des pics en hiver. Le creux des incidences se trouve en été." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sorted_data['inc'][-200:].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Etude de l'incidence annuelle" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Etant donné que le pic de l'épidémie se situe en hiver, à cheval\n", + "entre deux années civiles, nous définissons la période de référence\n", + "entre deux minima de l'incidence, du 1er août de l'année $N$ au\n", + "1er août 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 août de chaque année, nous utilisons le\n", + "premier jour de la semaine qui contient le 1er août.\n", + "\n", + "Comme l'incidence de syndrome grippal est très faible en été, cette\n", + "modification ne risque pas de fausser nos conclusions.\n", + "\n", + "Encore un petit détail: les données commencent an octobre 1984, ce qui\n", + "rend la première année incomplète. Nous commençons donc l'analyse en 1985." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "first_august_week = [pd.Period(pd.Timestamp(y, 8, 1), 'W')\n", + " for y in range(1985,\n", + " sorted_data.index[-1].year)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "En partant de cette liste des semaines qui contiennent un 1er août, 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": 13, + "metadata": {}, + "outputs": [], + "source": [ + "year = []\n", + "yearly_incidence = []\n", + "for week1, week2 in zip(first_august_week[:-1],\n", + " first_august_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": [ + "Voici les incidences annuelles." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 14, + "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": [ + "Une liste triée permet de plus facilement répérer les valeurs les plus élevées (à la fin)." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "2021 938731\n", + "2014 1600941\n", + "1991 1659249\n", + "1995 1840410\n", + "2020 2053781\n", + "2012 2175217\n", + "2003 2234584\n", + "2019 2254386\n", + "2006 2307352\n", + "2017 2321583\n", + "2001 2529279\n", + "1992 2574578\n", + "1993 2703886\n", + "2018 2705325\n", + "1988 2765617\n", + "2007 2780164\n", + "1987 2855570\n", + "2016 2856393\n", + "2011 2857040\n", + "2008 2973918\n", + "1998 3034904\n", + "2002 3125418\n", + "2009 3444020\n", + "1994 3514763\n", + "1996 3539413\n", + "2004 3567744\n", + "1997 3620066\n", + "2015 3654892\n", + "2000 3826372\n", + "2005 3835025\n", + "1999 3908112\n", + "2010 4111392\n", + "2013 4182691\n", + "1986 5115251\n", + "1990 5235827\n", + "1989 5466192\n", + "dtype: int64" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "yearly_incidence.sort_values()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Enfin, un histogramme montre bien que les épidémies fortes, qui touchent environ 10% de la population\n", + " française, sont assez rares: il y en eu trois au cours des 35 dernières années." + ] + }, + { + "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.hist(xrot=20)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.4" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/module3/README.md b/module3/README.md new file mode 100644 index 0000000000000000000000000000000000000000..7d100ebb5f3da3f542f5af4ac3dd5317bdfb050e --- /dev/null +++ b/module3/README.md @@ -0,0 +1 @@ +Module 3 diff --git a/module3/analyse-syndrome-grippal.ipynb b/module3/analyse-syndrome-grippal.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..8dc79a396af31d36543c857f90a021c243783628 --- /dev/null +++ b/module3/analyse-syndrome-grippal.ipynb @@ -0,0 +1,2538 @@ +{ + "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": 2, + "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": [ + "Download the file if it does not exist" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "data_10.csv already exists, download not necessary\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
weekindicatorincinc_lowinc_upinc100inc100_lowinc100_upgeo_inseegeo_name
020222131753812255.022821.02618.034.0FRFrance
120222032041316271.024555.03125.037.0FRFrance
220221931787414068.021680.02721.033.0FRFrance
320221833035325089.035617.04638.054.0FRFrance
420221733600630373.041639.05446.062.0FRFrance
520221634994942836.057062.07564.086.0FRFrance
6202215310080690824.0110788.0152137.0167.0FRFrance
72022143155441143891.0166991.0234217.0251.0FRFrance
82022133191914179558.0204270.0289270.0308.0FRFrance
92022123166224155035.0177413.0251234.0268.0FRFrance
102022113122849113306.0132392.0185171.0199.0FRFrance
1120221038790479741.096067.0133121.0145.0FRFrance
1220220935018243958.056406.07667.085.0FRFrance
1320220833096325942.035984.04739.055.0FRFrance
1420220733488229446.040318.05345.061.0FRFrance
1520220634662340398.052848.07061.079.0FRFrance
1620220536297056043.069897.09585.0105.0FRFrance
1720220437220964804.079614.010998.0120.0FRFrance
1820220337461367144.082082.0113102.0124.0FRFrance
1920220235592049511.062329.08474.094.0FRFrance
2020220135762950699.064559.08777.097.0FRFrance
2120215235434947029.061669.08271.093.0FRFrance
2220215134169835359.048037.06353.073.0FRFrance
2320215033811732497.043737.05849.067.0FRFrance
2420214934016834716.045620.06153.069.0FRFrance
2520214834184236364.047320.06355.071.0FRFrance
2620214733659831338.041858.05547.063.0FRFrance
2720214633005925302.034816.04639.053.0FRFrance
2820214532036416564.024164.03125.037.0FRFrance
2920214431899915042.022956.02923.035.0FRFrance
.................................
193119852132609619621.032571.04735.059.0FRFrance
193219852032789620885.034907.05138.064.0FRFrance
193319851934315432821.053487.07859.097.0FRFrance
193419851834055529935.051175.07455.093.0FRFrance
193519851733405324366.043740.06244.080.0FRFrance
193619851635036236451.064273.09166.0116.0FRFrance
193719851536388145538.082224.011683.0149.0FRFrance
19381985143134545114400.0154690.0244207.0281.0FRFrance
19391985133197206176080.0218332.0357319.0395.0FRFrance
19401985123245240223304.0267176.0445405.0485.0FRFrance
19411985113276205252399.0300011.0501458.0544.0FRFrance
19421985103353231326279.0380183.0640591.0689.0FRFrance
19431985093369895341109.0398681.0670618.0722.0FRFrance
19441985083389886359529.0420243.0707652.0762.0FRFrance
19451985073471852432599.0511105.0855784.0926.0FRFrance
19461985063565825518011.0613639.01026939.01113.0FRFrance
19471985053637302592795.0681809.011551074.01236.0FRFrance
19481985043424937390794.0459080.0770708.0832.0FRFrance
19491985033213901174689.0253113.0388317.0459.0FRFrance
195019850239758680949.0114223.0177147.0207.0FRFrance
195119850138548965918.0105060.0155120.0190.0FRFrance
195219845238483060602.0109058.0154110.0198.0FRFrance
1953198451310172680242.0123210.0185146.0224.0FRFrance
19541984503123680101401.0145959.0225184.0266.0FRFrance
1955198449310107381684.0120462.0184149.0219.0FRFrance
195619844837862060634.096606.0143110.0176.0FRFrance
195719844737202954274.089784.013199.0163.0FRFrance
195819844638733067686.0106974.0159123.0195.0FRFrance
19591984453135223101414.0169032.0246184.0308.0FRFrance
196019844436842220056.0116788.012537.0213.0FRFrance
\n", + "

1961 rows × 10 columns

\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low \\\n", + "0 202221 3 17538 12255.0 22821.0 26 18.0 \n", + "1 202220 3 20413 16271.0 24555.0 31 25.0 \n", + "2 202219 3 17874 14068.0 21680.0 27 21.0 \n", + "3 202218 3 30353 25089.0 35617.0 46 38.0 \n", + "4 202217 3 36006 30373.0 41639.0 54 46.0 \n", + "5 202216 3 49949 42836.0 57062.0 75 64.0 \n", + "6 202215 3 100806 90824.0 110788.0 152 137.0 \n", + "7 202214 3 155441 143891.0 166991.0 234 217.0 \n", + "8 202213 3 191914 179558.0 204270.0 289 270.0 \n", + "9 202212 3 166224 155035.0 177413.0 251 234.0 \n", + "10 202211 3 122849 113306.0 132392.0 185 171.0 \n", + "11 202210 3 87904 79741.0 96067.0 133 121.0 \n", + "12 202209 3 50182 43958.0 56406.0 76 67.0 \n", + "13 202208 3 30963 25942.0 35984.0 47 39.0 \n", + "14 202207 3 34882 29446.0 40318.0 53 45.0 \n", + "15 202206 3 46623 40398.0 52848.0 70 61.0 \n", + "16 202205 3 62970 56043.0 69897.0 95 85.0 \n", + "17 202204 3 72209 64804.0 79614.0 109 98.0 \n", + "18 202203 3 74613 67144.0 82082.0 113 102.0 \n", + "19 202202 3 55920 49511.0 62329.0 84 74.0 \n", + "20 202201 3 57629 50699.0 64559.0 87 77.0 \n", + "21 202152 3 54349 47029.0 61669.0 82 71.0 \n", + "22 202151 3 41698 35359.0 48037.0 63 53.0 \n", + "23 202150 3 38117 32497.0 43737.0 58 49.0 \n", + "24 202149 3 40168 34716.0 45620.0 61 53.0 \n", + "25 202148 3 41842 36364.0 47320.0 63 55.0 \n", + "26 202147 3 36598 31338.0 41858.0 55 47.0 \n", + "27 202146 3 30059 25302.0 34816.0 46 39.0 \n", + "28 202145 3 20364 16564.0 24164.0 31 25.0 \n", + "29 202144 3 18999 15042.0 22956.0 29 23.0 \n", + "... ... ... ... ... ... ... ... \n", + "1931 198521 3 26096 19621.0 32571.0 47 35.0 \n", + "1932 198520 3 27896 20885.0 34907.0 51 38.0 \n", + "1933 198519 3 43154 32821.0 53487.0 78 59.0 \n", + "1934 198518 3 40555 29935.0 51175.0 74 55.0 \n", + "1935 198517 3 34053 24366.0 43740.0 62 44.0 \n", + "1936 198516 3 50362 36451.0 64273.0 91 66.0 \n", + "1937 198515 3 63881 45538.0 82224.0 116 83.0 \n", + "1938 198514 3 134545 114400.0 154690.0 244 207.0 \n", + "1939 198513 3 197206 176080.0 218332.0 357 319.0 \n", + "1940 198512 3 245240 223304.0 267176.0 445 405.0 \n", + "1941 198511 3 276205 252399.0 300011.0 501 458.0 \n", + "1942 198510 3 353231 326279.0 380183.0 640 591.0 \n", + "1943 198509 3 369895 341109.0 398681.0 670 618.0 \n", + "1944 198508 3 389886 359529.0 420243.0 707 652.0 \n", + "1945 198507 3 471852 432599.0 511105.0 855 784.0 \n", + "1946 198506 3 565825 518011.0 613639.0 1026 939.0 \n", + "1947 198505 3 637302 592795.0 681809.0 1155 1074.0 \n", + "1948 198504 3 424937 390794.0 459080.0 770 708.0 \n", + "1949 198503 3 213901 174689.0 253113.0 388 317.0 \n", + "1950 198502 3 97586 80949.0 114223.0 177 147.0 \n", + "1951 198501 3 85489 65918.0 105060.0 155 120.0 \n", + "1952 198452 3 84830 60602.0 109058.0 154 110.0 \n", + "1953 198451 3 101726 80242.0 123210.0 185 146.0 \n", + "1954 198450 3 123680 101401.0 145959.0 225 184.0 \n", + "1955 198449 3 101073 81684.0 120462.0 184 149.0 \n", + "1956 198448 3 78620 60634.0 96606.0 143 110.0 \n", + "1957 198447 3 72029 54274.0 89784.0 131 99.0 \n", + "1958 198446 3 87330 67686.0 106974.0 159 123.0 \n", + "1959 198445 3 135223 101414.0 169032.0 246 184.0 \n", + "1960 198444 3 68422 20056.0 116788.0 125 37.0 \n", + "\n", + " inc100_up geo_insee geo_name \n", + "0 34.0 FR France \n", + "1 37.0 FR France \n", + "2 33.0 FR France \n", + "3 54.0 FR France \n", + "4 62.0 FR France \n", + "5 86.0 FR France \n", + "6 167.0 FR France \n", + "7 251.0 FR France \n", + "8 308.0 FR France \n", + "9 268.0 FR France \n", + "10 199.0 FR France \n", + "11 145.0 FR France \n", + "12 85.0 FR France \n", + "13 55.0 FR France \n", + "14 61.0 FR France \n", + "15 79.0 FR France \n", + "16 105.0 FR France \n", + "17 120.0 FR France \n", + "18 124.0 FR France \n", + "19 94.0 FR France \n", + "20 97.0 FR France \n", + "21 93.0 FR France \n", + "22 73.0 FR France \n", + "23 67.0 FR France \n", + "24 69.0 FR France \n", + "25 71.0 FR France \n", + "26 63.0 FR France \n", + "27 53.0 FR France \n", + "28 37.0 FR France \n", + "29 35.0 FR France \n", + "... ... ... ... \n", + "1931 59.0 FR France \n", + "1932 64.0 FR France \n", + "1933 97.0 FR France \n", + "1934 93.0 FR France \n", + "1935 80.0 FR France \n", + "1936 116.0 FR France \n", + "1937 149.0 FR France \n", + "1938 281.0 FR France \n", + "1939 395.0 FR France \n", + "1940 485.0 FR France \n", + "1941 544.0 FR France \n", + "1942 689.0 FR France \n", + "1943 722.0 FR France \n", + "1944 762.0 FR France \n", + "1945 926.0 FR France \n", + "1946 1113.0 FR France \n", + "1947 1236.0 FR France \n", + "1948 832.0 FR France \n", + "1949 459.0 FR France \n", + "1950 207.0 FR France \n", + "1951 190.0 FR France \n", + "1952 198.0 FR France \n", + "1953 224.0 FR France \n", + "1954 266.0 FR France \n", + "1955 219.0 FR France \n", + "1956 176.0 FR France \n", + "1957 163.0 FR France \n", + "1958 195.0 FR France \n", + "1959 308.0 FR France \n", + "1960 213.0 FR France \n", + "\n", + "[1961 rows x 10 columns]" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import os.path\n", + "import requests\n", + "\n", + "filename = 'data_10.csv'\n", + "\n", + "if os.path.isfile(filename):\n", + " print(f'{filename} already exists, download not necessary')\n", + "else:\n", + " r = requests.get(data_url)\n", + " with open(filename, 'wb') as f:\n", + " f.write(r.content)\n", + " #print(str(r.content))\n", + " \n", + "raw_data = pd.read_csv(filename, skiprows=1)\n", + "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": 33, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
weekindicatorincinc_lowinc_upinc100inc100_lowinc100_upgeo_inseegeo_name
172419891930NaNNaN0NaNNaNFRFrance
\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low inc100_up \\\n", + "1724 198919 3 0 NaN NaN 0 NaN NaN \n", + "\n", + " geo_insee geo_name \n", + "1724 FR France " + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "raw_data[raw_data.isnull().any(axis=1)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nous éliminons ce point, ce qui n'a pas d'impact fort sur notre analyse qui est assez simple." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
weekindicatorincinc_lowinc_upinc100inc100_lowinc100_upgeo_inseegeo_name
020222131753812255.022821.02618.034.0FRFrance
120222032041316271.024555.03125.037.0FRFrance
220221931787414068.021680.02721.033.0FRFrance
320221833035325089.035617.04638.054.0FRFrance
420221733600630373.041639.05446.062.0FRFrance
520221634994942836.057062.07564.086.0FRFrance
6202215310080690824.0110788.0152137.0167.0FRFrance
72022143155441143891.0166991.0234217.0251.0FRFrance
82022133191914179558.0204270.0289270.0308.0FRFrance
92022123166224155035.0177413.0251234.0268.0FRFrance
102022113122849113306.0132392.0185171.0199.0FRFrance
1120221038790479741.096067.0133121.0145.0FRFrance
1220220935018243958.056406.07667.085.0FRFrance
1320220833096325942.035984.04739.055.0FRFrance
1420220733488229446.040318.05345.061.0FRFrance
1520220634662340398.052848.07061.079.0FRFrance
1620220536297056043.069897.09585.0105.0FRFrance
1720220437220964804.079614.010998.0120.0FRFrance
1820220337461367144.082082.0113102.0124.0FRFrance
1920220235592049511.062329.08474.094.0FRFrance
2020220135762950699.064559.08777.097.0FRFrance
2120215235434947029.061669.08271.093.0FRFrance
2220215134169835359.048037.06353.073.0FRFrance
2320215033811732497.043737.05849.067.0FRFrance
2420214934016834716.045620.06153.069.0FRFrance
2520214834184236364.047320.06355.071.0FRFrance
2620214733659831338.041858.05547.063.0FRFrance
2720214633005925302.034816.04639.053.0FRFrance
2820214532036416564.024164.03125.037.0FRFrance
2920214431899915042.022956.02923.035.0FRFrance
.................................
193119852132609619621.032571.04735.059.0FRFrance
193219852032789620885.034907.05138.064.0FRFrance
193319851934315432821.053487.07859.097.0FRFrance
193419851834055529935.051175.07455.093.0FRFrance
193519851733405324366.043740.06244.080.0FRFrance
193619851635036236451.064273.09166.0116.0FRFrance
193719851536388145538.082224.011683.0149.0FRFrance
19381985143134545114400.0154690.0244207.0281.0FRFrance
19391985133197206176080.0218332.0357319.0395.0FRFrance
19401985123245240223304.0267176.0445405.0485.0FRFrance
19411985113276205252399.0300011.0501458.0544.0FRFrance
19421985103353231326279.0380183.0640591.0689.0FRFrance
19431985093369895341109.0398681.0670618.0722.0FRFrance
19441985083389886359529.0420243.0707652.0762.0FRFrance
19451985073471852432599.0511105.0855784.0926.0FRFrance
19461985063565825518011.0613639.01026939.01113.0FRFrance
19471985053637302592795.0681809.011551074.01236.0FRFrance
19481985043424937390794.0459080.0770708.0832.0FRFrance
19491985033213901174689.0253113.0388317.0459.0FRFrance
195019850239758680949.0114223.0177147.0207.0FRFrance
195119850138548965918.0105060.0155120.0190.0FRFrance
195219845238483060602.0109058.0154110.0198.0FRFrance
1953198451310172680242.0123210.0185146.0224.0FRFrance
19541984503123680101401.0145959.0225184.0266.0FRFrance
1955198449310107381684.0120462.0184149.0219.0FRFrance
195619844837862060634.096606.0143110.0176.0FRFrance
195719844737202954274.089784.013199.0163.0FRFrance
195819844638733067686.0106974.0159123.0195.0FRFrance
19591984453135223101414.0169032.0246184.0308.0FRFrance
196019844436842220056.0116788.012537.0213.0FRFrance
\n", + "

1960 rows × 10 columns

\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low \\\n", + "0 202221 3 17538 12255.0 22821.0 26 18.0 \n", + "1 202220 3 20413 16271.0 24555.0 31 25.0 \n", + "2 202219 3 17874 14068.0 21680.0 27 21.0 \n", + "3 202218 3 30353 25089.0 35617.0 46 38.0 \n", + "4 202217 3 36006 30373.0 41639.0 54 46.0 \n", + "5 202216 3 49949 42836.0 57062.0 75 64.0 \n", + "6 202215 3 100806 90824.0 110788.0 152 137.0 \n", + "7 202214 3 155441 143891.0 166991.0 234 217.0 \n", + "8 202213 3 191914 179558.0 204270.0 289 270.0 \n", + "9 202212 3 166224 155035.0 177413.0 251 234.0 \n", + "10 202211 3 122849 113306.0 132392.0 185 171.0 \n", + "11 202210 3 87904 79741.0 96067.0 133 121.0 \n", + "12 202209 3 50182 43958.0 56406.0 76 67.0 \n", + "13 202208 3 30963 25942.0 35984.0 47 39.0 \n", + "14 202207 3 34882 29446.0 40318.0 53 45.0 \n", + "15 202206 3 46623 40398.0 52848.0 70 61.0 \n", + "16 202205 3 62970 56043.0 69897.0 95 85.0 \n", + "17 202204 3 72209 64804.0 79614.0 109 98.0 \n", + "18 202203 3 74613 67144.0 82082.0 113 102.0 \n", + "19 202202 3 55920 49511.0 62329.0 84 74.0 \n", + "20 202201 3 57629 50699.0 64559.0 87 77.0 \n", + "21 202152 3 54349 47029.0 61669.0 82 71.0 \n", + "22 202151 3 41698 35359.0 48037.0 63 53.0 \n", + "23 202150 3 38117 32497.0 43737.0 58 49.0 \n", + "24 202149 3 40168 34716.0 45620.0 61 53.0 \n", + "25 202148 3 41842 36364.0 47320.0 63 55.0 \n", + "26 202147 3 36598 31338.0 41858.0 55 47.0 \n", + "27 202146 3 30059 25302.0 34816.0 46 39.0 \n", + "28 202145 3 20364 16564.0 24164.0 31 25.0 \n", + "29 202144 3 18999 15042.0 22956.0 29 23.0 \n", + "... ... ... ... ... ... ... ... \n", + "1931 198521 3 26096 19621.0 32571.0 47 35.0 \n", + "1932 198520 3 27896 20885.0 34907.0 51 38.0 \n", + "1933 198519 3 43154 32821.0 53487.0 78 59.0 \n", + "1934 198518 3 40555 29935.0 51175.0 74 55.0 \n", + "1935 198517 3 34053 24366.0 43740.0 62 44.0 \n", + "1936 198516 3 50362 36451.0 64273.0 91 66.0 \n", + "1937 198515 3 63881 45538.0 82224.0 116 83.0 \n", + "1938 198514 3 134545 114400.0 154690.0 244 207.0 \n", + "1939 198513 3 197206 176080.0 218332.0 357 319.0 \n", + "1940 198512 3 245240 223304.0 267176.0 445 405.0 \n", + "1941 198511 3 276205 252399.0 300011.0 501 458.0 \n", + "1942 198510 3 353231 326279.0 380183.0 640 591.0 \n", + "1943 198509 3 369895 341109.0 398681.0 670 618.0 \n", + "1944 198508 3 389886 359529.0 420243.0 707 652.0 \n", + "1945 198507 3 471852 432599.0 511105.0 855 784.0 \n", + "1946 198506 3 565825 518011.0 613639.0 1026 939.0 \n", + "1947 198505 3 637302 592795.0 681809.0 1155 1074.0 \n", + "1948 198504 3 424937 390794.0 459080.0 770 708.0 \n", + "1949 198503 3 213901 174689.0 253113.0 388 317.0 \n", + "1950 198502 3 97586 80949.0 114223.0 177 147.0 \n", + "1951 198501 3 85489 65918.0 105060.0 155 120.0 \n", + "1952 198452 3 84830 60602.0 109058.0 154 110.0 \n", + "1953 198451 3 101726 80242.0 123210.0 185 146.0 \n", + "1954 198450 3 123680 101401.0 145959.0 225 184.0 \n", + "1955 198449 3 101073 81684.0 120462.0 184 149.0 \n", + "1956 198448 3 78620 60634.0 96606.0 143 110.0 \n", + "1957 198447 3 72029 54274.0 89784.0 131 99.0 \n", + "1958 198446 3 87330 67686.0 106974.0 159 123.0 \n", + "1959 198445 3 135223 101414.0 169032.0 246 184.0 \n", + "1960 198444 3 68422 20056.0 116788.0 125 37.0 \n", + "\n", + " inc100_up geo_insee geo_name \n", + "0 34.0 FR France \n", + "1 37.0 FR France \n", + "2 33.0 FR France \n", + "3 54.0 FR France \n", + "4 62.0 FR France \n", + "5 86.0 FR France \n", + "6 167.0 FR France \n", + "7 251.0 FR France \n", + "8 308.0 FR France \n", + "9 268.0 FR France \n", + "10 199.0 FR France \n", + "11 145.0 FR France \n", + "12 85.0 FR France \n", + "13 55.0 FR France \n", + "14 61.0 FR France \n", + "15 79.0 FR France \n", + "16 105.0 FR France \n", + "17 120.0 FR France \n", + "18 124.0 FR France \n", + "19 94.0 FR France \n", + "20 97.0 FR France \n", + "21 93.0 FR France \n", + "22 73.0 FR France \n", + "23 67.0 FR France \n", + "24 69.0 FR France \n", + "25 71.0 FR France \n", + "26 63.0 FR France \n", + "27 53.0 FR France \n", + "28 37.0 FR France \n", + "29 35.0 FR France \n", + "... ... ... ... \n", + "1931 59.0 FR France \n", + "1932 64.0 FR France \n", + "1933 97.0 FR France \n", + "1934 93.0 FR France \n", + "1935 80.0 FR France \n", + "1936 116.0 FR France \n", + "1937 149.0 FR France \n", + "1938 281.0 FR France \n", + "1939 395.0 FR France \n", + "1940 485.0 FR France \n", + "1941 544.0 FR France \n", + "1942 689.0 FR France \n", + "1943 722.0 FR France \n", + "1944 762.0 FR France \n", + "1945 926.0 FR France \n", + "1946 1113.0 FR France \n", + "1947 1236.0 FR France \n", + "1948 832.0 FR France \n", + "1949 459.0 FR France \n", + "1950 207.0 FR France \n", + "1951 190.0 FR France \n", + "1952 198.0 FR France \n", + "1953 224.0 FR France \n", + "1954 266.0 FR France \n", + "1955 219.0 FR France \n", + "1956 176.0 FR France \n", + "1957 163.0 FR France \n", + "1958 195.0 FR France \n", + "1959 308.0 FR France \n", + "1960 213.0 FR France \n", + "\n", + "[1960 rows x 10 columns]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data = raw_data.dropna().copy()\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nos données utilisent une convention inhabituelle: le numéro de\n", + "semaine est collé à l'année, donnant l'impression qu'il s'agit\n", + "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\n", + "semaine. Il faut lui fournir les dates de début et de fin de\n", + "semaine. Nous utilisons pour cela la bibliothèque `isoweek`.\n", + "\n", + "Comme la conversion des semaines est devenu assez complexe, nous\n", + "écrivons une petite fonction Python pour cela. Ensuite, nous\n", + "l'appliquons à tous les points de nos donnés. Les résultats vont\n", + "dans une nouvelle colonne 'period'." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "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": [ + "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": 8, + "metadata": {}, + "outputs": [], + "source": [ + "sorted_data = data.set_index('period').sort_index()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "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.\n", + "\n", + "Ceci s'avère tout à fait juste sauf pour deux périodes consécutives\n", + "entre lesquelles il manque une semaine.\n", + "\n", + "Nous reconnaissons ces dates: c'est la semaine sans observations\n", + "que nous avions supprimées !" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1989-05-01/1989-05-07 1989-05-15/1989-05-21\n" + ] + } + ], + "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": [ + "Un premier regard sur les données !" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sorted_data['inc'].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Un zoom sur les dernières années montre mieux la situation des pics en hiver. Le creux des incidences se trouve en été." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sorted_data['inc'][-200:].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Etude de l'incidence annuelle" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Etant donné que le pic de l'épidémie se situe en hiver, à cheval\n", + "entre deux années civiles, nous définissons la période de référence\n", + "entre deux minima de l'incidence, du 1er août de l'année $N$ au\n", + "1er août 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 août de chaque année, nous utilisons le\n", + "premier jour de la semaine qui contient le 1er août.\n", + "\n", + "Comme l'incidence de syndrome grippal est très faible en été, cette\n", + "modification ne risque pas de fausser nos conclusions.\n", + "\n", + "Encore un petit détail: les données commencent an octobre 1984, ce qui\n", + "rend la première année incomplète. Nous commençons donc l'analyse en 1985." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "first_august_week = [pd.Period(pd.Timestamp(y, 8, 1), 'W')\n", + " for y in range(1985,\n", + " sorted_data.index[-1].year)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "En partant de cette liste des semaines qui contiennent un 1er août, 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": 13, + "metadata": {}, + "outputs": [], + "source": [ + "year = []\n", + "yearly_incidence = []\n", + "for week1, week2 in zip(first_august_week[:-1],\n", + " first_august_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": [ + "Voici les incidences annuelles." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 14, + "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": [ + "Une liste triée permet de plus facilement répérer les valeurs les plus élevées (à la fin)." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "2021 938731\n", + "2014 1600941\n", + "1991 1659249\n", + "1995 1840410\n", + "2020 2053781\n", + "2012 2175217\n", + "2003 2234584\n", + "2019 2254386\n", + "2006 2307352\n", + "2017 2321583\n", + "2001 2529279\n", + "1992 2574578\n", + "1993 2703886\n", + "2018 2705325\n", + "1988 2765617\n", + "2007 2780164\n", + "1987 2855570\n", + "2016 2856393\n", + "2011 2857040\n", + "2008 2973918\n", + "1998 3034904\n", + "2002 3125418\n", + "2009 3444020\n", + "1994 3514763\n", + "1996 3539413\n", + "2004 3567744\n", + "1997 3620066\n", + "2015 3654892\n", + "2000 3826372\n", + "2005 3835025\n", + "1999 3908112\n", + "2010 4111392\n", + "2013 4182691\n", + "1986 5115251\n", + "1990 5235827\n", + "1989 5466192\n", + "dtype: int64" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "yearly_incidence.sort_values()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Enfin, un histogramme montre bien que les épidémies fortes, qui touchent environ 10% de la population\n", + " française, sont assez rares: il y en eu trois au cours des 35 dernières années." + ] + }, + { + "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.hist(xrot=20)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.4" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/module3/analyse-syndrome-varicelle.ipynb b/module3/analyse-syndrome-varicelle.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..e4fa91805654cfef401cc9672a6a67a3f9ed5681 --- /dev/null +++ b/module3/analyse-syndrome-varicelle.ipynb @@ -0,0 +1,2538 @@ +{ + "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 varicelle 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": 2, + "metadata": {}, + "outputs": [], + "source": [ + "data_url = \"https://www.sentiweb.fr/datasets/incidence-PAY-7.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": [ + "Download the file if it does not exist" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "data_10.csv already exists, download not necessary\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
weekindicatorincinc_lowinc_upinc100inc100_lowinc100_upgeo_inseegeo_name
020222131753812255.022821.02618.034.0FRFrance
120222032041316271.024555.03125.037.0FRFrance
220221931787414068.021680.02721.033.0FRFrance
320221833035325089.035617.04638.054.0FRFrance
420221733600630373.041639.05446.062.0FRFrance
520221634994942836.057062.07564.086.0FRFrance
6202215310080690824.0110788.0152137.0167.0FRFrance
72022143155441143891.0166991.0234217.0251.0FRFrance
82022133191914179558.0204270.0289270.0308.0FRFrance
92022123166224155035.0177413.0251234.0268.0FRFrance
102022113122849113306.0132392.0185171.0199.0FRFrance
1120221038790479741.096067.0133121.0145.0FRFrance
1220220935018243958.056406.07667.085.0FRFrance
1320220833096325942.035984.04739.055.0FRFrance
1420220733488229446.040318.05345.061.0FRFrance
1520220634662340398.052848.07061.079.0FRFrance
1620220536297056043.069897.09585.0105.0FRFrance
1720220437220964804.079614.010998.0120.0FRFrance
1820220337461367144.082082.0113102.0124.0FRFrance
1920220235592049511.062329.08474.094.0FRFrance
2020220135762950699.064559.08777.097.0FRFrance
2120215235434947029.061669.08271.093.0FRFrance
2220215134169835359.048037.06353.073.0FRFrance
2320215033811732497.043737.05849.067.0FRFrance
2420214934016834716.045620.06153.069.0FRFrance
2520214834184236364.047320.06355.071.0FRFrance
2620214733659831338.041858.05547.063.0FRFrance
2720214633005925302.034816.04639.053.0FRFrance
2820214532036416564.024164.03125.037.0FRFrance
2920214431899915042.022956.02923.035.0FRFrance
.................................
193119852132609619621.032571.04735.059.0FRFrance
193219852032789620885.034907.05138.064.0FRFrance
193319851934315432821.053487.07859.097.0FRFrance
193419851834055529935.051175.07455.093.0FRFrance
193519851733405324366.043740.06244.080.0FRFrance
193619851635036236451.064273.09166.0116.0FRFrance
193719851536388145538.082224.011683.0149.0FRFrance
19381985143134545114400.0154690.0244207.0281.0FRFrance
19391985133197206176080.0218332.0357319.0395.0FRFrance
19401985123245240223304.0267176.0445405.0485.0FRFrance
19411985113276205252399.0300011.0501458.0544.0FRFrance
19421985103353231326279.0380183.0640591.0689.0FRFrance
19431985093369895341109.0398681.0670618.0722.0FRFrance
19441985083389886359529.0420243.0707652.0762.0FRFrance
19451985073471852432599.0511105.0855784.0926.0FRFrance
19461985063565825518011.0613639.01026939.01113.0FRFrance
19471985053637302592795.0681809.011551074.01236.0FRFrance
19481985043424937390794.0459080.0770708.0832.0FRFrance
19491985033213901174689.0253113.0388317.0459.0FRFrance
195019850239758680949.0114223.0177147.0207.0FRFrance
195119850138548965918.0105060.0155120.0190.0FRFrance
195219845238483060602.0109058.0154110.0198.0FRFrance
1953198451310172680242.0123210.0185146.0224.0FRFrance
19541984503123680101401.0145959.0225184.0266.0FRFrance
1955198449310107381684.0120462.0184149.0219.0FRFrance
195619844837862060634.096606.0143110.0176.0FRFrance
195719844737202954274.089784.013199.0163.0FRFrance
195819844638733067686.0106974.0159123.0195.0FRFrance
19591984453135223101414.0169032.0246184.0308.0FRFrance
196019844436842220056.0116788.012537.0213.0FRFrance
\n", + "

1961 rows × 10 columns

\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low \\\n", + "0 202221 3 17538 12255.0 22821.0 26 18.0 \n", + "1 202220 3 20413 16271.0 24555.0 31 25.0 \n", + "2 202219 3 17874 14068.0 21680.0 27 21.0 \n", + "3 202218 3 30353 25089.0 35617.0 46 38.0 \n", + "4 202217 3 36006 30373.0 41639.0 54 46.0 \n", + "5 202216 3 49949 42836.0 57062.0 75 64.0 \n", + "6 202215 3 100806 90824.0 110788.0 152 137.0 \n", + "7 202214 3 155441 143891.0 166991.0 234 217.0 \n", + "8 202213 3 191914 179558.0 204270.0 289 270.0 \n", + "9 202212 3 166224 155035.0 177413.0 251 234.0 \n", + "10 202211 3 122849 113306.0 132392.0 185 171.0 \n", + "11 202210 3 87904 79741.0 96067.0 133 121.0 \n", + "12 202209 3 50182 43958.0 56406.0 76 67.0 \n", + "13 202208 3 30963 25942.0 35984.0 47 39.0 \n", + "14 202207 3 34882 29446.0 40318.0 53 45.0 \n", + "15 202206 3 46623 40398.0 52848.0 70 61.0 \n", + "16 202205 3 62970 56043.0 69897.0 95 85.0 \n", + "17 202204 3 72209 64804.0 79614.0 109 98.0 \n", + "18 202203 3 74613 67144.0 82082.0 113 102.0 \n", + "19 202202 3 55920 49511.0 62329.0 84 74.0 \n", + "20 202201 3 57629 50699.0 64559.0 87 77.0 \n", + "21 202152 3 54349 47029.0 61669.0 82 71.0 \n", + "22 202151 3 41698 35359.0 48037.0 63 53.0 \n", + "23 202150 3 38117 32497.0 43737.0 58 49.0 \n", + "24 202149 3 40168 34716.0 45620.0 61 53.0 \n", + "25 202148 3 41842 36364.0 47320.0 63 55.0 \n", + "26 202147 3 36598 31338.0 41858.0 55 47.0 \n", + "27 202146 3 30059 25302.0 34816.0 46 39.0 \n", + "28 202145 3 20364 16564.0 24164.0 31 25.0 \n", + "29 202144 3 18999 15042.0 22956.0 29 23.0 \n", + "... ... ... ... ... ... ... ... \n", + "1931 198521 3 26096 19621.0 32571.0 47 35.0 \n", + "1932 198520 3 27896 20885.0 34907.0 51 38.0 \n", + "1933 198519 3 43154 32821.0 53487.0 78 59.0 \n", + "1934 198518 3 40555 29935.0 51175.0 74 55.0 \n", + "1935 198517 3 34053 24366.0 43740.0 62 44.0 \n", + "1936 198516 3 50362 36451.0 64273.0 91 66.0 \n", + "1937 198515 3 63881 45538.0 82224.0 116 83.0 \n", + "1938 198514 3 134545 114400.0 154690.0 244 207.0 \n", + "1939 198513 3 197206 176080.0 218332.0 357 319.0 \n", + "1940 198512 3 245240 223304.0 267176.0 445 405.0 \n", + "1941 198511 3 276205 252399.0 300011.0 501 458.0 \n", + "1942 198510 3 353231 326279.0 380183.0 640 591.0 \n", + "1943 198509 3 369895 341109.0 398681.0 670 618.0 \n", + "1944 198508 3 389886 359529.0 420243.0 707 652.0 \n", + "1945 198507 3 471852 432599.0 511105.0 855 784.0 \n", + "1946 198506 3 565825 518011.0 613639.0 1026 939.0 \n", + "1947 198505 3 637302 592795.0 681809.0 1155 1074.0 \n", + "1948 198504 3 424937 390794.0 459080.0 770 708.0 \n", + "1949 198503 3 213901 174689.0 253113.0 388 317.0 \n", + "1950 198502 3 97586 80949.0 114223.0 177 147.0 \n", + "1951 198501 3 85489 65918.0 105060.0 155 120.0 \n", + "1952 198452 3 84830 60602.0 109058.0 154 110.0 \n", + "1953 198451 3 101726 80242.0 123210.0 185 146.0 \n", + "1954 198450 3 123680 101401.0 145959.0 225 184.0 \n", + "1955 198449 3 101073 81684.0 120462.0 184 149.0 \n", + "1956 198448 3 78620 60634.0 96606.0 143 110.0 \n", + "1957 198447 3 72029 54274.0 89784.0 131 99.0 \n", + "1958 198446 3 87330 67686.0 106974.0 159 123.0 \n", + "1959 198445 3 135223 101414.0 169032.0 246 184.0 \n", + "1960 198444 3 68422 20056.0 116788.0 125 37.0 \n", + "\n", + " inc100_up geo_insee geo_name \n", + "0 34.0 FR France \n", + "1 37.0 FR France \n", + "2 33.0 FR France \n", + "3 54.0 FR France \n", + "4 62.0 FR France \n", + "5 86.0 FR France \n", + "6 167.0 FR France \n", + "7 251.0 FR France \n", + "8 308.0 FR France \n", + "9 268.0 FR France \n", + "10 199.0 FR France \n", + "11 145.0 FR France \n", + "12 85.0 FR France \n", + "13 55.0 FR France \n", + "14 61.0 FR France \n", + "15 79.0 FR France \n", + "16 105.0 FR France \n", + "17 120.0 FR France \n", + "18 124.0 FR France \n", + "19 94.0 FR France \n", + "20 97.0 FR France \n", + "21 93.0 FR France \n", + "22 73.0 FR France \n", + "23 67.0 FR France \n", + "24 69.0 FR France \n", + "25 71.0 FR France \n", + "26 63.0 FR France \n", + "27 53.0 FR France \n", + "28 37.0 FR France \n", + "29 35.0 FR France \n", + "... ... ... ... \n", + "1931 59.0 FR France \n", + "1932 64.0 FR France \n", + "1933 97.0 FR France \n", + "1934 93.0 FR France \n", + "1935 80.0 FR France \n", + "1936 116.0 FR France \n", + "1937 149.0 FR France \n", + "1938 281.0 FR France \n", + "1939 395.0 FR France \n", + "1940 485.0 FR France \n", + "1941 544.0 FR France \n", + "1942 689.0 FR France \n", + "1943 722.0 FR France \n", + "1944 762.0 FR France \n", + "1945 926.0 FR France \n", + "1946 1113.0 FR France \n", + "1947 1236.0 FR France \n", + "1948 832.0 FR France \n", + "1949 459.0 FR France \n", + "1950 207.0 FR France \n", + "1951 190.0 FR France \n", + "1952 198.0 FR France \n", + "1953 224.0 FR France \n", + "1954 266.0 FR France \n", + "1955 219.0 FR France \n", + "1956 176.0 FR France \n", + "1957 163.0 FR France \n", + "1958 195.0 FR France \n", + "1959 308.0 FR France \n", + "1960 213.0 FR France \n", + "\n", + "[1961 rows x 10 columns]" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import os.path\n", + "import requests\n", + "\n", + "filename = 'varicelle-01.csv'\n", + "\n", + "if os.path.isfile(filename):\n", + " print(f'{filename} already exists, download not necessary')\n", + "else:\n", + " r = requests.get(data_url)\n", + " with open(filename, 'wb') as f:\n", + " f.write(r.content)\n", + " #print(str(r.content))\n", + " \n", + "raw_data = pd.read_csv(filename, skiprows=1)\n", + "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": 33, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
weekindicatorincinc_lowinc_upinc100inc100_lowinc100_upgeo_inseegeo_name
172419891930NaNNaN0NaNNaNFRFrance
\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low inc100_up \\\n", + "1724 198919 3 0 NaN NaN 0 NaN NaN \n", + "\n", + " geo_insee geo_name \n", + "1724 FR France " + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "raw_data[raw_data.isnull().any(axis=1)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nous éliminons ce point, ce qui n'a pas d'impact fort sur notre analyse qui est assez simple." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
weekindicatorincinc_lowinc_upinc100inc100_lowinc100_upgeo_inseegeo_name
020222131753812255.022821.02618.034.0FRFrance
120222032041316271.024555.03125.037.0FRFrance
220221931787414068.021680.02721.033.0FRFrance
320221833035325089.035617.04638.054.0FRFrance
420221733600630373.041639.05446.062.0FRFrance
520221634994942836.057062.07564.086.0FRFrance
6202215310080690824.0110788.0152137.0167.0FRFrance
72022143155441143891.0166991.0234217.0251.0FRFrance
82022133191914179558.0204270.0289270.0308.0FRFrance
92022123166224155035.0177413.0251234.0268.0FRFrance
102022113122849113306.0132392.0185171.0199.0FRFrance
1120221038790479741.096067.0133121.0145.0FRFrance
1220220935018243958.056406.07667.085.0FRFrance
1320220833096325942.035984.04739.055.0FRFrance
1420220733488229446.040318.05345.061.0FRFrance
1520220634662340398.052848.07061.079.0FRFrance
1620220536297056043.069897.09585.0105.0FRFrance
1720220437220964804.079614.010998.0120.0FRFrance
1820220337461367144.082082.0113102.0124.0FRFrance
1920220235592049511.062329.08474.094.0FRFrance
2020220135762950699.064559.08777.097.0FRFrance
2120215235434947029.061669.08271.093.0FRFrance
2220215134169835359.048037.06353.073.0FRFrance
2320215033811732497.043737.05849.067.0FRFrance
2420214934016834716.045620.06153.069.0FRFrance
2520214834184236364.047320.06355.071.0FRFrance
2620214733659831338.041858.05547.063.0FRFrance
2720214633005925302.034816.04639.053.0FRFrance
2820214532036416564.024164.03125.037.0FRFrance
2920214431899915042.022956.02923.035.0FRFrance
.................................
193119852132609619621.032571.04735.059.0FRFrance
193219852032789620885.034907.05138.064.0FRFrance
193319851934315432821.053487.07859.097.0FRFrance
193419851834055529935.051175.07455.093.0FRFrance
193519851733405324366.043740.06244.080.0FRFrance
193619851635036236451.064273.09166.0116.0FRFrance
193719851536388145538.082224.011683.0149.0FRFrance
19381985143134545114400.0154690.0244207.0281.0FRFrance
19391985133197206176080.0218332.0357319.0395.0FRFrance
19401985123245240223304.0267176.0445405.0485.0FRFrance
19411985113276205252399.0300011.0501458.0544.0FRFrance
19421985103353231326279.0380183.0640591.0689.0FRFrance
19431985093369895341109.0398681.0670618.0722.0FRFrance
19441985083389886359529.0420243.0707652.0762.0FRFrance
19451985073471852432599.0511105.0855784.0926.0FRFrance
19461985063565825518011.0613639.01026939.01113.0FRFrance
19471985053637302592795.0681809.011551074.01236.0FRFrance
19481985043424937390794.0459080.0770708.0832.0FRFrance
19491985033213901174689.0253113.0388317.0459.0FRFrance
195019850239758680949.0114223.0177147.0207.0FRFrance
195119850138548965918.0105060.0155120.0190.0FRFrance
195219845238483060602.0109058.0154110.0198.0FRFrance
1953198451310172680242.0123210.0185146.0224.0FRFrance
19541984503123680101401.0145959.0225184.0266.0FRFrance
1955198449310107381684.0120462.0184149.0219.0FRFrance
195619844837862060634.096606.0143110.0176.0FRFrance
195719844737202954274.089784.013199.0163.0FRFrance
195819844638733067686.0106974.0159123.0195.0FRFrance
19591984453135223101414.0169032.0246184.0308.0FRFrance
196019844436842220056.0116788.012537.0213.0FRFrance
\n", + "

1960 rows × 10 columns

\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low \\\n", + "0 202221 3 17538 12255.0 22821.0 26 18.0 \n", + "1 202220 3 20413 16271.0 24555.0 31 25.0 \n", + "2 202219 3 17874 14068.0 21680.0 27 21.0 \n", + "3 202218 3 30353 25089.0 35617.0 46 38.0 \n", + "4 202217 3 36006 30373.0 41639.0 54 46.0 \n", + "5 202216 3 49949 42836.0 57062.0 75 64.0 \n", + "6 202215 3 100806 90824.0 110788.0 152 137.0 \n", + "7 202214 3 155441 143891.0 166991.0 234 217.0 \n", + "8 202213 3 191914 179558.0 204270.0 289 270.0 \n", + "9 202212 3 166224 155035.0 177413.0 251 234.0 \n", + "10 202211 3 122849 113306.0 132392.0 185 171.0 \n", + "11 202210 3 87904 79741.0 96067.0 133 121.0 \n", + "12 202209 3 50182 43958.0 56406.0 76 67.0 \n", + "13 202208 3 30963 25942.0 35984.0 47 39.0 \n", + "14 202207 3 34882 29446.0 40318.0 53 45.0 \n", + "15 202206 3 46623 40398.0 52848.0 70 61.0 \n", + "16 202205 3 62970 56043.0 69897.0 95 85.0 \n", + "17 202204 3 72209 64804.0 79614.0 109 98.0 \n", + "18 202203 3 74613 67144.0 82082.0 113 102.0 \n", + "19 202202 3 55920 49511.0 62329.0 84 74.0 \n", + "20 202201 3 57629 50699.0 64559.0 87 77.0 \n", + "21 202152 3 54349 47029.0 61669.0 82 71.0 \n", + "22 202151 3 41698 35359.0 48037.0 63 53.0 \n", + "23 202150 3 38117 32497.0 43737.0 58 49.0 \n", + "24 202149 3 40168 34716.0 45620.0 61 53.0 \n", + "25 202148 3 41842 36364.0 47320.0 63 55.0 \n", + "26 202147 3 36598 31338.0 41858.0 55 47.0 \n", + "27 202146 3 30059 25302.0 34816.0 46 39.0 \n", + "28 202145 3 20364 16564.0 24164.0 31 25.0 \n", + "29 202144 3 18999 15042.0 22956.0 29 23.0 \n", + "... ... ... ... ... ... ... ... \n", + "1931 198521 3 26096 19621.0 32571.0 47 35.0 \n", + "1932 198520 3 27896 20885.0 34907.0 51 38.0 \n", + "1933 198519 3 43154 32821.0 53487.0 78 59.0 \n", + "1934 198518 3 40555 29935.0 51175.0 74 55.0 \n", + "1935 198517 3 34053 24366.0 43740.0 62 44.0 \n", + "1936 198516 3 50362 36451.0 64273.0 91 66.0 \n", + "1937 198515 3 63881 45538.0 82224.0 116 83.0 \n", + "1938 198514 3 134545 114400.0 154690.0 244 207.0 \n", + "1939 198513 3 197206 176080.0 218332.0 357 319.0 \n", + "1940 198512 3 245240 223304.0 267176.0 445 405.0 \n", + "1941 198511 3 276205 252399.0 300011.0 501 458.0 \n", + "1942 198510 3 353231 326279.0 380183.0 640 591.0 \n", + "1943 198509 3 369895 341109.0 398681.0 670 618.0 \n", + "1944 198508 3 389886 359529.0 420243.0 707 652.0 \n", + "1945 198507 3 471852 432599.0 511105.0 855 784.0 \n", + "1946 198506 3 565825 518011.0 613639.0 1026 939.0 \n", + "1947 198505 3 637302 592795.0 681809.0 1155 1074.0 \n", + "1948 198504 3 424937 390794.0 459080.0 770 708.0 \n", + "1949 198503 3 213901 174689.0 253113.0 388 317.0 \n", + "1950 198502 3 97586 80949.0 114223.0 177 147.0 \n", + "1951 198501 3 85489 65918.0 105060.0 155 120.0 \n", + "1952 198452 3 84830 60602.0 109058.0 154 110.0 \n", + "1953 198451 3 101726 80242.0 123210.0 185 146.0 \n", + "1954 198450 3 123680 101401.0 145959.0 225 184.0 \n", + "1955 198449 3 101073 81684.0 120462.0 184 149.0 \n", + "1956 198448 3 78620 60634.0 96606.0 143 110.0 \n", + "1957 198447 3 72029 54274.0 89784.0 131 99.0 \n", + "1958 198446 3 87330 67686.0 106974.0 159 123.0 \n", + "1959 198445 3 135223 101414.0 169032.0 246 184.0 \n", + "1960 198444 3 68422 20056.0 116788.0 125 37.0 \n", + "\n", + " inc100_up geo_insee geo_name \n", + "0 34.0 FR France \n", + "1 37.0 FR France \n", + "2 33.0 FR France \n", + "3 54.0 FR France \n", + "4 62.0 FR France \n", + "5 86.0 FR France \n", + "6 167.0 FR France \n", + "7 251.0 FR France \n", + "8 308.0 FR France \n", + "9 268.0 FR France \n", + "10 199.0 FR France \n", + "11 145.0 FR France \n", + "12 85.0 FR France \n", + "13 55.0 FR France \n", + "14 61.0 FR France \n", + "15 79.0 FR France \n", + "16 105.0 FR France \n", + "17 120.0 FR France \n", + "18 124.0 FR France \n", + "19 94.0 FR France \n", + "20 97.0 FR France \n", + "21 93.0 FR France \n", + "22 73.0 FR France \n", + "23 67.0 FR France \n", + "24 69.0 FR France \n", + "25 71.0 FR France \n", + "26 63.0 FR France \n", + "27 53.0 FR France \n", + "28 37.0 FR France \n", + "29 35.0 FR France \n", + "... ... ... ... \n", + "1931 59.0 FR France \n", + "1932 64.0 FR France \n", + "1933 97.0 FR France \n", + "1934 93.0 FR France \n", + "1935 80.0 FR France \n", + "1936 116.0 FR France \n", + "1937 149.0 FR France \n", + "1938 281.0 FR France \n", + "1939 395.0 FR France \n", + "1940 485.0 FR France \n", + "1941 544.0 FR France \n", + "1942 689.0 FR France \n", + "1943 722.0 FR France \n", + "1944 762.0 FR France \n", + "1945 926.0 FR France \n", + "1946 1113.0 FR France \n", + "1947 1236.0 FR France \n", + "1948 832.0 FR France \n", + "1949 459.0 FR France \n", + "1950 207.0 FR France \n", + "1951 190.0 FR France \n", + "1952 198.0 FR France \n", + "1953 224.0 FR France \n", + "1954 266.0 FR France \n", + "1955 219.0 FR France \n", + "1956 176.0 FR France \n", + "1957 163.0 FR France \n", + "1958 195.0 FR France \n", + "1959 308.0 FR France \n", + "1960 213.0 FR France \n", + "\n", + "[1960 rows x 10 columns]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data = raw_data.dropna().copy()\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nos données utilisent une convention inhabituelle: le numéro de\n", + "semaine est collé à l'année, donnant l'impression qu'il s'agit\n", + "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\n", + "semaine. Il faut lui fournir les dates de début et de fin de\n", + "semaine. Nous utilisons pour cela la bibliothèque `isoweek`.\n", + "\n", + "Comme la conversion des semaines est devenu assez complexe, nous\n", + "écrivons une petite fonction Python pour cela. Ensuite, nous\n", + "l'appliquons à tous les points de nos donnés. Les résultats vont\n", + "dans une nouvelle colonne 'period'." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "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": [ + "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": 8, + "metadata": {}, + "outputs": [], + "source": [ + "sorted_data = data.set_index('period').sort_index()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "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.\n", + "\n", + "Ceci s'avère tout à fait juste sauf pour deux périodes consécutives\n", + "entre lesquelles il manque une semaine.\n", + "\n", + "Nous reconnaissons ces dates: c'est la semaine sans observations\n", + "que nous avions supprimées !" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1989-05-01/1989-05-07 1989-05-15/1989-05-21\n" + ] + } + ], + "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": [ + "Un premier regard sur les données !" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sorted_data['inc'].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Un zoom sur les dernières années montre mieux la situation des pics en hiver. Le creux des incidences se trouve en été." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sorted_data['inc'][-200:].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Etude de l'incidence annuelle" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Etant donné que le pic de l'épidémie se situe en hiver, à cheval\n", + "entre deux années civiles, nous définissons la période de référence\n", + "entre deux minima de l'incidence, du 1er août de l'année $N$ au\n", + "1er août 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 août de chaque année, nous utilisons le\n", + "premier jour de la semaine qui contient le 1er août.\n", + "\n", + "Comme l'incidence de syndrome grippal est très faible en été, cette\n", + "modification ne risque pas de fausser nos conclusions.\n", + "\n", + "Encore un petit détail: les données commencent an octobre 1984, ce qui\n", + "rend la première année incomplète. Nous commençons donc l'analyse en 1985." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "first_august_week = [pd.Period(pd.Timestamp(y, 8, 1), 'W')\n", + " for y in range(1985,\n", + " sorted_data.index[-1].year)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "En partant de cette liste des semaines qui contiennent un 1er août, 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": 13, + "metadata": {}, + "outputs": [], + "source": [ + "year = []\n", + "yearly_incidence = []\n", + "for week1, week2 in zip(first_august_week[:-1],\n", + " first_august_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": [ + "Voici les incidences annuelles." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 14, + "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": [ + "Une liste triée permet de plus facilement répérer les valeurs les plus élevées (à la fin)." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "2021 938731\n", + "2014 1600941\n", + "1991 1659249\n", + "1995 1840410\n", + "2020 2053781\n", + "2012 2175217\n", + "2003 2234584\n", + "2019 2254386\n", + "2006 2307352\n", + "2017 2321583\n", + "2001 2529279\n", + "1992 2574578\n", + "1993 2703886\n", + "2018 2705325\n", + "1988 2765617\n", + "2007 2780164\n", + "1987 2855570\n", + "2016 2856393\n", + "2011 2857040\n", + "2008 2973918\n", + "1998 3034904\n", + "2002 3125418\n", + "2009 3444020\n", + "1994 3514763\n", + "1996 3539413\n", + "2004 3567744\n", + "1997 3620066\n", + "2015 3654892\n", + "2000 3826372\n", + "2005 3835025\n", + "1999 3908112\n", + "2010 4111392\n", + "2013 4182691\n", + "1986 5115251\n", + "1990 5235827\n", + "1989 5466192\n", + "dtype: int64" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "yearly_incidence.sort_values()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Enfin, un histogramme montre bien que les épidémies fortes, qui touchent environ 10% de la population\n", + " française, sont assez rares: il y en eu trois au cours des 35 dernières années." + ] + }, + { + "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.hist(xrot=20)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.4" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/module3/data.csv b/module3/data.csv new file mode 100644 index 0000000000000000000000000000000000000000..888552a6d623bb1fe8d244d2d4aafd62a000ba72 --- /dev/null +++ b/module3/data.csv @@ -0,0 +1,1963 @@ +# @source="r�seau Sentinelles, INSERM, Sorbonne Universit�, http://www.sentiweb.fr", @meta={"period":[198444,202221],"geo":["PAY","1"],"geo_ref":"insee","indicator":"3","type":"all","conf_int":true,"compact":false}, @date=2022-06-04T12:28:03+02:00 +week,indicator,inc,inc_low,inc_up,inc100,inc100_low,inc100_up,geo_insee,geo_name +202221,3,17538,12255,22821,26,18,34,FR,France +202220,3,20413,16271,24555,31,25,37,FR,France +202219,3,17874,14068,21680,27,21,33,FR,France +202218,3,30353,25089,35617,46,38,54,FR,France +202217,3,36006,30373,41639,54,46,62,FR,France +202216,3,49949,42836,57062,75,64,86,FR,France +202215,3,100806,90824,110788,152,137,167,FR,France +202214,3,155441,143891,166991,234,217,251,FR,France +202213,3,191914,179558,204270,289,270,308,FR,France +202212,3,166224,155035,177413,251,234,268,FR,France +202211,3,122849,113306,132392,185,171,199,FR,France +202210,3,87904,79741,96067,133,121,145,FR,France +202209,3,50182,43958,56406,76,67,85,FR,France +202208,3,30963,25942,35984,47,39,55,FR,France +202207,3,34882,29446,40318,53,45,61,FR,France +202206,3,46623,40398,52848,70,61,79,FR,France +202205,3,62970,56043,69897,95,85,105,FR,France +202204,3,72209,64804,79614,109,98,120,FR,France +202203,3,74613,67144,82082,113,102,124,FR,France +202202,3,55920,49511,62329,84,74,94,FR,France +202201,3,57629,50699,64559,87,77,97,FR,France +202152,3,54349,47029,61669,82,71,93,FR,France +202151,3,41698,35359,48037,63,53,73,FR,France +202150,3,38117,32497,43737,58,49,67,FR,France +202149,3,40168,34716,45620,61,53,69,FR,France +202148,3,41842,36364,47320,63,55,71,FR,France +202147,3,36598,31338,41858,55,47,63,FR,France +202146,3,30059,25302,34816,46,39,53,FR,France +202145,3,20364,16564,24164,31,25,37,FR,France +202144,3,18999,15042,22956,29,23,35,FR,France +202143,3,27040,21935,32145,41,33,49,FR,France +202142,3,28343,23382,33304,43,35,51,FR,France +202141,3,25043,20586,29500,38,31,45,FR,France +202140,3,26286,21842,30730,40,33,47,FR,France +202139,3,22155,18014,26296,34,28,40,FR,France +202138,3,15614,12310,18918,24,19,29,FR,France +202137,3,13673,10404,16942,21,16,26,FR,France +202136,3,10289,7505,13073,16,12,20,FR,France +202135,3,12609,9282,15936,19,14,24,FR,France +202134,3,13081,9540,16622,20,15,25,FR,France +202133,3,10392,7042,13742,16,11,21,FR,France +202132,3,15586,11009,20163,24,17,31,FR,France +202131,3,18855,13664,24046,29,21,37,FR,France +202130,3,13991,9695,18287,21,14,28,FR,France +202129,3,13626,9618,17634,21,15,27,FR,France +202128,3,8636,5430,11842,13,8,18,FR,France +202127,3,10693,6838,14548,16,10,22,FR,France +202126,3,7086,4109,10063,11,6,16,FR,France +202125,3,7942,5540,10344,12,8,16,FR,France +202124,3,4855,3011,6699,7,4,10,FR,France +202123,3,6710,4455,8965,10,7,13,FR,France +202122,3,7879,5495,10263,12,8,16,FR,France +202121,3,7827,5403,10251,12,8,16,FR,France +202120,3,10278,7540,13016,16,12,20,FR,France +202119,3,9539,6860,12218,14,10,18,FR,France +202118,3,12135,9165,15105,18,14,22,FR,France +202117,3,12058,8891,15225,18,13,23,FR,France +202116,3,16505,12735,20275,25,19,31,FR,France +202115,3,19306,15398,23214,29,23,35,FR,France +202114,3,21073,17099,25047,32,26,38,FR,France +202113,3,26413,22094,30732,40,33,47,FR,France +202112,3,30658,25919,35397,46,39,53,FR,France +202111,3,24988,20718,29258,38,32,44,FR,France +202110,3,19539,15951,23127,30,25,35,FR,France +202109,3,17572,13926,21218,27,21,33,FR,France +202108,3,20882,16907,24857,32,26,38,FR,France +202107,3,22393,18303,26483,34,28,40,FR,France +202106,3,23183,19134,27232,35,29,41,FR,France +202105,3,22426,18445,26407,34,28,40,FR,France +202104,3,25804,21491,30117,39,32,46,FR,France +202103,3,21810,17894,25726,33,27,39,FR,France +202102,3,17320,13906,20734,26,21,31,FR,France +202101,3,21799,17778,25820,33,27,39,FR,France +202053,3,21220,16498,25942,32,25,39,FR,France +202052,3,16428,12285,20571,25,19,31,FR,France +202051,3,21619,17370,25868,33,27,39,FR,France +202050,3,16845,13220,20470,26,20,32,FR,France +202049,3,12939,9923,15955,20,15,25,FR,France +202048,3,13804,10641,16967,21,16,26,FR,France +202047,3,19085,15285,22885,29,23,35,FR,France +202046,3,24801,20503,29099,38,31,45,FR,France +202045,3,42516,36857,48175,65,56,74,FR,France +202044,3,44567,38521,50613,68,59,77,FR,France +202043,3,43799,37581,50017,67,58,76,FR,France +202042,3,35183,29847,40519,53,45,61,FR,France +202041,3,27926,23251,32601,42,35,49,FR,France +202040,3,20443,16381,24505,31,25,37,FR,France +202039,3,19810,15900,23720,30,24,36,FR,France +202038,3,25559,21141,29977,39,32,46,FR,France +202037,3,18485,14649,22321,28,22,34,FR,France +202036,3,10390,7646,13134,16,12,20,FR,France +202035,3,9918,6842,12994,15,10,20,FR,France +202034,3,6084,3090,9078,9,4,14,FR,France +202033,3,6106,3411,8801,9,5,13,FR,France +202032,3,5918,3330,8506,9,5,13,FR,France +202031,3,4351,2269,6433,7,4,10,FR,France +202030,3,8179,5442,10916,12,8,16,FR,France +202029,3,8687,5860,11514,13,9,17,FR,France +202028,3,8325,5688,10962,13,9,17,FR,France +202027,3,4066,2406,5726,6,3,9,FR,France +202026,3,4039,2389,5689,6,3,9,FR,France +202025,3,2853,1488,4218,4,2,6,FR,France +202024,3,3058,1690,4426,5,3,7,FR,France +202023,3,4168,2468,5868,6,3,9,FR,France +202022,3,3580,1947,5213,5,3,7,FR,France +202021,3,6114,4026,8202,9,6,12,FR,France +202020,3,9315,6775,11855,14,10,18,FR,France +202019,3,11679,8722,14636,18,14,22,FR,France +202018,3,16398,12851,19945,25,20,30,FR,France +202017,3,18082,14454,21710,27,21,33,FR,France +202016,3,24165,19893,28437,37,31,43,FR,France +202015,3,41049,35377,46721,62,53,71,FR,France +202014,3,71666,64531,78801,109,98,120,FR,France +202013,3,107742,99187,116297,164,151,177,FR,France +202012,3,107283,98610,115956,163,150,176,FR,France +202011,3,112943,104468,121418,172,159,185,FR,France +202010,3,105145,96812,113478,160,147,173,FR,France +202009,3,110696,102066,119326,168,155,181,FR,France +202008,3,143753,133984,153522,218,203,233,FR,France +202007,3,183610,172812,194408,279,263,295,FR,France +202006,3,206669,195481,217857,314,297,331,FR,France +202005,3,187957,177445,198469,285,269,301,FR,France +202004,3,122331,113492,131170,186,173,199,FR,France +202003,3,78413,71330,85496,119,108,130,FR,France +202002,3,53614,47654,59574,81,72,90,FR,France +202001,3,36850,31608,42092,56,48,64,FR,France +201952,3,28135,23220,33050,43,36,50,FR,France +201951,3,29786,25042,34530,45,38,52,FR,France +201950,3,34223,29156,39290,52,44,60,FR,France +201949,3,25662,21414,29910,39,33,45,FR,France +201948,3,22367,18055,26679,34,27,41,FR,France +201947,3,18669,14759,22579,28,22,34,FR,France +201946,3,16030,12567,19493,24,19,29,FR,France +201945,3,10138,7160,13116,15,10,20,FR,France +201944,3,7822,5010,10634,12,8,16,FR,France +201943,3,9487,6448,12526,14,9,19,FR,France +201942,3,7747,5243,10251,12,8,16,FR,France +201941,3,7122,4720,9524,11,7,15,FR,France +201940,3,8505,5784,11226,13,9,17,FR,France +201939,3,7091,4462,9720,11,7,15,FR,France +201938,3,4897,2891,6903,7,4,10,FR,France +201937,3,3172,1367,4977,5,2,8,FR,France +201936,3,2295,728,3862,3,1,5,FR,France +201935,3,1010,2,2018,2,0,4,FR,France +201934,3,1672,279,3065,3,1,5,FR,France +201933,3,1593,68,3118,2,0,4,FR,France +201932,3,1592,71,3113,2,0,4,FR,France +201931,3,2337,695,3979,4,2,6,FR,France +201930,3,1944,415,3473,3,1,5,FR,France +201929,3,2096,420,3772,3,0,6,FR,France +201928,3,1195,125,2265,2,0,4,FR,France +201927,3,2466,848,4084,4,2,6,FR,France +201926,3,1798,402,3194,3,1,5,FR,France +201925,3,1544,389,2699,2,0,4,FR,France +201924,3,876,17,1735,1,0,2,FR,France +201923,3,2004,748,3260,3,1,5,FR,France +201922,3,2181,602,3760,3,1,5,FR,France +201921,3,2585,1102,4068,4,2,6,FR,France +201920,3,2891,1202,4580,4,1,7,FR,France +201919,3,3221,1509,4933,5,2,8,FR,France +201918,3,1385,278,2492,2,0,4,FR,France +201917,3,3166,1348,4984,5,2,8,FR,France +201916,3,3842,1973,5711,6,3,9,FR,France +201915,3,5932,3669,8195,9,6,12,FR,France +201914,3,12675,9167,16183,19,14,24,FR,France +201913,3,16513,12530,20496,25,19,31,FR,France +201912,3,22184,17786,26582,34,27,41,FR,France +201911,3,31553,26556,36550,48,40,56,FR,France +201910,3,49742,43268,56216,76,66,86,FR,France +201909,3,88354,79564,97144,134,121,147,FR,France +201908,3,172604,160024,185184,262,243,281,FR,France +201907,3,307338,291220,323456,467,443,491,FR,France +201906,3,394286,376782,411790,599,572,626,FR,France +201905,3,355785,339295,372275,540,515,565,FR,France +201904,3,241090,227261,254919,366,345,387,FR,France +201903,3,147063,135890,158236,223,206,240,FR,France +201902,3,75548,67632,83464,115,103,127,FR,France +201901,3,50295,43525,57065,76,66,86,FR,France +201852,3,37903,31375,44431,58,48,68,FR,France +201851,3,39259,32977,45541,60,50,70,FR,France +201850,3,27781,22638,32924,42,34,50,FR,France +201849,3,19738,15481,23995,30,24,36,FR,France +201848,3,19501,15275,23727,30,24,36,FR,France +201847,3,15949,12105,19793,24,18,30,FR,France +201846,3,11278,7957,14599,17,12,22,FR,France +201845,3,11065,7791,14339,17,12,22,FR,France +201844,3,6586,3875,9297,10,6,14,FR,France +201843,3,6550,3988,9112,10,6,14,FR,France +201842,3,7787,5129,10445,12,8,16,FR,France +201841,3,8048,5098,10998,12,8,16,FR,France +201840,3,7409,4717,10101,11,7,15,FR,France +201839,3,7174,4235,10113,11,7,15,FR,France +201838,3,7349,4399,10299,11,7,15,FR,France +201837,3,4915,2386,7444,7,3,11,FR,France +201836,3,3215,1349,5081,5,2,8,FR,France +201835,3,1506,239,2773,2,0,4,FR,France +201834,3,1368,116,2620,2,0,4,FR,France +201833,3,1962,5,3919,3,0,6,FR,France +201832,3,1839,183,3495,3,0,6,FR,France +201831,3,2048,242,3854,3,0,6,FR,France +201830,3,1951,202,3700,3,0,6,FR,France +201829,3,1951,252,3650,3,0,6,FR,France +201828,3,1654,52,3256,3,1,5,FR,France +201827,3,3266,1145,5387,5,2,8,FR,France +201826,3,3758,1493,6023,6,3,9,FR,France +201825,3,4580,2220,6940,7,3,11,FR,France +201824,3,3223,1351,5095,5,2,8,FR,France +201823,3,1207,136,2278,2,0,4,FR,France +201822,3,3202,1330,5074,5,2,8,FR,France +201821,3,2537,763,4311,4,1,7,FR,France +201820,3,2694,967,4421,4,1,7,FR,France +201819,3,1025,0,2098,2,0,4,FR,France +201818,3,3541,1416,5666,5,2,8,FR,France +201817,3,2573,1003,4143,4,2,6,FR,France +201816,3,4818,2724,6912,7,4,10,FR,France +201815,3,16311,12168,20454,25,19,31,FR,France +201814,3,22666,18092,27240,35,28,42,FR,France +201813,3,32680,25536,39824,50,39,61,FR,France +201812,3,52040,44590,59490,79,68,90,FR,France +201811,3,65159,56506,73812,99,86,112,FR,France +201810,3,93512,83989,103035,142,128,156,FR,France +201809,3,108545,98645,118445,165,150,180,FR,France +201808,3,131870,120950,142790,201,184,218,FR,France +201807,3,141138,130177,152099,215,198,232,FR,France +201806,3,138810,128164,149456,211,195,227,FR,France +201805,3,157839,146646,169032,240,223,257,FR,France +201804,3,175483,163835,187131,267,249,285,FR,France +201803,3,178329,166640,190018,271,253,289,FR,France +201802,3,198079,185663,210495,302,283,321,FR,France +201801,3,235493,220941,250045,358,336,380,FR,France +201752,3,299114,279359,318869,459,429,489,FR,France +201751,3,229448,214366,244530,352,329,375,FR,France +201750,3,129535,118787,140283,199,183,215,FR,France +201749,3,63789,56120,71458,98,86,110,FR,France +201748,3,37568,31541,43595,58,49,67,FR,France +201747,3,24972,19923,30021,38,30,46,FR,France +201746,3,13398,9948,16848,21,16,26,FR,France +201745,3,14035,8091,19979,22,13,31,FR,France +201744,3,8544,5318,11770,13,8,18,FR,France +201743,3,7300,4402,10198,11,7,15,FR,France +201742,3,9966,6503,13429,15,10,20,FR,France +201741,3,12434,8718,16150,19,13,25,FR,France +201740,3,12725,8690,16760,20,14,26,FR,France +201739,3,14949,10534,19364,23,16,30,FR,France +201738,3,11463,7438,15488,18,12,24,FR,France +201737,3,9716,6364,13068,15,10,20,FR,France +201736,3,2815,917,4713,4,1,7,FR,France +201735,3,2794,850,4738,4,1,7,FR,France +201734,3,2497,879,4115,4,2,6,FR,France +201733,3,2406,766,4046,4,1,7,FR,France +201732,3,2667,879,4455,4,1,7,FR,France +201731,3,3256,1158,5354,5,2,8,FR,France +201730,3,3759,1299,6219,6,2,10,FR,France +201729,3,5014,1989,8039,8,3,13,FR,France +201728,3,5271,2576,7966,8,4,12,FR,France +201727,3,3924,1432,6416,6,2,10,FR,France +201726,3,3171,1166,5176,5,2,8,FR,France +201725,3,837,0,1721,1,0,2,FR,France +201724,3,1566,248,2884,2,0,4,FR,France +201723,3,1664,203,3125,3,1,5,FR,France +201722,3,1305,92,2518,2,0,4,FR,France +201721,3,971,0,2046,1,0,3,FR,France +201720,3,2686,793,4579,4,1,7,FR,France +201719,3,3461,1490,5432,5,2,8,FR,France +201718,3,2102,515,3689,3,1,5,FR,France +201717,3,2071,428,3714,3,0,6,FR,France +201716,3,1380,222,2538,2,0,4,FR,France +201715,3,479,0,1242,1,0,2,FR,France +201714,3,1110,0,2549,2,0,4,FR,France +201713,3,7594,3808,11380,12,6,18,FR,France +201712,3,8780,4834,12726,13,7,19,FR,France +201711,3,7814,4329,11299,12,7,17,FR,France +201710,3,11802,7964,15640,18,12,24,FR,France +201709,3,13111,9099,17123,20,14,26,FR,France +201708,3,29545,23136,35954,45,35,55,FR,France +201707,3,59590,49764,69416,91,76,106,FR,France +201706,3,93628,82560,104696,144,127,161,FR,France +201705,3,193677,179255,208099,297,275,319,FR,France +201704,3,256428,240618,272238,394,370,418,FR,France +201703,3,267276,251345,283207,410,386,434,FR,France +201702,3,260588,245070,276106,400,376,424,FR,France +201701,3,255535,239743,271327,392,368,416,FR,France +201652,3,224489,207799,241179,345,319,371,FR,France +201651,3,187704,172655,202753,288,265,311,FR,France +201650,3,126570,115081,138059,194,176,212,FR,France +201649,3,76390,67374,85406,117,103,131,FR,France +201648,3,40502,33949,47055,62,52,72,FR,France +201647,3,22270,17612,26928,34,27,41,FR,France +201646,3,20816,16125,25507,32,25,39,FR,France +201645,3,15957,11448,20466,24,17,31,FR,France +201644,3,15145,10357,19933,23,16,30,FR,France +201643,3,9378,5830,12926,14,9,19,FR,France +201642,3,12920,9044,16796,20,14,26,FR,France +201641,3,13909,9709,18109,21,15,27,FR,France +201640,3,13379,8969,17789,21,14,28,FR,France +201639,3,10598,6814,14382,16,10,22,FR,France +201638,3,5969,3073,8865,9,5,13,FR,France +201637,3,4065,1538,6592,6,2,10,FR,France +201636,3,2372,473,4271,4,1,7,FR,France +201635,3,3420,1350,5490,5,2,8,FR,France +201634,3,2233,0,4643,3,0,7,FR,France +201633,3,1567,0,3938,2,0,6,FR,France +201632,3,2100,93,4107,3,0,6,FR,France +201631,3,3691,0,9120,6,0,14,FR,France +201630,3,3209,644,5774,5,1,9,FR,France +201629,3,1469,0,3073,2,0,4,FR,France +201628,3,2725,357,5093,4,0,8,FR,France +201627,3,5905,2343,9467,9,4,14,FR,France +201626,3,4186,1636,6736,6,2,10,FR,France +201625,3,4611,1560,7662,7,2,12,FR,France +201624,3,4977,2404,7550,8,4,12,FR,France +201623,3,4893,2416,7370,8,4,12,FR,France +201622,3,5667,3015,8319,9,5,13,FR,France +201621,3,5603,2475,8731,9,4,14,FR,France +201620,3,3908,1679,6137,6,3,9,FR,France +201619,3,4738,2308,7168,7,3,11,FR,France +201618,3,8204,4394,12014,13,7,19,FR,France +201617,3,13385,8822,17948,21,14,28,FR,France +201616,3,25670,19632,31708,39,30,48,FR,France +201615,3,48441,39824,57058,74,61,87,FR,France +201614,3,92603,81261,103945,142,125,159,FR,France +201613,3,170654,156387,184921,262,240,284,FR,France +201612,3,272174,254338,290010,418,391,445,FR,France +201611,3,304543,286453,322633,467,439,495,FR,France +201610,3,261822,245799,277845,402,377,427,FR,France +201609,3,229943,214533,245353,353,329,377,FR,France +201608,3,195067,180874,209260,299,277,321,FR,France +201607,3,207359,193223,221495,318,296,340,FR,France +201606,3,196143,182672,209614,301,280,322,FR,France +201605,3,178963,166296,191630,275,256,294,FR,France +201604,3,148473,136591,160355,228,210,246,FR,France +201603,3,75277,66630,83924,116,103,129,FR,France +201602,3,44617,37821,51413,68,58,78,FR,France +201601,3,42263,35556,48970,65,55,75,FR,France +201553,3,24835,19106,30564,38,29,47,FR,France +201552,3,19495,14319,24671,30,22,38,FR,France +201551,3,29080,23014,35146,45,36,54,FR,France +201550,3,25043,19812,30274,39,31,47,FR,France +201549,3,21479,16686,26272,33,26,40,FR,France +201548,3,16428,12273,20583,25,19,31,FR,France +201547,3,14959,10856,19062,23,17,29,FR,France +201546,3,12599,8237,16961,20,13,27,FR,France +201545,3,13577,9192,17962,21,14,28,FR,France +201544,3,14596,10025,19167,23,16,30,FR,France +201543,3,16749,11745,21753,26,18,34,FR,France +201542,3,18675,13613,23737,29,21,37,FR,France +201541,3,13585,9830,17340,21,15,27,FR,France +201540,3,13100,9349,16851,20,14,26,FR,France +201539,3,8595,5671,11519,13,8,18,FR,France +201538,3,8402,4929,11875,13,8,18,FR,France +201537,3,8817,4089,13545,14,7,21,FR,France +201536,3,1922,440,3404,3,1,5,FR,France +201535,3,229,0,644,0,0,1,FR,France +201534,3,760,0,1618,1,0,2,FR,France +201533,3,1537,208,2866,2,0,4,FR,France +201532,3,1594,66,3122,2,0,4,FR,France +201531,3,2845,475,5215,4,0,8,FR,France +201530,3,2447,353,4541,4,1,7,FR,France +201529,3,2389,332,4446,4,1,7,FR,France +201528,3,2089,105,4073,3,0,6,FR,France +201527,3,2257,393,4121,3,0,6,FR,France +201526,3,2536,774,4298,4,1,7,FR,France +201525,3,2607,680,4534,4,1,7,FR,France +201524,3,2849,1000,4698,4,1,7,FR,France +201523,3,2702,857,4547,4,1,7,FR,France +201522,3,4262,1989,6535,7,3,11,FR,France +201521,3,5547,2875,8219,9,5,13,FR,France +201520,3,4594,2040,7148,7,3,11,FR,France +201519,3,6307,3256,9358,10,5,15,FR,France +201518,3,3664,1544,5784,6,3,9,FR,France +201517,3,6382,3523,9241,10,6,14,FR,France +201516,3,12098,7913,16283,19,13,25,FR,France +201515,3,19458,14192,24724,30,22,38,FR,France +201514,3,30940,24617,37263,48,38,58,FR,France +201513,3,49563,41986,57140,77,65,89,FR,France +201512,3,70024,61079,78969,109,95,123,FR,France +201511,3,99295,88838,109752,154,138,170,FR,France +201510,3,143931,131682,156180,223,204,242,FR,France +201509,3,238947,222902,254992,370,345,395,FR,France +201508,3,409972,388670,431274,635,602,668,FR,France +201507,3,517750,494301,541199,802,766,838,FR,France +201506,3,533317,510627,556007,827,792,862,FR,France +201505,3,457911,436964,478858,710,678,742,FR,France +201504,3,292161,275491,308831,453,427,479,FR,France +201503,3,153931,141290,166572,239,219,259,FR,France +201502,3,104096,93358,114834,161,144,178,FR,France +201501,3,70962,60505,81419,110,94,126,FR,France +201452,3,63168,52705,73631,98,82,114,FR,France +201451,3,45346,38002,52690,71,60,82,FR,France +201450,3,42182,35049,49315,66,55,77,FR,France +201449,3,33537,27281,39793,52,42,62,FR,France +201448,3,28156,21896,34416,44,34,54,FR,France +201447,3,18158,13186,23130,28,20,36,FR,France +201446,3,14764,10174,19354,23,16,30,FR,France +201445,3,16172,11449,20895,25,18,32,FR,France +201444,3,15500,10464,20536,24,16,32,FR,France +201443,3,16011,10653,21369,25,17,33,FR,France +201442,3,21651,15828,27474,34,25,43,FR,France +201441,3,22486,16295,28677,35,25,45,FR,France +201440,3,16526,11583,21469,26,18,34,FR,France +201439,3,8583,5054,12112,13,8,18,FR,France +201438,3,10567,6496,14638,16,10,22,FR,France +201437,3,7714,3780,11648,12,6,18,FR,France +201436,3,5018,1949,8087,8,3,13,FR,France +201435,3,2268,355,4181,4,1,7,FR,France +201434,3,2367,250,4484,4,1,7,FR,France +201433,3,2358,0,4875,4,0,8,FR,France +201432,3,3229,447,6011,5,1,9,FR,France +201431,3,4143,349,7937,6,0,12,FR,France +201430,3,4631,902,8360,7,1,13,FR,France +201429,3,5122,1258,8986,8,2,14,FR,France +201428,3,4145,1200,7090,6,1,11,FR,France +201427,3,4823,1997,7649,8,4,12,FR,France +201426,3,3858,1235,6481,6,2,10,FR,France +201425,3,4564,1276,7852,7,2,12,FR,France +201424,3,2007,249,3765,3,0,6,FR,France +201423,3,5164,1853,8475,8,3,13,FR,France +201422,3,6907,1856,11958,11,3,19,FR,France +201421,3,4523,1039,8007,7,2,12,FR,France +201420,3,5881,2432,9330,9,4,14,FR,France +201419,3,3588,1277,5899,6,2,10,FR,France +201418,3,4708,1654,7762,7,2,12,FR,France +201417,3,2989,625,5353,5,1,9,FR,France +201416,3,7057,3381,10733,11,5,17,FR,France +201415,3,10800,6762,14838,17,11,23,FR,France +201414,3,19217,13490,24944,30,21,39,FR,France +201413,3,21577,15435,27719,34,24,44,FR,France +201412,3,23524,17260,29788,37,27,47,FR,France +201411,3,44513,35939,53087,69,56,82,FR,France +201410,3,86105,73497,98713,134,114,154,FR,France +201409,3,147035,131889,162181,229,205,253,FR,France +201408,3,188419,171950,204888,293,267,319,FR,France +201407,3,208726,191283,226169,325,298,352,FR,France +201406,3,160403,145280,175526,250,226,274,FR,France +201405,3,120261,107176,133346,187,167,207,FR,France +201404,3,85280,74414,96146,133,116,150,FR,France +201403,3,64159,54089,74229,100,84,116,FR,France +201402,3,46850,38202,55498,73,60,86,FR,France +201401,3,35624,27451,43797,55,42,68,FR,France +201352,3,30142,22721,37563,47,35,59,FR,France +201351,3,29787,23215,36359,47,37,57,FR,France +201350,3,24055,18214,29896,38,29,47,FR,France +201349,3,18071,13058,23084,28,20,36,FR,France +201348,3,17606,12195,23017,28,20,36,FR,France +201347,3,22636,16343,28929,35,25,45,FR,France +201346,3,13340,8367,18313,21,13,29,FR,France +201345,3,10596,6057,15135,17,10,24,FR,France +201344,3,10193,5622,14764,16,9,23,FR,France +201343,3,15780,9497,22063,25,15,35,FR,France +201342,3,14830,9545,20115,23,15,31,FR,France +201341,3,12391,7265,17517,19,11,27,FR,France +201340,3,9794,5140,14448,15,8,22,FR,France +201339,3,5371,1704,9038,8,2,14,FR,France +201338,3,9324,4198,14450,15,7,23,FR,France +201337,3,5027,1752,8302,8,3,13,FR,France +201336,3,4639,1425,7853,7,2,12,FR,France +201335,3,1291,0,3112,2,0,5,FR,France +201334,3,1889,0,4912,3,0,8,FR,France +201333,3,4740,348,9132,7,0,14,FR,France +201332,3,4709,549,8869,7,0,14,FR,France +201331,3,2270,0,5811,4,0,10,FR,France +201330,3,2169,0,4630,3,0,7,FR,France +201329,3,1696,0,3558,3,0,6,FR,France +201328,3,983,0,2168,2,0,4,FR,France +201327,3,4278,1327,7229,7,2,12,FR,France +201326,3,3488,839,6137,5,1,9,FR,France +201325,3,2735,0,5826,4,0,9,FR,France +201324,3,7245,2997,11493,11,4,18,FR,France +201323,3,16094,8918,23270,25,14,36,FR,France +201322,3,7245,2923,11567,11,4,18,FR,France +201321,3,5974,2401,9547,9,3,15,FR,France +201320,3,3831,1245,6417,6,2,10,FR,France +201319,3,1166,0,2680,2,0,4,FR,France +201318,3,3415,757,6073,5,1,9,FR,France +201317,3,7941,2950,12932,12,4,20,FR,France +201316,3,9520,4758,14282,15,8,22,FR,France +201315,3,19357,13311,25403,30,21,39,FR,France +201314,3,36855,27737,45973,58,44,72,FR,France +201313,3,43236,34048,52424,68,54,82,FR,France +201312,3,60822,50414,71230,95,79,111,FR,France +201311,3,84308,72456,96160,132,113,151,FR,France +201310,3,165558,148471,182645,259,232,286,FR,France +201309,3,259984,239067,280901,407,374,440,FR,France +201308,3,351626,327537,375715,550,512,588,FR,France +201307,3,470076,443682,496470,736,695,777,FR,France +201306,3,471647,445112,498182,738,696,780,FR,France +201305,3,492026,464729,519323,770,727,813,FR,France +201304,3,391525,367182,415868,613,575,651,FR,France +201303,3,224661,207134,242188,352,325,379,FR,France +201302,3,184159,168343,199975,288,263,313,FR,France +201301,3,163491,147340,179642,256,231,281,FR,France +201252,3,159290,141978,176602,251,224,278,FR,France +201251,3,113901,99835,127967,179,157,201,FR,France +201250,3,79918,68086,91750,126,107,145,FR,France +201249,3,47537,38711,56363,75,61,89,FR,France +201248,3,43006,32863,53149,68,52,84,FR,France +201247,3,39223,29140,49306,62,46,78,FR,France +201246,3,26436,18286,34586,42,29,55,FR,France +201245,3,18893,12799,24987,30,20,40,FR,France +201244,3,13106,8784,17428,21,14,28,FR,France +201243,3,17791,11284,24298,28,18,38,FR,France +201242,3,13096,8369,17823,21,14,28,FR,France +201241,3,18675,12010,25340,29,19,39,FR,France +201240,3,17873,11545,24201,28,18,38,FR,France +201239,3,20257,14180,26334,32,22,42,FR,France +201238,3,14715,9178,20252,23,14,32,FR,France +201237,3,7775,3509,12041,12,5,19,FR,France +201236,3,6384,2420,10348,10,4,16,FR,France +201235,3,8277,2206,14348,13,3,23,FR,France +201234,3,3858,0,8641,6,0,14,FR,France +201233,3,6492,840,12144,10,1,19,FR,France +201232,3,6381,0,14034,10,0,22,FR,France +201231,3,2696,0,5763,4,0,9,FR,France +201230,3,1834,0,4194,3,0,7,FR,France +201229,3,6329,1424,11234,10,2,18,FR,France +201228,3,4628,1091,8165,7,1,13,FR,France +201227,3,4162,1487,6837,7,3,11,FR,France +201226,3,4819,1097,8541,8,2,14,FR,France +201225,3,2669,530,4808,4,1,7,FR,France +201224,3,5977,2335,9619,9,3,15,FR,France +201223,3,2361,576,4146,4,1,7,FR,France +201222,3,5772,2435,9109,9,4,14,FR,France +201221,3,3722,821,6623,6,1,11,FR,France +201220,3,2731,897,4565,4,1,7,FR,France +201219,3,3267,1317,5217,5,2,8,FR,France +201218,3,2328,569,4087,4,1,7,FR,France +201217,3,6982,2701,11263,11,4,18,FR,France +201216,3,11455,6874,16036,18,11,25,FR,France +201215,3,20437,13435,27439,32,21,43,FR,France +201214,3,36740,27799,45681,58,44,72,FR,France +201213,3,62917,50171,75663,99,79,119,FR,France +201212,3,84738,71566,97910,133,112,154,FR,France +201211,3,128945,113778,144112,203,179,227,FR,France +201210,3,174704,157337,192071,275,248,302,FR,France +201209,3,225648,206810,244486,355,325,385,FR,France +201208,3,287293,264901,309685,452,417,487,FR,France +201207,3,263557,242711,284403,415,382,448,FR,France +201206,3,175123,158942,191304,276,251,301,FR,France +201205,3,106110,92524,119696,167,146,188,FR,France +201204,3,67778,56784,78772,107,90,124,FR,France +201203,3,49440,40981,57899,78,65,91,FR,France +201202,3,40507,32652,48362,64,52,76,FR,France +201201,3,45104,35640,54568,71,56,86,FR,France +201152,3,36532,28367,44697,58,45,71,FR,France +201151,3,25835,19002,32668,41,30,52,FR,France +201150,3,24155,18145,30165,38,28,48,FR,France +201149,3,27209,20376,34042,43,32,54,FR,France +201148,3,32358,24451,40265,51,38,64,FR,France +201147,3,17627,11780,23474,28,19,37,FR,France +201146,3,22368,15730,29006,35,24,46,FR,France +201145,3,18104,11995,24213,29,19,39,FR,France +201144,3,14050,8471,19629,22,13,31,FR,France +201143,3,21522,14251,28793,34,22,46,FR,France +201142,3,16932,11363,22501,27,18,36,FR,France +201141,3,7486,4024,10948,12,7,17,FR,France +201140,3,14053,8659,19447,22,13,31,FR,France +201139,3,17021,11062,22980,27,18,36,FR,France +201138,3,14007,8465,19549,22,13,31,FR,France +201137,3,8365,4174,12556,13,6,20,FR,France +201136,3,4606,1714,7498,7,2,12,FR,France +201135,3,4178,1634,6722,7,3,11,FR,France +201134,3,3312,683,5941,5,1,9,FR,France +201133,3,2421,0,5277,4,0,9,FR,France +201132,3,2590,119,5061,4,0,8,FR,France +201131,3,2409,320,4498,4,1,7,FR,France +201130,3,3972,1395,6549,6,2,10,FR,France +201129,3,2265,717,3813,4,2,6,FR,France +201128,3,1977,255,3699,3,0,6,FR,France +201127,3,3524,551,6497,6,1,11,FR,France +201126,3,1155,0,2685,2,0,4,FR,France +201125,3,3791,1006,6576,6,2,10,FR,France +201124,3,3507,1149,5865,6,2,10,FR,France +201123,3,3406,1170,5642,5,1,9,FR,France +201122,3,3122,1125,5119,5,2,8,FR,France +201121,3,2694,769,4619,4,1,7,FR,France +201120,3,3951,1443,6459,6,2,10,FR,France +201119,3,5416,1995,8837,9,4,14,FR,France +201118,3,5306,1815,8797,8,2,14,FR,France +201117,3,2659,310,5008,4,0,8,FR,France +201116,3,5061,1988,8134,8,3,13,FR,France +201115,3,6557,3038,10076,10,4,16,FR,France +201114,3,7352,3784,10920,12,6,18,FR,France +201113,3,8749,5213,12285,14,8,20,FR,France +201112,3,12491,7845,17137,20,13,27,FR,France +201111,3,14619,10009,19229,23,16,30,FR,France +201110,3,33628,26073,41183,53,41,65,FR,France +201109,3,54522,46057,62987,86,73,99,FR,France +201108,3,78392,67885,88899,124,107,141,FR,France +201107,3,149219,134798,163640,236,213,259,FR,France +201106,3,216579,200236,232922,343,317,369,FR,France +201105,3,278192,260235,296149,440,412,468,FR,France +201104,3,278218,259626,296810,440,411,469,FR,France +201103,3,275882,257313,294451,437,408,466,FR,France +201102,3,308949,288320,329578,489,456,522,FR,France +201101,3,309933,288190,331676,490,456,524,FR,France +201052,3,228105,208046,248164,363,331,395,FR,France +201051,3,158957,142576,175338,253,227,279,FR,France +201050,3,104874,91639,118109,167,146,188,FR,France +201049,3,54971,46418,63524,88,74,102,FR,France +201048,3,36982,29304,44660,59,47,71,FR,France +201047,3,26598,20123,33073,42,32,52,FR,France +201046,3,15465,10915,20015,25,18,32,FR,France +201045,3,9040,5772,12308,14,9,19,FR,France +201044,3,15833,10255,21411,25,16,34,FR,France +201043,3,16002,11001,21003,25,17,33,FR,France +201042,3,18709,13376,24042,30,22,38,FR,France +201041,3,17352,12182,22522,28,20,36,FR,France +201040,3,18331,12824,23838,29,20,38,FR,France +201039,3,11978,7913,16043,19,13,25,FR,France +201038,3,8936,4906,12966,14,8,20,FR,France +201037,3,5318,2551,8085,8,4,12,FR,France +201036,3,4954,2058,7850,8,3,13,FR,France +201035,3,4279,1604,6954,7,3,11,FR,France +201034,3,4926,566,9286,8,1,15,FR,France +201033,3,2950,0,6507,5,0,11,FR,France +201032,3,671,0,1522,1,0,2,FR,France +201031,3,2732,509,4955,4,0,8,FR,France +201030,3,3989,1068,6910,6,1,11,FR,France +201029,3,4123,1531,6715,7,3,11,FR,France +201028,3,1209,0,2640,2,0,4,FR,France +201027,3,2494,433,4555,4,1,7,FR,France +201026,3,5808,2454,9162,9,4,14,FR,France +201025,3,8019,4395,11643,13,7,19,FR,France +201024,3,3584,1657,5511,6,3,9,FR,France +201023,3,4016,1905,6127,6,3,9,FR,France +201022,3,6251,3664,8838,10,6,14,FR,France +201021,3,3860,1636,6084,6,2,10,FR,France +201020,3,2470,442,4498,4,1,7,FR,France +201019,3,2273,636,3910,4,1,7,FR,France +201018,3,4095,1639,6551,7,3,11,FR,France +201017,3,2216,817,3615,4,2,6,FR,France +201016,3,3471,1085,5857,6,2,10,FR,France +201015,3,3990,1376,6604,6,2,10,FR,France +201014,3,6188,3191,9185,10,5,15,FR,France +201013,3,6705,3665,9745,11,6,16,FR,France +201012,3,6727,3582,9872,11,6,16,FR,France +201011,3,8692,5002,12382,14,8,20,FR,France +201010,3,8844,5465,12223,14,9,19,FR,France +201009,3,12081,7334,16828,19,11,27,FR,France +201008,3,15433,10422,20444,25,17,33,FR,France +201007,3,19690,11728,27652,31,18,44,FR,France +201006,3,27858,18883,36833,44,30,58,FR,France +201005,3,22197,17019,27375,35,27,43,FR,France +201004,3,33817,26151,41483,54,42,66,FR,France +201003,3,36236,27936,44536,58,45,71,FR,France +201002,3,40691,32891,48491,65,53,77,FR,France +201001,3,66574,56164,76984,106,89,123,FR,France +200953,3,96141,81818,110464,153,130,176,FR,France +200952,3,172872,153238,192506,275,244,306,FR,France +200951,3,247809,229140,266478,395,365,425,FR,France +200950,3,379424,355974,402874,604,567,641,FR,France +200949,3,473718,447756,499680,754,713,795,FR,France +200948,3,467551,441506,493596,744,703,785,FR,France +200947,3,378924,355752,402096,603,566,640,FR,France +200946,3,223847,203918,243776,356,324,388,FR,France +200945,3,147046,131155,162937,234,209,259,FR,France +200944,3,170231,151298,189164,271,241,301,FR,France +200943,3,131408,114883,147933,209,183,235,FR,France +200942,3,99387,84491,114283,158,134,182,FR,France +200941,3,100802,86381,115223,160,137,183,FR,France +200940,3,111587,97628,125546,178,156,200,FR,France +200939,3,121267,106153,136381,193,169,217,FR,France +200938,3,137924,121242,154606,220,193,247,FR,France +200937,3,101332,87522,115142,161,139,183,FR,France +200936,3,46024,36435,55613,73,58,88,FR,France +200935,3,31660,23669,39651,50,37,63,FR,France +200934,3,24985,17699,32271,40,28,52,FR,France +200933,3,24435,16308,32562,39,26,52,FR,France +200932,3,23151,14624,31678,37,23,51,FR,France +200931,3,30255,9818,50692,48,15,81,FR,France +200930,3,13868,7861,19875,22,12,32,FR,France +200929,3,10704,5314,16094,17,8,26,FR,France +200928,3,15516,273,30759,25,1,49,FR,France +200927,3,10354,2760,17948,16,4,28,FR,France +200926,3,9932,5257,14607,16,9,23,FR,France +200925,3,7619,4026,11212,12,6,18,FR,France +200924,3,7794,3409,12179,12,5,19,FR,France +200923,3,4342,1975,6709,7,3,11,FR,France +200922,3,6390,3020,9760,10,5,15,FR,France +200921,3,7118,3704,10532,11,6,16,FR,France +200920,3,9482,5804,13160,15,9,21,FR,France +200919,3,7538,4299,10777,12,7,17,FR,France +200918,3,9627,5121,14133,15,8,22,FR,France +200917,3,9537,5267,13807,15,8,22,FR,France +200916,3,14666,9218,20114,23,14,32,FR,France +200915,3,17533,12137,22929,28,19,37,FR,France +200914,3,26324,19150,33498,42,31,53,FR,France +200913,3,27737,20781,34693,44,33,55,FR,France +200912,3,38811,29935,47687,62,48,76,FR,France +200911,3,40410,30705,50115,64,49,79,FR,France +200910,3,53395,41943,64847,85,67,103,FR,France +200909,3,70558,57400,83716,112,91,133,FR,France +200908,3,109100,94840,123360,174,151,197,FR,France +200907,3,141531,125101,157961,225,199,251,FR,France +200906,3,276274,252759,299789,440,403,477,FR,France +200905,3,401868,375032,428704,640,597,683,FR,France +200904,3,545313,512892,577734,868,816,920,FR,France +200903,3,520957,487271,554643,829,775,883,FR,France +200902,3,287145,262869,311421,457,418,496,FR,France +200901,3,200349,180878,219820,319,288,350,FR,France +200852,3,198418,115769,281067,323,188,458,FR,France +200851,3,112588,96656,128520,184,158,210,FR,France +200850,3,51746,43319,60173,84,70,98,FR,France +200849,3,34950,27527,42373,57,45,69,FR,France +200848,3,25604,18563,32645,42,31,53,FR,France +200847,3,18706,10838,26574,30,17,43,FR,France +200846,3,10899,5461,16337,18,9,27,FR,France +200845,3,12472,7082,17862,20,11,29,FR,France +200844,3,9772,5661,13883,16,9,23,FR,France +200843,3,9345,5541,13149,15,9,21,FR,France +200842,3,9087,5572,12602,15,9,21,FR,France +200841,3,9925,5637,14213,16,9,23,FR,France +200840,3,7869,4535,11203,13,8,18,FR,France +200839,3,2195,506,3884,4,1,7,FR,France +200838,3,3679,1481,5877,6,2,10,FR,France +200837,3,2429,561,4297,4,1,7,FR,France +200836,3,2512,492,4532,4,1,7,FR,France +200835,3,1901,0,4869,3,0,8,FR,France +200834,3,2552,0,6509,4,0,10,FR,France +200833,3,7229,0,16106,12,0,26,FR,France +200832,3,4378,107,8649,7,0,14,FR,France +200831,3,3972,621,7323,6,1,11,FR,France +200830,3,3821,643,6999,6,1,11,FR,France +200829,3,2055,0,4225,3,0,7,FR,France +200828,3,3257,208,6306,5,0,10,FR,France +200827,3,2862,474,5250,5,1,9,FR,France +200826,3,897,0,2062,1,0,3,FR,France +200825,3,2006,360,3652,3,0,6,FR,France +200824,3,3217,823,5611,5,1,9,FR,France +200823,3,2906,1006,4806,5,2,8,FR,France +200822,3,1792,451,3133,3,1,5,FR,France +200821,3,3642,925,6359,6,2,10,FR,France +200820,3,6452,2790,10114,11,5,17,FR,France +200819,3,5173,1485,8861,8,2,14,FR,France +200818,3,5315,1770,8860,9,3,15,FR,France +200817,3,10150,5835,14465,17,10,24,FR,France +200816,3,11876,7054,16698,19,11,27,FR,France +200815,3,22871,16253,29489,37,26,48,FR,France +200814,3,45610,27907,63313,74,45,103,FR,France +200813,3,38600,29300,47900,63,48,78,FR,France +200812,3,53169,43299,63039,87,71,103,FR,France +200811,3,62014,50430,73598,101,82,120,FR,France +200810,3,90342,75729,104955,147,123,171,FR,France +200809,3,119696,104205,135187,195,170,220,FR,France +200808,3,198688,180749,216627,324,295,353,FR,France +200807,3,286498,264535,308461,467,431,503,FR,France +200806,3,377097,350714,403480,615,572,658,FR,France +200805,3,344050,320436,367664,561,523,599,FR,France +200804,3,290196,268193,312199,473,437,509,FR,France +200803,3,260268,233385,287151,424,380,468,FR,France +200802,3,160872,145311,176433,262,237,287,FR,France +200801,3,102562,88547,116577,167,144,190,FR,France +200752,3,86742,72295,101189,141,117,165,FR,France +200751,3,61954,51764,72144,101,84,118,FR,France +200750,3,45366,36923,53809,74,60,88,FR,France +200749,3,38351,26177,50525,63,43,83,FR,France +200748,3,48174,35418,60930,79,58,100,FR,France +200747,3,30716,23351,38081,50,38,62,FR,France +200746,3,18204,12267,24141,30,20,40,FR,France +200745,3,15521,10195,20847,25,16,34,FR,France +200744,3,13904,9072,18736,23,15,31,FR,France +200743,3,16212,10778,21646,26,17,35,FR,France +200742,3,20197,13955,26439,33,23,43,FR,France +200741,3,12987,8464,17510,21,14,28,FR,France +200740,3,13517,2983,24051,22,5,39,FR,France +200739,3,15985,7519,24451,26,12,40,FR,France +200738,3,4769,837,8701,8,2,14,FR,France +200737,3,1449,300,2598,2,0,4,FR,France +200736,3,1100,0,2424,2,0,4,FR,France +200735,3,1177,0,2872,2,0,5,FR,France +200734,3,3353,654,6052,5,1,9,FR,France +200733,3,4189,360,8018,7,1,13,FR,France +200732,3,132,0,688,0,0,1,FR,France +200731,3,1965,0,4461,3,0,7,FR,France +200730,3,2158,0,4583,4,0,8,FR,France +200729,3,3406,240,6572,6,1,11,FR,France +200728,3,1459,0,3467,2,0,5,FR,France +200727,3,1453,0,3382,2,0,5,FR,France +200726,3,157,0,513,0,0,1,FR,France +200725,3,3699,0,7778,6,0,13,FR,France +200724,3,2854,481,5227,5,1,9,FR,France +200723,3,5343,2164,8522,9,4,14,FR,France +200722,3,7689,4224,11154,13,7,19,FR,France +200721,3,4319,1659,6979,7,3,11,FR,France +200720,3,6400,2685,10115,10,4,16,FR,France +200719,3,3012,703,5321,5,1,9,FR,France +200718,3,2232,348,4116,4,1,7,FR,France +200717,3,4705,1736,7674,8,3,13,FR,France +200716,3,3817,1438,6196,6,2,10,FR,France +200715,3,4757,717,8797,8,1,15,FR,France +200714,3,11377,6957,15797,19,12,26,FR,France +200713,3,21271,13093,29449,35,22,48,FR,France +200712,3,25433,17717,33149,41,28,54,FR,France +200711,3,30764,23356,38172,50,38,62,FR,France +200710,3,49469,40368,58570,81,66,96,FR,France +200709,3,138901,117018,160784,226,190,262,FR,France +200708,3,316747,284988,348506,516,464,568,FR,France +200707,3,417698,386505,448891,681,630,732,FR,France +200706,3,500016,466668,533364,815,761,869,FR,France +200705,3,375457,346822,404092,612,565,659,FR,France +200704,3,209878,189332,230424,342,309,375,FR,France +200703,3,126161,110596,141726,206,181,231,FR,France +200702,3,82849,69493,96205,135,113,157,FR,France +200701,3,70842,58613,83071,115,95,135,FR,France +200652,3,78190,64191,92189,128,105,151,FR,France +200651,3,62734,50210,75258,103,82,124,FR,France +200650,3,35668,27280,44056,58,44,72,FR,France +200649,3,18773,13164,24382,31,22,40,FR,France +200648,3,16439,11225,21653,27,18,36,FR,France +200647,3,16104,9343,22865,26,15,37,FR,France +200646,3,14032,5590,22474,23,9,37,FR,France +200645,3,12285,7745,16825,20,13,27,FR,France +200644,3,8031,4172,11890,13,7,19,FR,France +200643,3,21157,12483,29831,35,21,49,FR,France +200642,3,16673,8249,25097,27,13,41,FR,France +200641,3,13920,9081,18759,23,15,31,FR,France +200640,3,11950,7132,16768,20,12,28,FR,France +200639,3,8945,4333,13557,15,7,23,FR,France +200638,3,2532,138,4926,4,0,8,FR,France +200637,3,1786,233,3339,3,0,6,FR,France +200636,3,1107,0,2346,2,0,4,FR,France +200635,3,2170,0,4760,4,0,8,FR,France +200634,3,1572,0,3756,3,0,7,FR,France +200633,3,0,0,0,0,0,0,FR,France +200632,3,0,0,0,0,0,0,FR,France +200631,3,1773,0,3892,3,0,6,FR,France +200630,3,665,0,1614,1,0,3,FR,France +200629,3,1339,0,3260,2,0,5,FR,France +200628,3,843,0,2245,1,0,3,FR,France +200627,3,1351,0,3031,2,0,5,FR,France +200626,3,4564,1506,7622,7,2,12,FR,France +200625,3,6259,2072,10446,10,3,17,FR,France +200624,3,4279,964,7594,7,2,12,FR,France +200623,3,4532,1489,7575,7,2,12,FR,France +200622,3,5807,2667,8947,10,5,15,FR,France +200621,3,4661,1761,7561,8,3,13,FR,France +200620,3,8859,4754,12964,15,8,22,FR,France +200619,3,5083,2011,8155,8,3,13,FR,France +200618,3,4454,1632,7276,7,2,12,FR,France +200617,3,17762,11802,23722,29,19,39,FR,France +200616,3,22096,15420,28772,36,25,47,FR,France +200615,3,26969,19631,34307,44,32,56,FR,France +200614,3,40321,31022,49620,66,51,81,FR,France +200613,3,77053,63531,90575,126,104,148,FR,France +200612,3,108004,93005,123003,177,152,202,FR,France +200611,3,122437,106388,138486,201,175,227,FR,France +200610,3,124749,109104,140394,204,178,230,FR,France +200609,3,164150,146099,182201,269,239,299,FR,France +200608,3,199088,178830,219346,326,293,359,FR,France +200607,3,243908,221071,266745,400,363,437,FR,France +200606,3,256758,235190,278326,421,386,456,FR,France +200605,3,184928,166901,202955,303,273,333,FR,France +200604,3,104620,90909,118331,171,149,193,FR,France +200603,3,66255,55727,76783,109,92,126,FR,France +200602,3,39211,31418,47004,64,51,77,FR,France +200601,3,34603,26269,42937,57,43,71,FR,France +200552,3,32132,24389,39875,53,40,66,FR,France +200551,3,40344,28397,52291,67,47,87,FR,France +200550,3,36880,28635,45125,61,47,75,FR,France +200549,3,27589,20576,34602,46,34,58,FR,France +200548,3,24860,17839,31881,41,29,53,FR,France +200547,3,26884,19810,33958,44,32,56,FR,France +200546,3,23967,17155,30779,40,29,51,FR,France +200545,3,14609,8709,20509,24,14,34,FR,France +200544,3,20481,13625,27337,34,23,45,FR,France +200543,3,18045,11916,24174,30,20,40,FR,France +200542,3,23653,15209,32097,39,25,53,FR,France +200541,3,26466,18270,34662,44,30,58,FR,France +200540,3,26647,18088,35206,44,30,58,FR,France +200539,3,23994,15381,32607,40,26,54,FR,France +200538,3,21881,13979,29783,36,23,49,FR,France +200537,3,10347,5384,15310,17,9,25,FR,France +200536,3,7082,2806,11358,12,5,19,FR,France +200535,3,2448,0,4987,4,0,8,FR,France +200534,3,5281,539,10023,9,1,17,FR,France +200533,3,2815,0,6252,5,0,11,FR,France +200532,3,1572,0,3690,3,0,6,FR,France +200531,3,3767,0,10955,6,0,18,FR,France +200530,3,2203,0,5072,4,0,9,FR,France +200529,3,3965,739,7191,7,2,12,FR,France +200528,3,1988,96,3880,3,0,6,FR,France +200527,3,2305,0,4713,4,0,8,FR,France +200526,3,4720,1385,8055,8,2,14,FR,France +200525,3,2354,0,4747,4,0,8,FR,France +200524,3,5892,2029,9755,10,4,16,FR,France +200523,3,5246,1722,8770,9,3,15,FR,France +200522,3,3935,1031,6839,6,1,11,FR,France +200521,3,4284,474,8094,7,1,13,FR,France +200520,3,7841,3611,12071,13,6,20,FR,France +200519,3,7638,3346,11930,13,6,20,FR,France +200518,3,2755,388,5122,5,1,9,FR,France +200517,3,7166,3530,10802,12,6,18,FR,France +200516,3,9741,5344,14138,16,9,23,FR,France +200515,3,14881,9018,20744,25,15,35,FR,France +200514,3,21988,14834,29142,36,24,48,FR,France +200513,3,42971,33053,52889,71,55,87,FR,France +200512,3,90040,75374,104706,149,125,173,FR,France +200511,3,183032,161407,204657,302,266,338,FR,France +200510,3,222526,199990,245062,367,330,404,FR,France +200509,3,251784,229464,274104,416,379,453,FR,France +200508,3,277423,254825,300021,458,421,495,FR,France +200507,3,459444,430026,488862,759,710,808,FR,France +200506,3,568610,536207,601013,939,885,993,FR,France +200505,3,568285,534912,601658,938,883,993,FR,France +200504,3,316856,292011,341701,523,482,564,FR,France +200503,3,154208,137061,171355,255,227,283,FR,France +200502,3,88853,75576,102130,147,125,169,FR,France +200501,3,55801,45339,66263,92,75,109,FR,France +200453,3,40695,31926,49464,68,53,83,FR,France +200452,3,32687,24316,41058,54,40,68,FR,France +200451,3,46209,36017,56401,77,60,94,FR,France +200450,3,42358,31865,52851,70,53,87,FR,France +200449,3,27092,17910,36274,45,30,60,FR,France +200448,3,30522,21236,39808,51,36,66,FR,France +200447,3,21148,13386,28910,35,22,48,FR,France +200446,3,13934,8335,19533,23,14,32,FR,France +200445,3,15658,9703,21613,26,16,36,FR,France +200444,3,23166,14852,31480,38,24,52,FR,France +200443,3,16780,10545,23015,28,18,38,FR,France +200442,3,20480,13909,27051,34,23,45,FR,France +200441,3,15852,9789,21915,26,16,36,FR,France +200440,3,25639,17291,33987,43,29,57,FR,France +200439,3,22680,13222,32138,38,22,54,FR,France +200438,3,17483,9417,25549,29,16,42,FR,France +200437,3,9103,4768,13438,15,8,22,FR,France +200436,3,7753,3596,11910,13,6,20,FR,France +200435,3,4408,775,8041,7,1,13,FR,France +200434,3,4501,610,8392,7,1,13,FR,France +200433,3,1697,0,4046,3,0,7,FR,France +200432,3,3496,0,8181,6,0,14,FR,France +200431,3,2949,20,5878,5,0,10,FR,France +200430,3,3557,642,6472,6,1,11,FR,France +200429,3,5164,1162,9166,9,2,16,FR,France +200428,3,6358,2224,10492,11,4,18,FR,France +200427,3,7486,3040,11932,12,5,19,FR,France +200426,3,7113,0,14709,12,0,25,FR,France +200425,3,3275,508,6042,5,0,10,FR,France +200424,3,6737,2394,11080,11,4,18,FR,France +200423,3,9792,807,18777,16,1,31,FR,France +200422,3,8077,3482,12672,13,5,21,FR,France +200421,3,8073,3588,12558,13,6,20,FR,France +200420,3,7885,3454,12316,13,6,20,FR,France +200419,3,7235,3101,11369,12,5,19,FR,France +200418,3,5108,1830,8386,8,3,13,FR,France +200417,3,3647,523,6771,6,1,11,FR,France +200416,3,5265,1359,9171,9,3,15,FR,France +200415,3,8272,3655,12889,14,6,22,FR,France +200414,3,15657,8888,22426,26,15,37,FR,France +200413,3,8316,4067,12565,14,7,21,FR,France +200412,3,12482,6899,18065,21,12,30,FR,France +200411,3,13964,7879,20049,23,13,33,FR,France +200410,3,22531,14164,30898,37,23,51,FR,France +200409,3,12618,7283,17953,21,12,30,FR,France +200408,3,17738,11055,24421,29,18,40,FR,France +200407,3,25484,17228,33740,42,28,56,FR,France +200406,3,27452,19505,35399,46,33,59,FR,France +200405,3,35110,25869,44351,58,43,73,FR,France +200404,3,44571,35266,53876,74,59,89,FR,France +200403,3,60482,50389,70575,100,83,117,FR,France +200402,3,95234,81407,109061,158,135,181,FR,France +200401,3,109116,84565,133667,181,140,222,FR,France +200352,3,72239,5520,138958,121,10,232,FR,France +200351,3,445464,389214,501714,744,650,838,FR,France +200350,3,522427,491781,553073,873,822,924,FR,France +200349,3,555492,524706,586278,928,877,979,FR,France +200348,3,514668,485364,543972,860,811,909,FR,France +200347,3,332927,305972,359882,556,511,601,FR,France +200346,3,146101,126840,165362,244,212,276,FR,France +200345,3,95565,80900,110230,160,135,185,FR,France +200344,3,54703,43193,66213,91,72,110,FR,France +200343,3,45834,36611,55057,77,62,92,FR,France +200342,3,39010,28885,49135,65,48,82,FR,France +200341,3,29579,21478,37680,49,35,63,FR,France +200340,3,30862,19484,42240,52,33,71,FR,France +200339,3,26592,18927,34257,44,31,57,FR,France +200338,3,14811,8777,20845,25,15,35,FR,France +200337,3,14735,7495,21975,25,13,37,FR,France +200336,3,10951,3732,18170,18,6,30,FR,France +200335,3,1504,0,3349,3,0,6,FR,France +200334,3,2194,0,4889,4,0,9,FR,France +200333,3,1504,0,3921,3,0,7,FR,France +200332,3,1619,0,4072,3,0,7,FR,France +200331,3,5164,0,10601,9,0,18,FR,France +200330,3,3183,28,6338,5,0,10,FR,France +200329,3,6801,450,13152,11,0,22,FR,France +200328,3,3975,609,7341,7,1,13,FR,France +200327,3,2293,0,4605,4,0,8,FR,France +200326,3,5333,2138,8528,9,4,14,FR,France +200325,3,2602,0,5228,4,0,8,FR,France +200324,3,8429,0,19483,14,0,32,FR,France +200323,3,4821,1479,8163,8,2,14,FR,France +200322,3,2573,158,4988,4,0,8,FR,France +200321,3,5563,2465,8661,9,4,14,FR,France +200320,3,7554,3748,11360,13,7,19,FR,France +200319,3,8325,3777,12873,14,6,22,FR,France +200318,3,12268,6392,18144,20,10,30,FR,France +200317,3,46253,36234,56272,77,60,94,FR,France +200316,3,50759,39835,61683,85,67,103,FR,France +200315,3,69269,55778,82760,116,93,139,FR,France +200314,3,70084,55374,84794,117,92,142,FR,France +200313,3,70335,56370,84300,118,95,141,FR,France +200312,3,88582,73568,103596,148,123,173,FR,France +200311,3,99729,83353,116105,167,140,194,FR,France +200310,3,121516,104361,138671,203,174,232,FR,France +200309,3,177255,151800,202710,296,253,339,FR,France +200308,3,222638,194269,251007,372,325,419,FR,France +200307,3,237104,207851,266357,396,347,445,FR,France +200306,3,206955,177973,235937,346,298,394,FR,France +200305,3,151864,125877,177851,254,211,297,FR,France +200304,3,95356,76211,114501,159,127,191,FR,France +200303,3,50983,38264,63702,85,64,106,FR,France +200302,3,31447,21706,41188,53,37,69,FR,France +200301,3,31228,19202,43254,52,32,72,FR,France +200252,3,47016,33692,60340,79,57,101,FR,France +200251,3,47629,36912,58346,80,62,98,FR,France +200250,3,35221,26217,44225,59,44,74,FR,France +200249,3,24656,16900,32412,41,28,54,FR,France +200248,3,19799,12868,26730,33,21,45,FR,France +200247,3,16449,9214,23684,28,16,40,FR,France +200246,3,12753,5779,19727,21,9,33,FR,France +200245,3,19304,8475,30133,32,14,50,FR,France +200244,3,18082,10671,25493,30,18,42,FR,France +200243,3,14326,7548,21104,24,13,35,FR,France +200242,3,13774,7800,19748,23,13,33,FR,France +200241,3,11036,5650,16422,19,10,28,FR,France +200240,3,8137,3375,12899,14,6,22,FR,France +200239,3,15989,9892,22086,27,17,37,FR,France +200238,3,7067,3299,10835,12,6,18,FR,France +200237,3,12409,4981,19837,21,9,33,FR,France +200236,3,1679,0,4072,3,0,7,FR,France +200235,3,2126,0,6301,4,0,11,FR,France +200234,3,2843,0,7483,5,0,13,FR,France +200233,3,2670,0,5462,4,0,9,FR,France +200232,3,1087,0,3003,2,0,5,FR,France +200231,3,5455,399,10511,9,1,17,FR,France +200230,3,3601,0,7836,6,0,13,FR,France +200229,3,5576,379,10773,9,0,18,FR,France +200228,3,6602,0,14289,11,0,24,FR,France +200227,3,1882,0,6151,3,0,10,FR,France +200226,3,4523,0,12320,8,0,21,FR,France +200225,3,4765,1076,8454,8,2,14,FR,France +200224,3,12063,7174,16952,20,12,28,FR,France +200223,3,15468,9806,21130,26,16,36,FR,France +200222,3,4854,1696,8012,8,3,13,FR,France +200221,3,5901,2212,9590,10,4,16,FR,France +200220,3,3803,1215,6391,6,2,10,FR,France +200219,3,6139,2598,9680,10,4,16,FR,France +200218,3,6083,2646,9520,10,4,16,FR,France +200217,3,7223,2678,11768,12,4,20,FR,France +200216,3,17762,9887,25637,30,17,43,FR,France +200215,3,21654,13662,29646,36,23,49,FR,France +200214,3,23877,15709,32045,40,26,54,FR,France +200213,3,27497,16289,38705,46,27,65,FR,France +200212,3,33510,20938,46082,56,35,77,FR,France +200211,3,40426,29171,51681,68,49,87,FR,France +200210,3,42915,24537,61293,72,41,103,FR,France +200209,3,63735,48368,79102,107,81,133,FR,France +200208,3,117204,95548,138860,197,161,233,FR,France +200207,3,170251,137065,203437,286,230,342,FR,France +200206,3,325084,296111,354057,546,497,595,FR,France +200205,3,456186,422559,489813,767,710,824,FR,France +200204,3,504715,470859,538571,848,791,905,FR,France +200203,3,383720,353019,414421,645,593,697,FR,France +200202,3,244028,217752,270304,410,366,454,FR,France +200201,3,115422,95696,135148,194,161,227,FR,France +200152,3,57999,43225,72773,98,73,123,FR,France +200151,3,45961,36017,55905,78,61,95,FR,France +200150,3,31309,22878,39740,53,39,67,FR,France +200149,3,34792,23268,46316,59,40,78,FR,France +200148,3,43283,20164,66402,73,34,112,FR,France +200147,3,27455,20021,34889,46,33,59,FR,France +200146,3,21127,14294,27960,36,24,48,FR,France +200145,3,20766,13979,27553,35,24,46,FR,France +200144,3,11410,6593,16227,19,11,27,FR,France +200143,3,23311,15652,30970,39,26,52,FR,France +200142,3,18963,11652,26274,32,20,44,FR,France +200141,3,20241,14032,26450,34,24,44,FR,France +200140,3,18113,9971,26255,31,17,45,FR,France +200139,3,25407,7785,43029,43,13,73,FR,France +200138,3,9736,4985,14487,16,8,24,FR,France +200137,3,8025,3527,12523,14,6,22,FR,France +200136,3,4663,654,8672,8,1,15,FR,France +200135,3,4399,0,9810,7,0,16,FR,France +200134,3,2990,0,6419,5,0,11,FR,France +200133,3,0,0,0,0,0,0,FR,France +200132,3,0,0,0,0,0,0,FR,France +200131,3,18999,4286,33712,32,7,57,FR,France +200130,3,2144,0,5670,4,0,10,FR,France +200129,3,2408,0,5215,4,0,9,FR,France +200128,3,3555,553,6557,6,1,11,FR,France +200127,3,4739,1122,8356,8,2,14,FR,France +200126,3,3335,466,6204,6,1,11,FR,France +200125,3,2643,527,4759,4,0,8,FR,France +200124,3,4784,2158,7410,8,4,12,FR,France +200123,3,6299,3161,9437,11,6,16,FR,France +200122,3,4544,2006,7082,8,4,12,FR,France +200121,3,8925,4094,13756,15,7,23,FR,France +200120,3,15269,8883,21655,26,15,37,FR,France +200119,3,17369,10575,24163,29,18,40,FR,France +200118,3,21043,14262,27824,36,25,47,FR,France +200117,3,25787,19109,32465,44,33,55,FR,France +200116,3,24025,16833,31217,41,29,53,FR,France +200115,3,24188,17340,31036,41,29,53,FR,France +200114,3,40429,31774,49084,68,53,83,FR,France +200113,3,48644,39517,57771,82,67,97,FR,France +200112,3,45411,35780,55042,77,61,93,FR,France +200111,3,49809,40534,59084,84,68,100,FR,France +200110,3,46649,37240,56058,79,63,95,FR,France +200109,3,58623,47346,69900,99,80,118,FR,France +200108,3,77423,63237,91609,131,107,155,FR,France +200107,3,126970,107898,146042,215,183,247,FR,France +200106,3,225969,198142,253796,382,335,429,FR,France +200105,3,278674,249486,307862,471,422,520,FR,France +200104,3,209193,189129,229257,354,320,388,FR,France +200103,3,139823,124243,155403,236,210,262,FR,France +200102,3,105356,92392,118320,178,156,200,FR,France +200101,3,98930,84599,113261,167,143,191,FR,France +200052,3,143525,124203,162847,244,211,277,FR,France +200051,3,125224,108719,141729,213,185,241,FR,France +200050,3,99177,84857,113497,169,145,193,FR,France +200049,3,74170,54196,94144,126,92,160,FR,France +200048,3,43642,34064,53220,74,58,90,FR,France +200047,3,64848,11322,118374,110,19,201,FR,France +200046,3,20598,14053,27143,35,24,46,FR,France +200045,3,25375,17229,33521,43,29,57,FR,France +200044,3,16330,9762,22898,28,17,39,FR,France +200043,3,36951,27693,46209,63,47,79,FR,France +200042,3,41200,30772,51628,70,52,88,FR,France +200041,3,40022,30939,49105,68,53,83,FR,France +200040,3,27237,19986,34488,46,34,58,FR,France +200039,3,19338,12649,26027,33,22,44,FR,France +200038,3,7417,3193,11641,13,6,20,FR,France +200037,3,2243,0,4722,4,0,8,FR,France +200036,3,2990,0,6416,5,0,11,FR,France +200035,3,5590,0,12003,10,0,21,FR,France +200034,3,5188,0,12418,9,0,21,FR,France +200033,3,1690,0,3859,3,0,7,FR,France +200032,3,1405,0,4239,2,0,7,FR,France +200031,3,2159,0,4744,4,0,8,FR,France +200030,3,218,0,783,0,0,1,FR,France +200029,3,1532,0,3751,3,0,7,FR,France +200028,3,1071,0,2881,2,0,5,FR,France +200027,3,2427,150,4704,4,0,8,FR,France +200026,3,1997,0,4996,3,0,8,FR,France +200025,3,4239,221,8257,7,0,14,FR,France +200024,3,5411,1122,9700,9,2,16,FR,France +200023,3,8757,4101,13413,15,7,23,FR,France +200022,3,4966,1694,8238,8,2,14,FR,France +200021,3,4271,1389,7153,7,2,12,FR,France +200020,3,4520,1478,7562,8,3,13,FR,France +200019,3,13867,8548,19186,24,15,33,FR,France +200018,3,5386,2261,8511,9,4,14,FR,France +200017,3,7018,1581,12455,12,3,21,FR,France +200016,3,5328,1433,9223,9,2,16,FR,France +200015,3,12020,6436,17604,20,11,29,FR,France +200014,3,10942,5691,16193,19,10,28,FR,France +200013,3,8572,3443,13701,15,6,24,FR,France +200012,3,7081,3097,11065,12,5,19,FR,France +200011,3,12172,7447,16897,21,13,29,FR,France +200010,3,9091,5450,12732,15,9,21,FR,France +200009,3,14631,9200,20062,25,16,34,FR,France +200008,3,23647,17172,30122,40,29,51,FR,France +200007,3,59173,48440,69906,101,83,119,FR,France +200006,3,146517,129961,163073,249,221,277,FR,France +200005,3,261687,239983,283391,445,408,482,FR,France +200004,3,374822,349785,399859,637,594,680,FR,France +200003,3,484233,456706,511760,824,777,871,FR,France +200002,3,521069,492185,549953,886,837,935,FR,France +200001,3,541945,511326,572564,922,870,974,FR,France +199952,3,387655,360652,414658,663,617,709,FR,France +199951,3,272075,250906,293244,465,429,501,FR,France +199950,3,181113,164571,197655,310,282,338,FR,France +199949,3,112328,99058,125598,192,169,215,FR,France +199948,3,58710,48651,68769,100,83,117,FR,France +199947,3,35912,23462,48362,61,40,82,FR,France +199946,3,8601,1503,15699,15,3,27,FR,France +199945,3,17781,10817,24745,30,18,42,FR,France +199944,3,18238,12870,23606,31,22,40,FR,France +199943,3,18135,12601,23669,31,22,40,FR,France +199942,3,19183,13258,25108,33,23,43,FR,France +199941,3,25171,18689,31653,43,32,54,FR,France +199940,3,24185,16184,32186,41,27,55,FR,France +199939,3,28553,20776,36330,49,36,62,FR,France +199938,3,12430,7759,17101,21,13,29,FR,France +199937,3,7543,4283,10803,13,7,19,FR,France +199936,3,8191,2827,13555,14,5,23,FR,France +199935,3,3334,1188,5480,6,2,10,FR,France +199934,3,7600,0,27730,13,0,47,FR,France +199933,3,9757,354,19160,17,1,33,FR,France +199932,3,7149,0,15077,12,0,26,FR,France +199931,3,2640,0,5463,5,0,10,FR,France +199930,3,1478,0,3153,3,0,6,FR,France +199929,3,3983,498,7468,7,1,13,FR,France +199928,3,3731,712,6750,6,1,11,FR,France +199927,3,5004,1597,8411,9,3,15,FR,France +199926,3,3459,699,6219,6,1,11,FR,France +199925,3,5302,2057,8547,9,3,15,FR,France +199924,3,4327,1646,7008,7,2,12,FR,France +199923,3,5370,2374,8366,9,4,14,FR,France +199922,3,4404,1643,7165,8,3,13,FR,France +199921,3,4180,1485,6875,7,2,12,FR,France +199920,3,6073,2775,9371,10,4,16,FR,France +199919,3,6241,3220,9262,11,6,16,FR,France +199918,3,3057,678,5436,5,1,9,FR,France +199917,3,2904,701,5107,5,1,9,FR,France +199916,3,7539,3360,11718,13,6,20,FR,France +199915,3,11535,6814,16256,20,12,28,FR,France +199914,3,18730,13131,24329,32,22,42,FR,France +199913,3,38453,29560,47346,66,51,81,FR,France +199912,3,58090,48072,68108,99,82,116,FR,France +199911,3,91329,78686,103972,156,134,178,FR,France +199910,3,147976,131058,164894,253,224,282,FR,France +199909,3,207450,188710,226190,355,323,387,FR,France +199908,3,313293,292280,334306,536,500,572,FR,France +199907,3,524136,496702,551570,896,849,943,FR,France +199906,3,493908,466605,521211,844,797,891,FR,France +199905,3,476884,449696,504072,815,769,861,FR,France +199904,3,368514,345131,391897,630,590,670,FR,France +199903,3,242388,224208,260568,414,383,445,FR,France +199902,3,160657,145209,176105,275,249,301,FR,France +199901,3,130133,115125,145141,222,196,248,FR,France +199853,3,107611,92301,122921,185,159,211,FR,France +199852,3,72373,61032,83714,124,105,143,FR,France +199851,3,78179,67156,89202,134,115,153,FR,France +199850,3,54775,45478,64072,94,78,110,FR,France +199849,3,33385,26332,40438,57,45,69,FR,France +199848,3,22636,16668,28604,39,29,49,FR,France +199847,3,14505,9746,19264,25,17,33,FR,France +199846,3,13804,9049,18559,24,16,32,FR,France +199845,3,13021,8113,17929,22,14,30,FR,France +199844,3,12631,7410,17852,22,13,31,FR,France +199843,3,12180,7125,17235,21,12,30,FR,France +199842,3,18885,12726,25044,32,21,43,FR,France +199841,3,24196,17506,30886,42,31,53,FR,France +199840,3,20235,14114,26356,35,25,45,FR,France +199839,3,17075,11538,22612,29,20,38,FR,France +199838,3,10837,6336,15338,19,11,27,FR,France +199837,3,6968,3227,10709,12,6,18,FR,France +199836,3,3033,580,5486,5,1,9,FR,France +199835,3,2491,0,5022,4,0,8,FR,France +199834,3,3853,589,7117,7,1,13,FR,France +199833,3,2934,0,6598,5,0,11,FR,France +199832,3,1308,0,2894,2,0,5,FR,France +199831,3,12147,0,29237,21,0,50,FR,France +199830,3,5309,1628,8990,9,3,15,FR,France +199829,3,6486,2465,10507,11,4,18,FR,France +199828,3,9577,4464,14690,16,7,25,FR,France +199827,3,12358,7158,17558,21,12,30,FR,France +199826,3,10415,6547,14283,18,11,25,FR,France +199825,3,18246,13050,23442,31,22,40,FR,France +199824,3,16263,11126,21400,28,19,37,FR,France +199823,3,8553,4911,12195,15,9,21,FR,France +199822,3,5181,2669,7693,9,5,13,FR,France +199821,3,4751,2416,7086,8,4,12,FR,France +199820,3,12129,8099,16159,21,14,28,FR,France +199819,3,24118,17906,30330,41,30,52,FR,France +199818,3,31612,24512,38712,54,42,66,FR,France +199817,3,61148,51894,70402,105,89,121,FR,France +199816,3,123195,109878,136512,211,188,234,FR,France +199815,3,171603,156715,186491,294,268,320,FR,France +199814,3,319092,298398,339786,547,512,582,FR,France +199813,3,298212,278513,317911,512,478,546,FR,France +199812,3,263585,246356,280814,452,422,482,FR,France +199811,3,220578,204894,236262,378,351,405,FR,France +199810,3,202354,186304,218404,347,319,375,FR,France +199809,3,227553,209970,245136,390,360,420,FR,France +199808,3,271362,252005,290719,465,432,498,FR,France +199807,3,190187,173694,206680,326,298,354,FR,France +199806,3,88217,76829,99605,151,131,171,FR,France +199805,3,45180,36970,53390,77,63,91,FR,France +199804,3,30005,23272,36738,51,39,63,FR,France +199803,3,23900,18221,29579,41,31,51,FR,France +199802,3,31143,23994,38292,53,41,65,FR,France +199801,3,24809,17786,31832,43,31,55,FR,France +199752,3,29039,21984,36094,50,38,62,FR,France +199751,3,34924,27737,42111,60,48,72,FR,France +199750,3,33527,26388,40666,58,46,70,FR,France +199749,3,15978,11147,20809,27,19,35,FR,France +199748,3,11507,7744,15270,20,14,26,FR,France +199747,3,11059,7151,14967,19,12,26,FR,France +199746,3,8073,4613,11533,14,8,20,FR,France +199745,3,18202,13113,23291,31,22,40,FR,France +199744,3,19770,14405,25135,34,25,43,FR,France +199743,3,16707,11945,21469,29,21,37,FR,France +199742,3,15340,10351,20329,26,17,35,FR,France +199741,3,16933,11941,21925,29,20,38,FR,France +199740,3,13292,8709,17875,23,15,31,FR,France +199739,3,10189,6279,14099,18,11,25,FR,France +199738,3,3231,1061,5401,6,2,10,FR,France +199737,3,4542,1949,7135,8,4,12,FR,France +199736,3,5131,2205,8057,9,4,14,FR,France +199735,3,1842,0,3740,3,0,6,FR,France +199734,3,3226,0,6717,6,0,12,FR,France +199733,3,1799,0,4368,3,0,7,FR,France +199732,3,2086,0,4411,4,0,8,FR,France +199731,3,1386,0,3332,2,0,5,FR,France +199730,3,2116,0,4919,4,0,9,FR,France +199729,3,1973,0,4347,3,0,7,FR,France +199728,3,1560,216,2904,3,1,5,FR,France +199727,3,2540,754,4326,4,1,7,FR,France +199726,3,5582,2699,8465,10,5,15,FR,France +199725,3,4012,1090,6934,7,2,12,FR,France +199724,3,4696,1824,7568,8,3,13,FR,France +199723,3,4709,2136,7282,8,4,12,FR,France +199722,3,2283,665,3901,4,1,7,FR,France +199721,3,2108,664,3552,4,2,6,FR,France +199720,3,3257,1519,4995,6,3,9,FR,France +199719,3,4646,2436,6856,8,4,12,FR,France +199718,3,5246,2764,7728,9,5,13,FR,France +199717,3,14236,9906,18566,24,17,31,FR,France +199716,3,12169,8111,16227,21,14,28,FR,France +199715,3,9516,6192,12840,16,10,22,FR,France +199714,3,13602,9659,17545,23,16,30,FR,France +199713,3,18032,13345,22719,31,23,39,FR,France +199712,3,17199,12707,21691,30,22,38,FR,France +199711,3,19988,15419,24557,34,26,42,FR,France +199710,3,21903,17338,26468,38,30,46,FR,France +199709,3,29860,24261,35459,51,41,61,FR,France +199708,3,55445,47857,63033,95,82,108,FR,France +199707,3,70876,62518,79234,122,108,136,FR,France +199706,3,76906,68152,85660,132,117,147,FR,France +199705,3,95900,86095,105705,165,148,182,FR,France +199704,3,96896,87079,106713,167,150,184,FR,France +199703,3,143844,131917,155771,248,227,269,FR,France +199702,3,211578,197395,225761,364,340,388,FR,France +199701,3,280440,263783,297097,483,454,512,FR,France +199652,3,388201,369211,407191,670,637,703,FR,France +199651,3,640627,617388,663866,1106,1066,1146,FR,France +199650,3,535205,514568,555842,924,888,960,FR,France +199649,3,411498,393335,429661,710,679,741,FR,France +199648,3,195568,182563,208573,338,316,360,FR,France +199647,3,71980,63619,80341,124,110,138,FR,France +199646,3,32138,26358,37918,55,45,65,FR,France +199645,3,25551,20136,30966,44,35,53,FR,France +199644,3,10753,7230,14276,19,13,25,FR,France +199643,3,12971,9311,16631,22,16,28,FR,France +199642,3,11929,8472,15386,21,15,27,FR,France +199641,3,9918,6674,13162,17,11,23,FR,France +199640,3,10765,7067,14463,19,13,25,FR,France +199639,3,8377,5183,11571,14,8,20,FR,France +199638,3,9470,5965,12975,16,10,22,FR,France +199637,3,2925,829,5021,5,1,9,FR,France +199636,3,1122,23,2221,2,0,4,FR,France +199635,3,1674,93,3255,3,0,6,FR,France +199634,3,1273,122,2424,2,0,4,FR,France +199633,3,540,0,1246,1,0,2,FR,France +199632,3,1453,176,2730,3,1,5,FR,France +199631,3,3010,752,5268,5,1,9,FR,France +199630,3,2992,706,5278,5,1,9,FR,France +199629,3,1559,144,2974,3,1,5,FR,France +199628,3,3109,541,5677,5,1,9,FR,France +199627,3,4456,1595,7317,8,3,13,FR,France +199626,3,2871,1138,4604,5,2,8,FR,France +199625,3,2308,856,3760,4,1,7,FR,France +199624,3,2490,1067,3913,4,2,6,FR,France +199623,3,2819,1262,4376,5,2,8,FR,France +199622,3,4005,1984,6026,7,4,10,FR,France +199621,3,7042,4291,9793,12,7,17,FR,France +199620,3,10619,7365,13873,18,12,24,FR,France +199619,3,11898,8065,15731,21,14,28,FR,France +199618,3,18338,13352,23324,32,23,41,FR,France +199617,3,24954,19100,30808,43,33,53,FR,France +199616,3,29313,23868,34758,51,42,60,FR,France +199615,3,51703,43644,59762,89,75,103,FR,France +199614,3,44414,36774,52054,77,64,90,FR,France +199613,3,30622,25062,36182,53,43,63,FR,France +199612,3,31818,25852,37784,55,45,65,FR,France +199611,3,24427,19499,29355,42,33,51,FR,France +199610,3,20910,16198,25622,36,28,44,FR,France +199609,3,19594,15228,23960,34,26,42,FR,France +199608,3,19046,14850,23242,33,26,40,FR,France +199607,3,23041,18338,27744,40,32,48,FR,France +199606,3,21810,17153,26467,38,30,46,FR,France +199605,3,25275,20410,30140,44,36,52,FR,France +199604,3,43359,36948,49770,75,64,86,FR,France +199603,3,54691,48016,61366,94,82,106,FR,France +199602,3,105606,96106,115106,182,166,198,FR,France +199601,3,223830,209274,238386,386,361,411,FR,France +199552,3,397122,378252,415992,688,655,721,FR,France +199551,3,749988,725434,774542,1299,1256,1342,FR,France +199550,3,604926,583100,626752,1047,1009,1085,FR,France +199549,3,375500,358200,392800,650,620,680,FR,France +199548,3,206446,193457,219435,357,335,379,FR,France +199547,3,120472,110526,130418,209,192,226,FR,France +199546,3,62380,55042,69718,108,95,121,FR,France +199545,3,29791,24523,35059,52,43,61,FR,France +199544,3,13168,9820,16516,23,17,29,FR,France +199543,3,16188,12389,19987,28,21,35,FR,France +199542,3,15178,11387,18969,26,19,33,FR,France +199541,3,14980,10851,19109,26,19,33,FR,France +199540,3,16245,11610,20880,28,20,36,FR,France +199539,3,18499,13844,23154,32,24,40,FR,France +199538,3,13123,9410,16836,23,17,29,FR,France +199537,3,4895,2666,7124,8,4,12,FR,France +199536,3,3659,1574,5744,6,2,10,FR,France +199535,3,2496,644,4348,4,1,7,FR,France +199534,3,1887,214,3560,3,0,6,FR,France +199533,3,905,0,2007,2,0,4,FR,France +199532,3,700,0,1699,1,0,3,FR,France +199531,3,1946,92,3800,3,0,6,FR,France +199530,3,1898,46,3750,3,0,6,FR,France +199529,3,2148,687,3609,4,1,7,FR,France +199528,3,3312,1430,5194,6,3,9,FR,France +199527,3,4853,2683,7023,8,4,12,FR,France +199526,3,4986,2911,7061,9,5,13,FR,France +199525,3,4571,2520,6622,8,4,12,FR,France +199524,3,8058,5054,11062,14,9,19,FR,France +199523,3,13820,9801,17839,24,17,31,FR,France +199522,3,14124,9999,18249,24,17,31,FR,France +199521,3,11931,8655,15207,21,15,27,FR,France +199520,3,18846,14311,23381,33,25,41,FR,France +199519,3,26261,21488,31034,45,37,53,FR,France +199518,3,39231,33258,45204,68,58,78,FR,France +199517,3,88640,79343,97937,153,137,169,FR,France +199516,3,140488,129439,151537,243,224,262,FR,France +199515,3,181007,169110,192904,313,292,334,FR,France +199514,3,248704,235144,262264,431,408,454,FR,France +199513,3,209839,197191,222487,363,341,385,FR,France +199512,3,122434,112497,132371,212,195,229,FR,France +199511,3,81730,73346,90114,142,127,157,FR,France +199510,3,49387,42703,56071,86,74,98,FR,France +199509,3,39696,33259,46133,69,58,80,FR,France +199508,3,38008,32225,43791,66,56,76,FR,France +199507,3,30550,25479,35621,53,44,62,FR,France +199506,3,37351,32007,42695,65,56,74,FR,France +199505,3,27876,23218,32534,48,40,56,FR,France +199504,3,27643,22818,32468,48,40,56,FR,France +199503,3,24844,20391,29297,43,35,51,FR,France +199502,3,23480,19249,27711,41,34,48,FR,France +199501,3,26556,21916,31196,46,38,54,FR,France +199452,3,22036,17495,26577,38,30,46,FR,France +199451,3,26912,21750,32074,47,38,56,FR,France +199450,3,28831,23470,34192,50,41,59,FR,France +199449,3,21161,16559,25763,37,29,45,FR,France +199448,3,18487,14456,22518,32,25,39,FR,France +199447,3,15206,11578,18834,26,20,32,FR,France +199446,3,14252,10525,17979,25,19,31,FR,France +199445,3,12152,8448,15856,21,15,27,FR,France +199444,3,11307,7688,14926,20,14,26,FR,France +199443,3,11254,8002,14506,20,14,26,FR,France +199442,3,14406,10653,18159,25,18,32,FR,France +199441,3,14073,10341,17805,24,18,30,FR,France +199440,3,15962,11850,20074,28,21,35,FR,France +199439,3,15878,11643,20113,28,21,35,FR,France +199438,3,15366,11100,19632,27,20,34,FR,France +199437,3,5949,3561,8337,10,6,14,FR,France +199436,3,2806,1133,4479,5,2,8,FR,France +199435,3,4556,2358,6754,8,4,12,FR,France +199434,3,3459,1444,5474,6,2,10,FR,France +199433,3,4272,977,7567,7,1,13,FR,France +199432,3,4786,1613,7959,8,2,14,FR,France +199431,3,5027,1580,8474,9,3,15,FR,France +199430,3,2100,520,3680,4,1,7,FR,France +199429,3,1188,0,2384,2,0,4,FR,France +199428,3,1581,316,2846,3,1,5,FR,France +199427,3,713,0,1459,1,0,2,FR,France +199426,3,990,80,1900,2,0,4,FR,France +199425,3,5431,3222,7640,9,5,13,FR,France +199424,3,6288,3723,8853,11,7,15,FR,France +199423,3,6440,1052,11828,11,2,20,FR,France +199422,3,845,0,2449,1,0,4,FR,France +199421,3,2197,395,3999,4,1,7,FR,France +199420,3,2217,852,3582,4,2,6,FR,France +199419,3,1483,406,2560,3,1,5,FR,France +199418,3,3705,1940,5470,6,3,9,FR,France +199417,3,2288,1064,3512,4,2,6,FR,France +199416,3,5156,3176,7136,9,6,12,FR,France +199415,3,6952,4678,9226,12,8,16,FR,France +199414,3,4671,2784,6558,8,5,11,FR,France +199413,3,3343,1641,5045,6,3,9,FR,France +199412,3,4305,2412,6198,7,4,10,FR,France +199411,3,5399,3327,7471,9,5,13,FR,France +199410,3,4548,2529,6567,8,4,12,FR,France +199409,3,5635,3251,8019,10,6,14,FR,France +199408,3,9539,6652,12426,17,12,22,FR,France +199407,3,14639,11188,18090,25,19,31,FR,France +199406,3,17308,13395,21221,30,23,37,FR,France +199405,3,18489,14290,22688,32,25,39,FR,France +199404,3,23712,19048,28376,41,33,49,FR,France +199403,3,29882,24817,34947,52,43,61,FR,France +199402,3,47402,41415,53389,82,72,92,FR,France +199401,3,118119,108182,128056,205,188,222,FR,France +199352,3,233137,218608,247666,406,381,431,FR,France +199351,3,377472,359792,395152,658,627,689,FR,France +199350,3,627639,607097,648181,1094,1058,1130,FR,France +199349,3,898045,873419,922671,1565,1522,1608,FR,France +199348,3,527582,507752,547412,920,885,955,FR,France +199347,3,241371,226769,255973,421,396,446,FR,France +199346,3,76034,68003,84065,133,119,147,FR,France +199345,3,32289,27022,37556,56,47,65,FR,France +199344,3,17832,14015,21649,31,24,38,FR,France +199343,3,15098,11333,18863,26,19,33,FR,France +199342,3,19187,14893,23481,33,26,40,FR,France +199341,3,18285,14384,22186,32,25,39,FR,France +199340,3,13805,10348,17262,24,18,30,FR,France +199339,3,14783,11173,18393,26,20,32,FR,France +199338,3,10492,7329,13655,18,12,24,FR,France +199337,3,7023,4503,9543,12,8,16,FR,France +199336,3,4361,2445,6277,8,5,11,FR,France +199335,3,5589,3066,8112,10,6,14,FR,France +199334,3,2984,1209,4759,5,2,8,FR,France +199333,3,3217,758,5676,6,2,10,FR,France +199332,3,3755,1051,6459,7,2,12,FR,France +199331,3,4163,1768,6558,7,3,11,FR,France +199330,3,4055,1907,6203,7,3,11,FR,France +199329,3,3714,1668,5760,6,2,10,FR,France +199328,3,1774,484,3064,3,1,5,FR,France +199327,3,2574,918,4230,4,1,7,FR,France +199326,3,3048,1450,4646,5,2,8,FR,France +199325,3,8348,5260,11436,15,10,20,FR,France +199324,3,6624,3747,9501,12,7,17,FR,France +199323,3,7424,4302,10546,13,8,18,FR,France +199322,3,3432,1849,5015,6,3,9,FR,France +199321,3,5942,3670,8214,10,6,14,FR,France +199320,3,5137,3157,7117,9,6,12,FR,France +199319,3,4593,2725,6461,8,5,11,FR,France +199318,3,5027,3075,6979,9,6,12,FR,France +199317,3,8111,5138,11084,14,9,19,FR,France +199316,3,24932,19468,30396,43,33,53,FR,France +199315,3,22181,17147,27215,39,30,48,FR,France +199314,3,38266,30865,45667,67,54,80,FR,France +199313,3,62987,54506,71468,110,95,125,FR,France +199312,3,63493,55956,71030,111,98,124,FR,France +199311,3,80548,72628,88468,140,126,154,FR,France +199310,3,127910,117688,138132,223,205,241,FR,France +199309,3,184150,171378,196922,321,299,343,FR,France +199308,3,222932,209051,236813,389,365,413,FR,France +199307,3,248494,234936,262052,433,409,457,FR,France +199306,3,286939,271830,302048,500,474,526,FR,France +199305,3,255890,241516,270264,446,421,471,FR,France +199304,3,193107,181261,204953,337,316,358,FR,France +199303,3,147854,137256,158452,258,240,276,FR,France +199302,3,90269,82164,98374,157,143,171,FR,France +199301,3,75288,67244,83332,131,117,145,FR,France +199253,3,56622,49107,64137,99,86,112,FR,France +199252,3,49588,42568,56608,87,75,99,FR,France +199251,3,41156,35024,47288,72,61,83,FR,France +199250,3,40100,34699,45501,70,61,79,FR,France +199249,3,39146,33847,44445,69,60,78,FR,France +199248,3,32392,27499,37285,57,48,66,FR,France +199247,3,26276,21797,30755,46,38,54,FR,France +199246,3,22758,18462,27054,40,32,48,FR,France +199245,3,22023,17804,26242,39,32,46,FR,France +199244,3,27619,22945,32293,48,40,56,FR,France +199243,3,24969,20704,29234,44,37,51,FR,France +199242,3,29980,25261,34699,52,44,60,FR,France +199241,3,24091,19953,28229,42,35,49,FR,France +199240,3,17593,13885,21301,31,25,37,FR,France +199239,3,13535,10301,16769,24,18,30,FR,France +199238,3,9837,7106,12568,17,12,22,FR,France +199237,3,7480,5130,9830,13,9,17,FR,France +199236,3,5155,2958,7352,9,5,13,FR,France +199235,3,6383,3687,9079,11,6,16,FR,France +199234,3,2953,922,4984,5,1,9,FR,France +199233,3,4046,1549,6543,7,3,11,FR,France +199232,3,4963,2215,7711,9,4,14,FR,France +199231,3,4233,1733,6733,7,3,11,FR,France +199230,3,3091,1145,5037,5,2,8,FR,France +199229,3,3586,1583,5589,6,2,10,FR,France +199228,3,4179,2133,6225,7,3,11,FR,France +199227,3,5568,3134,8002,10,6,14,FR,France +199226,3,5886,3229,8543,10,5,15,FR,France +199225,3,5304,2805,7803,9,5,13,FR,France +199224,3,5928,3482,8374,10,6,14,FR,France +199223,3,3914,1855,5973,7,3,11,FR,France +199222,3,4899,2641,7157,9,5,13,FR,France +199221,3,5059,2889,7229,9,5,13,FR,France +199220,3,4308,2226,6390,8,4,12,FR,France +199219,3,2982,1181,4783,5,2,8,FR,France +199218,3,3887,1777,5997,7,3,11,FR,France +199217,3,3614,1216,6012,6,2,10,FR,France +199216,3,5460,2934,7986,10,6,14,FR,France +199215,3,8642,5029,12255,15,9,21,FR,France +199214,3,11346,7536,15156,20,13,27,FR,France +199213,3,11693,8096,15290,20,14,26,FR,France +199212,3,11752,7834,15670,21,14,28,FR,France +199211,3,11689,7575,15803,20,13,27,FR,France +199210,3,19224,12971,25477,34,23,45,FR,France +199209,3,26629,20275,32983,47,36,58,FR,France +199208,3,37667,30887,44447,66,54,78,FR,France +199207,3,57312,48777,65847,100,85,115,FR,France +199206,3,112450,99989,124911,197,175,219,FR,France +199205,3,165474,151342,179606,290,265,315,FR,France +199204,3,147959,133595,162323,259,234,284,FR,France +199203,3,137893,122944,152842,241,215,267,FR,France +199202,3,185852,166558,205146,325,291,359,FR,France +199201,3,247688,222574,272802,434,390,478,FR,France +199152,3,349815,325499,374131,615,572,658,FR,France +199151,3,378413,355928,400898,666,626,706,FR,France +199150,3,198721,182878,214564,350,322,378,FR,France +199149,3,93903,82992,104814,165,146,184,FR,France +199148,3,45173,37384,52962,79,65,93,FR,France +199147,3,35691,28224,43158,63,50,76,FR,France +199146,3,23685,17531,29839,42,31,53,FR,France +199145,3,19565,13551,25579,34,23,45,FR,France +199144,3,21571,15477,27665,38,27,49,FR,France +199143,3,28842,21958,35726,51,39,63,FR,France +199142,3,27483,20385,34581,48,36,60,FR,France +199141,3,28185,20655,35715,50,37,63,FR,France +199140,3,26740,16049,37431,47,28,66,FR,France +199139,3,14373,8734,20012,25,15,35,FR,France +199138,3,7460,3700,11220,13,6,20,FR,France +199137,3,2429,434,4424,4,0,8,FR,France +199136,3,2380,0,4882,4,0,8,FR,France +199135,3,2372,0,5025,4,0,9,FR,France +199134,3,2099,0,5104,4,0,9,FR,France +199133,3,1654,0,4102,3,0,7,FR,France +199132,3,625,0,2190,1,0,4,FR,France +199131,3,2464,0,5830,4,0,10,FR,France +199130,3,2382,0,6857,4,0,12,FR,France +199129,3,3837,40,7634,7,0,14,FR,France +199128,3,3297,152,6442,6,0,12,FR,France +199127,3,3164,934,5394,6,2,10,FR,France +199126,3,6376,3324,9428,11,6,16,FR,France +199125,3,8218,4776,11660,14,8,20,FR,France +199124,3,8223,4660,11786,14,8,20,FR,France +199123,3,6801,3596,10006,12,6,18,FR,France +199122,3,6050,2682,9418,11,5,17,FR,France +199121,3,6391,3385,9397,11,6,16,FR,France +199120,3,8633,4683,12583,15,8,22,FR,France +199119,3,7785,3986,11584,14,7,21,FR,France +199118,3,10856,6457,15255,19,11,27,FR,France +199117,3,15603,10950,20256,27,19,35,FR,France +199116,3,15665,11184,20146,28,20,36,FR,France +199115,3,15062,10715,19409,26,18,34,FR,France +199114,3,27862,21583,34141,49,38,60,FR,France +199113,3,32179,25829,38529,57,46,68,FR,France +199112,3,27873,22312,33434,49,39,59,FR,France +199111,3,46186,38876,53496,81,68,94,FR,France +199110,3,88750,77784,99716,156,137,175,FR,France +199109,3,139093,124326,153860,245,219,271,FR,France +199108,3,216369,198630,234108,381,350,412,FR,France +199107,3,208836,191789,225883,367,337,397,FR,France +199106,3,134737,121280,148194,237,213,261,FR,France +199105,3,73564,62716,84412,129,110,148,FR,France +199104,3,48253,39031,57475,85,69,101,FR,France +199103,3,29382,22258,36506,52,39,65,FR,France +199102,3,29759,22044,37474,52,38,66,FR,France +199101,3,42927,33706,52148,76,60,92,FR,France +199052,3,41262,31607,50917,73,56,90,FR,France +199051,3,46924,37544,56304,83,66,100,FR,France +199050,3,44125,36137,52113,78,64,92,FR,France +199049,3,38379,30603,46155,68,54,82,FR,France +199048,3,29571,22315,36827,52,39,65,FR,France +199047,3,23358,15890,30826,41,28,54,FR,France +199046,3,20246,7930,32562,36,14,58,FR,France +199045,3,17571,11591,23551,31,20,42,FR,France +199044,3,16182,10305,22059,29,19,39,FR,France +199043,3,17579,11588,23570,31,20,42,FR,France +199042,3,13011,7875,18147,23,14,32,FR,France +199041,3,19723,13330,26116,35,24,46,FR,France +199040,3,20433,14614,26252,36,26,46,FR,France +199039,3,15618,10315,20921,28,19,37,FR,France +199038,3,11146,6197,16095,20,11,29,FR,France +199037,3,4051,1022,7080,7,2,12,FR,France +199036,3,2542,124,4960,4,0,8,FR,France +199035,3,934,0,2681,2,0,5,FR,France +199034,3,201,0,595,0,0,1,FR,France +199033,3,0,0,0,0,0,0,FR,France +199032,3,1399,0,3849,2,0,6,FR,France +199031,3,881,0,2206,2,0,4,FR,France +199030,3,425,0,1262,1,0,2,FR,France +199029,3,1077,0,2643,2,0,5,FR,France +199028,3,959,0,2252,2,0,4,FR,France +199027,3,2948,793,5103,5,1,9,FR,France +199026,3,7236,2651,11821,13,5,21,FR,France +199025,3,7879,3136,12622,14,6,22,FR,France +199024,3,5727,2460,8994,10,4,16,FR,France +199023,3,3655,1043,6267,6,1,11,FR,France +199022,3,4196,1292,7100,7,2,12,FR,France +199021,3,1004,0,2367,2,0,4,FR,France +199020,3,4506,1771,7241,8,3,13,FR,France +199019,3,5897,2440,9354,10,4,16,FR,France +199018,3,1738,141,3335,3,0,6,FR,France +199017,3,5278,2197,8359,9,4,14,FR,France +199016,3,8129,3754,12504,14,6,22,FR,France +199015,3,11707,5831,17583,21,11,31,FR,France +199014,3,12862,8177,17547,23,15,31,FR,France +199013,3,21879,15088,28670,39,27,51,FR,France +199012,3,17035,11135,22935,30,20,40,FR,France +199011,3,20018,14311,25725,35,25,45,FR,France +199010,3,16294,11045,21543,29,20,38,FR,France +199009,3,21793,15460,28126,39,28,50,FR,France +199008,3,26110,19342,32878,46,34,58,FR,France +199007,3,61742,49720,73764,109,88,130,FR,France +199006,3,399984,353345,446623,707,625,789,FR,France +199005,3,161765,146354,177176,286,259,313,FR,France +199004,3,287771,267698,307844,509,474,544,FR,France +199003,3,315466,296550,334382,558,525,591,FR,France +199002,3,345060,326087,364033,610,576,644,FR,France +199001,3,483600,460913,506287,855,815,895,FR,France +198952,3,581149,556023,606275,1035,990,1080,FR,France +198951,3,821540,793846,849234,1463,1414,1512,FR,France +198950,3,749283,723633,774933,1334,1288,1380,FR,France +198949,3,358043,340053,376033,638,606,670,FR,France +198948,3,119087,108253,129921,212,193,231,FR,France +198947,3,40963,33897,48029,73,60,86,FR,France +198946,3,23547,17952,29142,42,32,52,FR,France +198945,3,22711,16999,28423,40,30,50,FR,France +198944,3,23405,17475,29335,42,31,53,FR,France +198943,3,29549,23287,35811,53,42,64,FR,France +198942,3,39410,32172,46648,70,57,83,FR,France +198941,3,43763,35245,52281,78,63,93,FR,France +198940,3,31453,24288,38618,56,43,69,FR,France +198939,3,24622,18425,30819,44,33,55,FR,France +198938,3,18296,13483,23109,33,24,42,FR,France +198937,3,12022,8082,15962,21,14,28,FR,France +198936,3,4769,2299,7239,8,4,12,FR,France +198935,3,4661,1696,7626,8,3,13,FR,France +198934,3,6039,2185,9893,11,4,18,FR,France +198933,3,7940,3858,12022,14,7,21,FR,France +198932,3,7114,2361,11867,13,5,21,FR,France +198931,3,2721,0,5478,5,0,10,FR,France +198930,3,3168,561,5775,6,1,11,FR,France +198929,3,3909,1504,6314,7,3,11,FR,France +198928,3,1284,105,2463,2,0,4,FR,France +198927,3,3641,1350,5932,6,2,10,FR,France +198926,3,5753,2885,8621,10,5,15,FR,France +198925,3,6299,3454,9144,11,6,16,FR,France +198924,3,6337,3537,9137,11,6,16,FR,France +198923,3,11779,7984,15574,21,14,28,FR,France +198922,3,9104,4764,13444,16,8,24,FR,France +198921,3,9554,4316,14792,17,8,26,FR,France +198920,3,6093,1023,11163,11,2,20,FR,France +198919,3,0,,,0,,,FR,France +198918,3,13452,1365,25539,24,2,46,FR,France +198917,3,10949,7147,14751,19,12,26,FR,France +198916,3,10908,7494,14322,19,13,25,FR,France +198915,3,9667,6209,13125,17,11,23,FR,France +198914,3,15230,10469,19991,27,19,35,FR,France +198913,3,10564,6767,14361,19,12,26,FR,France +198912,3,13419,9542,17296,24,17,31,FR,France +198911,3,16633,12140,21126,30,22,38,FR,France +198910,3,12387,8750,16024,22,16,28,FR,France +198909,3,12895,9183,16607,23,16,30,FR,France +198908,3,19746,15258,24234,35,27,43,FR,France +198907,3,27277,21760,32794,49,39,59,FR,France +198906,3,47844,40320,55368,85,72,98,FR,France +198905,3,52840,45665,60015,94,81,107,FR,France +198904,3,54942,47750,62134,98,85,111,FR,France +198903,3,66010,58065,73955,118,104,132,FR,France +198902,3,112284,102003,122565,200,182,218,FR,France +198901,3,202266,188305,216227,360,335,385,FR,France +198852,3,467971,447033,488909,837,800,874,FR,France +198851,3,872748,846468,899028,1562,1515,1609,FR,France +198850,3,1001824,974799,1028849,1793,1745,1841,FR,France +198849,3,966523,940068,992978,1729,1682,1776,FR,France +198848,3,637811,614785,660837,1141,1100,1182,FR,France +198847,3,246062,231234,260890,440,413,467,FR,France +198846,3,92484,83160,101808,165,148,182,FR,France +198845,3,53940,46148,61732,97,83,111,FR,France +198844,3,42106,35336,48876,75,63,87,FR,France +198843,3,38252,31909,44595,68,57,79,FR,France +198842,3,45495,38467,52523,81,68,94,FR,France +198841,3,46336,39344,53328,83,70,96,FR,France +198840,3,39882,33507,46257,71,60,82,FR,France +198839,3,43730,36755,50705,78,66,90,FR,France +198838,3,35243,29367,41119,63,52,74,FR,France +198837,3,15537,11911,19163,28,22,34,FR,France +198836,3,7539,4840,10238,13,8,18,FR,France +198835,3,7797,4762,10832,14,9,19,FR,France +198834,3,4950,2005,7895,9,4,14,FR,France +198833,3,7937,3861,12013,14,7,21,FR,France +198832,3,7033,2595,11471,13,5,21,FR,France +198831,3,8758,3591,13925,16,7,25,FR,France +198830,3,4205,1224,7186,8,3,13,FR,France +198829,3,6103,1013,11193,11,2,20,FR,France +198828,3,8562,3483,13641,15,6,24,FR,France +198827,3,4690,2196,7184,8,4,12,FR,France +198826,3,7065,3905,10225,13,7,19,FR,France +198825,3,7657,4664,10650,14,9,19,FR,France +198824,3,6676,3978,9374,12,7,17,FR,France +198823,3,8695,5755,11635,16,11,21,FR,France +198822,3,11566,8282,14850,21,15,27,FR,France +198821,3,11107,7742,14472,20,14,26,FR,France +198820,3,14118,10223,18013,25,18,32,FR,France +198819,3,18260,13847,22673,33,25,41,FR,France +198818,3,20415,16281,24549,37,30,44,FR,France +198817,3,21750,17436,26064,39,31,47,FR,France +198816,3,33730,27496,39964,60,49,71,FR,France +198815,3,70616,61754,79478,126,110,142,FR,France +198814,3,123868,113211,134525,222,203,241,FR,France +198813,3,193710,181519,205901,347,325,369,FR,France +198812,3,283445,268834,298056,507,481,533,FR,France +198811,3,316175,300858,331492,566,539,593,FR,France +198810,3,235142,222004,248280,421,397,445,FR,France +198809,3,135564,125263,145865,243,225,261,FR,France +198808,3,87753,78449,97057,157,140,174,FR,France +198807,3,77099,68423,85775,138,122,154,FR,France +198806,3,69349,61502,77196,124,110,138,FR,France +198805,3,72705,64952,80458,130,116,144,FR,France +198804,3,72818,64944,80692,130,116,144,FR,France +198803,3,68869,60922,76816,123,109,137,FR,France +198802,3,59743,51907,67579,107,93,121,FR,France +198801,3,60929,52573,69285,109,94,124,FR,France +198753,3,47257,38170,56344,85,69,101,FR,France +198752,3,11935,2353,21517,21,4,38,FR,France +198751,3,47744,34266,61222,86,62,110,FR,France +198750,3,57767,50181,65353,104,90,118,FR,France +198749,3,49380,42461,56299,89,77,101,FR,France +198748,3,41871,35115,48627,75,63,87,FR,France +198747,3,29688,23465,35911,53,42,64,FR,France +198746,3,37216,30199,44233,67,54,80,FR,France +198745,3,35456,29024,41888,64,52,76,FR,France +198744,3,41024,33829,48219,74,61,87,FR,France +198743,3,46356,38370,54342,83,69,97,FR,France +198742,3,38021,30236,45806,68,54,82,FR,France +198741,3,42021,32016,52026,76,58,94,FR,France +198740,3,24641,15930,33352,44,28,60,FR,France +198739,3,32328,23548,41108,58,42,74,FR,France +198738,3,16782,11870,21694,30,21,39,FR,France +198737,3,11208,6542,15874,20,12,28,FR,France +198736,3,7906,4014,11798,14,7,21,FR,France +198735,3,6149,2970,9328,11,5,17,FR,France +198734,3,6631,2734,10528,12,5,19,FR,France +198733,3,6404,1834,10974,12,4,20,FR,France +198732,3,7215,2353,12077,13,4,22,FR,France +198731,3,8233,3655,12811,15,7,23,FR,France +198730,3,4642,1301,7983,8,2,14,FR,France +198729,3,4389,913,7865,8,2,14,FR,France +198728,3,2702,138,5266,5,0,10,FR,France +198727,3,10171,5904,14438,18,10,26,FR,France +198726,3,12341,7824,16858,22,14,30,FR,France +198725,3,23413,15490,31336,42,28,56,FR,France +198724,3,11289,7282,15296,20,13,27,FR,France +198723,3,15857,10943,20771,29,20,38,FR,France +198722,3,14887,9743,20031,27,18,36,FR,France +198721,3,17619,12649,22589,32,23,41,FR,France +198720,3,10344,6454,14234,19,12,26,FR,France +198719,3,12539,7943,17135,23,15,31,FR,France +198718,3,16095,10330,21860,29,19,39,FR,France +198717,3,21256,14850,27662,38,26,50,FR,France +198716,3,32416,25100,39732,58,45,71,FR,France +198715,3,44292,36456,52128,80,66,94,FR,France +198714,3,50642,41866,59418,91,75,107,FR,France +198713,3,62246,52749,71743,112,95,129,FR,France +198712,3,59625,50653,68597,107,91,123,FR,France +198711,3,53561,45035,62087,96,81,111,FR,France +198710,3,93067,80519,105615,167,144,190,FR,France +198709,3,147006,133519,160493,264,240,288,FR,France +198708,3,217779,202179,233379,391,363,419,FR,France +198707,3,288180,270718,305642,518,487,549,FR,France +198706,3,296702,279051,314353,533,501,565,FR,France +198705,3,236046,219483,252609,424,394,454,FR,France +198704,3,158333,143625,173041,285,259,311,FR,France +198703,3,103841,91699,115983,187,165,209,FR,France +198702,3,74213,64014,84412,133,115,151,FR,France +198701,3,69745,59207,80283,125,106,144,FR,France +198652,3,76263,64958,87568,138,118,158,FR,France +198651,3,72920,63047,82793,132,114,150,FR,France +198650,3,73413,64019,82807,133,116,150,FR,France +198649,3,56296,48229,64363,102,87,117,FR,France +198648,3,46031,38578,53484,83,70,96,FR,France +198647,3,36740,29710,43770,66,53,79,FR,France +198646,3,32134,25327,38941,58,46,70,FR,France +198645,3,38964,31382,46546,70,56,84,FR,France +198644,3,28646,22048,35244,52,40,64,FR,France +198643,3,27532,20842,34222,50,38,62,FR,France +198642,3,31815,25124,38506,57,45,69,FR,France +198641,3,32864,25939,39789,59,47,71,FR,France +198640,3,33516,26776,40256,60,48,72,FR,France +198639,3,28665,22477,34853,52,41,63,FR,France +198638,3,26615,20479,32751,48,37,59,FR,France +198637,3,15998,10802,21194,29,20,38,FR,France +198636,3,9182,4982,13382,17,9,25,FR,France +198635,3,10587,4470,16704,19,8,30,FR,France +198634,3,5762,858,10666,10,1,19,FR,France +198633,3,3115,554,5676,6,1,11,FR,France +198632,3,1027,0,2311,2,0,4,FR,France +198631,3,2247,0,4574,4,0,8,FR,France +198630,3,2346,141,4551,4,0,8,FR,France +198629,3,3654,931,6377,7,2,12,FR,France +198628,3,2327,0,5318,4,0,9,FR,France +198627,3,7529,3353,11705,14,6,22,FR,France +198626,3,8778,5106,12450,16,9,23,FR,France +198625,3,11075,6804,15346,20,12,28,FR,France +198624,3,11160,7252,15068,20,13,27,FR,France +198623,3,14372,9896,18848,26,18,34,FR,France +198622,3,9717,5594,13840,18,11,25,FR,France +198621,3,14460,9575,19345,26,17,35,FR,France +198620,3,17133,12106,22160,31,22,40,FR,France +198619,3,22177,16008,28346,40,29,51,FR,France +198618,3,31736,24115,39357,57,43,71,FR,France +198617,3,34874,27440,42308,63,50,76,FR,France +198616,3,41196,32894,49498,74,59,89,FR,France +198615,3,42659,33537,51781,77,61,93,FR,France +198614,3,49792,39728,59856,90,72,108,FR,France +198613,3,87249,63562,110936,157,114,200,FR,France +198612,3,124777,97237,152317,225,175,275,FR,France +198611,3,168146,151035,185257,303,272,334,FR,France +198610,3,257305,231225,283385,464,417,511,FR,France +198609,3,321140,296644,345636,580,536,624,FR,France +198608,3,448786,419219,478353,810,757,863,FR,France +198607,3,490723,460150,521296,886,831,941,FR,France +198606,3,439300,411764,466836,793,743,843,FR,France +198605,3,364727,339868,389586,658,613,703,FR,France +198604,3,348509,322464,374554,629,582,676,FR,France +198603,3,271539,248654,294424,490,449,531,FR,France +198602,3,178138,159344,196932,322,288,356,FR,France +198601,3,112614,96539,128689,203,174,232,FR,France +198552,3,86452,72250,100654,157,131,183,FR,France +198551,3,114666,99538,129794,208,181,235,FR,France +198550,3,86031,73604,98458,156,133,179,FR,France +198549,3,65931,55326,76536,120,101,139,FR,France +198548,3,68291,57581,79001,124,105,143,FR,France +198547,3,66177,55221,77133,120,100,140,FR,France +198546,3,70534,58788,82280,128,107,149,FR,France +198545,3,57514,47167,67861,104,85,123,FR,France +198544,3,67356,55744,78968,122,101,143,FR,France +198543,3,87402,74208,100596,158,134,182,FR,France +198542,3,76218,64604,87832,138,117,159,FR,France +198541,3,45712,36755,54669,83,67,99,FR,France +198540,3,49739,40335,59143,90,73,107,FR,France +198539,3,39819,31234,48404,72,56,88,FR,France +198538,3,27605,20614,34596,50,37,63,FR,France +198537,3,22219,15626,28812,40,28,52,FR,France +198536,3,27986,18992,36980,51,35,67,FR,France +198535,3,30215,18546,41884,55,34,76,FR,France +198534,3,40389,24786,55992,73,45,101,FR,France +198533,3,22611,8819,36403,41,16,66,FR,France +198532,3,7488,1851,13125,14,4,24,FR,France +198531,3,16958,8479,25437,31,16,46,FR,France +198530,3,11598,5507,17689,21,10,32,FR,France +198529,3,13054,6474,19634,24,12,36,FR,France +198528,3,14588,7659,21517,26,13,39,FR,France +198527,3,19670,11761,27579,36,22,50,FR,France +198526,3,18609,12637,24581,34,23,45,FR,France +198525,3,19362,12454,26270,35,22,48,FR,France +198524,3,19855,13577,26133,36,25,47,FR,France +198523,3,19373,10010,28736,35,18,52,FR,France +198522,3,24099,17190,31008,44,31,57,FR,France +198521,3,26096,19621,32571,47,35,59,FR,France +198520,3,27896,20885,34907,51,38,64,FR,France +198519,3,43154,32821,53487,78,59,97,FR,France +198518,3,40555,29935,51175,74,55,93,FR,France +198517,3,34053,24366,43740,62,44,80,FR,France +198516,3,50362,36451,64273,91,66,116,FR,France +198515,3,63881,45538,82224,116,83,149,FR,France +198514,3,134545,114400,154690,244,207,281,FR,France +198513,3,197206,176080,218332,357,319,395,FR,France +198512,3,245240,223304,267176,445,405,485,FR,France +198511,3,276205,252399,300011,501,458,544,FR,France +198510,3,353231,326279,380183,640,591,689,FR,France +198509,3,369895,341109,398681,670,618,722,FR,France +198508,3,389886,359529,420243,707,652,762,FR,France +198507,3,471852,432599,511105,855,784,926,FR,France +198506,3,565825,518011,613639,1026,939,1113,FR,France +198505,3,637302,592795,681809,1155,1074,1236,FR,France +198504,3,424937,390794,459080,770,708,832,FR,France +198503,3,213901,174689,253113,388,317,459,FR,France +198502,3,97586,80949,114223,177,147,207,FR,France +198501,3,85489,65918,105060,155,120,190,FR,France +198452,3,84830,60602,109058,154,110,198,FR,France +198451,3,101726,80242,123210,185,146,224,FR,France +198450,3,123680,101401,145959,225,184,266,FR,France +198449,3,101073,81684,120462,184,149,219,FR,France +198448,3,78620,60634,96606,143,110,176,FR,France +198447,3,72029,54274,89784,131,99,163,FR,France +198446,3,87330,67686,106974,159,123,195,FR,France +198445,3,135223,101414,169032,246,184,308,FR,France +198444,3,68422,20056,116788,125,37,213,FR,France \ No newline at end of file diff --git a/module3/data_10.csv b/module3/data_10.csv new file mode 100644 index 0000000000000000000000000000000000000000..780a468dd8ca076b2c1f5e506c2e356301b7093d --- /dev/null +++ b/module3/data_10.csv @@ -0,0 +1,1963 @@ +# @source="réseau Sentinelles, INSERM, Sorbonne Université, http://www.sentiweb.fr", @meta={"period":[198444,202221],"geo":["PAY","1"],"geo_ref":"insee","indicator":"3","type":"all","conf_int":true,"compact":false}, @date=2022-06-04T12:28:03+02:00 +week,indicator,inc,inc_low,inc_up,inc100,inc100_low,inc100_up,geo_insee,geo_name +202221,3,17538,12255,22821,26,18,34,FR,France +202220,3,20413,16271,24555,31,25,37,FR,France +202219,3,17874,14068,21680,27,21,33,FR,France +202218,3,30353,25089,35617,46,38,54,FR,France +202217,3,36006,30373,41639,54,46,62,FR,France +202216,3,49949,42836,57062,75,64,86,FR,France +202215,3,100806,90824,110788,152,137,167,FR,France +202214,3,155441,143891,166991,234,217,251,FR,France +202213,3,191914,179558,204270,289,270,308,FR,France +202212,3,166224,155035,177413,251,234,268,FR,France +202211,3,122849,113306,132392,185,171,199,FR,France +202210,3,87904,79741,96067,133,121,145,FR,France +202209,3,50182,43958,56406,76,67,85,FR,France +202208,3,30963,25942,35984,47,39,55,FR,France +202207,3,34882,29446,40318,53,45,61,FR,France +202206,3,46623,40398,52848,70,61,79,FR,France +202205,3,62970,56043,69897,95,85,105,FR,France +202204,3,72209,64804,79614,109,98,120,FR,France +202203,3,74613,67144,82082,113,102,124,FR,France +202202,3,55920,49511,62329,84,74,94,FR,France +202201,3,57629,50699,64559,87,77,97,FR,France +202152,3,54349,47029,61669,82,71,93,FR,France +202151,3,41698,35359,48037,63,53,73,FR,France +202150,3,38117,32497,43737,58,49,67,FR,France +202149,3,40168,34716,45620,61,53,69,FR,France +202148,3,41842,36364,47320,63,55,71,FR,France +202147,3,36598,31338,41858,55,47,63,FR,France +202146,3,30059,25302,34816,46,39,53,FR,France +202145,3,20364,16564,24164,31,25,37,FR,France +202144,3,18999,15042,22956,29,23,35,FR,France +202143,3,27040,21935,32145,41,33,49,FR,France +202142,3,28343,23382,33304,43,35,51,FR,France +202141,3,25043,20586,29500,38,31,45,FR,France +202140,3,26286,21842,30730,40,33,47,FR,France +202139,3,22155,18014,26296,34,28,40,FR,France +202138,3,15614,12310,18918,24,19,29,FR,France +202137,3,13673,10404,16942,21,16,26,FR,France +202136,3,10289,7505,13073,16,12,20,FR,France +202135,3,12609,9282,15936,19,14,24,FR,France +202134,3,13081,9540,16622,20,15,25,FR,France +202133,3,10392,7042,13742,16,11,21,FR,France +202132,3,15586,11009,20163,24,17,31,FR,France +202131,3,18855,13664,24046,29,21,37,FR,France +202130,3,13991,9695,18287,21,14,28,FR,France +202129,3,13626,9618,17634,21,15,27,FR,France +202128,3,8636,5430,11842,13,8,18,FR,France +202127,3,10693,6838,14548,16,10,22,FR,France +202126,3,7086,4109,10063,11,6,16,FR,France +202125,3,7942,5540,10344,12,8,16,FR,France +202124,3,4855,3011,6699,7,4,10,FR,France +202123,3,6710,4455,8965,10,7,13,FR,France +202122,3,7879,5495,10263,12,8,16,FR,France +202121,3,7827,5403,10251,12,8,16,FR,France +202120,3,10278,7540,13016,16,12,20,FR,France +202119,3,9539,6860,12218,14,10,18,FR,France +202118,3,12135,9165,15105,18,14,22,FR,France +202117,3,12058,8891,15225,18,13,23,FR,France +202116,3,16505,12735,20275,25,19,31,FR,France +202115,3,19306,15398,23214,29,23,35,FR,France +202114,3,21073,17099,25047,32,26,38,FR,France +202113,3,26413,22094,30732,40,33,47,FR,France +202112,3,30658,25919,35397,46,39,53,FR,France +202111,3,24988,20718,29258,38,32,44,FR,France +202110,3,19539,15951,23127,30,25,35,FR,France +202109,3,17572,13926,21218,27,21,33,FR,France +202108,3,20882,16907,24857,32,26,38,FR,France +202107,3,22393,18303,26483,34,28,40,FR,France +202106,3,23183,19134,27232,35,29,41,FR,France +202105,3,22426,18445,26407,34,28,40,FR,France +202104,3,25804,21491,30117,39,32,46,FR,France +202103,3,21810,17894,25726,33,27,39,FR,France +202102,3,17320,13906,20734,26,21,31,FR,France +202101,3,21799,17778,25820,33,27,39,FR,France +202053,3,21220,16498,25942,32,25,39,FR,France +202052,3,16428,12285,20571,25,19,31,FR,France +202051,3,21619,17370,25868,33,27,39,FR,France +202050,3,16845,13220,20470,26,20,32,FR,France +202049,3,12939,9923,15955,20,15,25,FR,France +202048,3,13804,10641,16967,21,16,26,FR,France +202047,3,19085,15285,22885,29,23,35,FR,France +202046,3,24801,20503,29099,38,31,45,FR,France +202045,3,42516,36857,48175,65,56,74,FR,France +202044,3,44567,38521,50613,68,59,77,FR,France +202043,3,43799,37581,50017,67,58,76,FR,France +202042,3,35183,29847,40519,53,45,61,FR,France +202041,3,27926,23251,32601,42,35,49,FR,France +202040,3,20443,16381,24505,31,25,37,FR,France +202039,3,19810,15900,23720,30,24,36,FR,France +202038,3,25559,21141,29977,39,32,46,FR,France +202037,3,18485,14649,22321,28,22,34,FR,France +202036,3,10390,7646,13134,16,12,20,FR,France +202035,3,9918,6842,12994,15,10,20,FR,France +202034,3,6084,3090,9078,9,4,14,FR,France +202033,3,6106,3411,8801,9,5,13,FR,France +202032,3,5918,3330,8506,9,5,13,FR,France +202031,3,4351,2269,6433,7,4,10,FR,France +202030,3,8179,5442,10916,12,8,16,FR,France +202029,3,8687,5860,11514,13,9,17,FR,France +202028,3,8325,5688,10962,13,9,17,FR,France +202027,3,4066,2406,5726,6,3,9,FR,France +202026,3,4039,2389,5689,6,3,9,FR,France +202025,3,2853,1488,4218,4,2,6,FR,France +202024,3,3058,1690,4426,5,3,7,FR,France +202023,3,4168,2468,5868,6,3,9,FR,France +202022,3,3580,1947,5213,5,3,7,FR,France +202021,3,6114,4026,8202,9,6,12,FR,France +202020,3,9315,6775,11855,14,10,18,FR,France +202019,3,11679,8722,14636,18,14,22,FR,France +202018,3,16398,12851,19945,25,20,30,FR,France +202017,3,18082,14454,21710,27,21,33,FR,France +202016,3,24165,19893,28437,37,31,43,FR,France +202015,3,41049,35377,46721,62,53,71,FR,France +202014,3,71666,64531,78801,109,98,120,FR,France +202013,3,107742,99187,116297,164,151,177,FR,France +202012,3,107283,98610,115956,163,150,176,FR,France +202011,3,112943,104468,121418,172,159,185,FR,France +202010,3,105145,96812,113478,160,147,173,FR,France +202009,3,110696,102066,119326,168,155,181,FR,France +202008,3,143753,133984,153522,218,203,233,FR,France +202007,3,183610,172812,194408,279,263,295,FR,France +202006,3,206669,195481,217857,314,297,331,FR,France +202005,3,187957,177445,198469,285,269,301,FR,France +202004,3,122331,113492,131170,186,173,199,FR,France +202003,3,78413,71330,85496,119,108,130,FR,France +202002,3,53614,47654,59574,81,72,90,FR,France +202001,3,36850,31608,42092,56,48,64,FR,France +201952,3,28135,23220,33050,43,36,50,FR,France +201951,3,29786,25042,34530,45,38,52,FR,France +201950,3,34223,29156,39290,52,44,60,FR,France +201949,3,25662,21414,29910,39,33,45,FR,France +201948,3,22367,18055,26679,34,27,41,FR,France +201947,3,18669,14759,22579,28,22,34,FR,France +201946,3,16030,12567,19493,24,19,29,FR,France +201945,3,10138,7160,13116,15,10,20,FR,France +201944,3,7822,5010,10634,12,8,16,FR,France +201943,3,9487,6448,12526,14,9,19,FR,France +201942,3,7747,5243,10251,12,8,16,FR,France +201941,3,7122,4720,9524,11,7,15,FR,France +201940,3,8505,5784,11226,13,9,17,FR,France +201939,3,7091,4462,9720,11,7,15,FR,France +201938,3,4897,2891,6903,7,4,10,FR,France +201937,3,3172,1367,4977,5,2,8,FR,France +201936,3,2295,728,3862,3,1,5,FR,France +201935,3,1010,2,2018,2,0,4,FR,France +201934,3,1672,279,3065,3,1,5,FR,France +201933,3,1593,68,3118,2,0,4,FR,France +201932,3,1592,71,3113,2,0,4,FR,France +201931,3,2337,695,3979,4,2,6,FR,France +201930,3,1944,415,3473,3,1,5,FR,France +201929,3,2096,420,3772,3,0,6,FR,France +201928,3,1195,125,2265,2,0,4,FR,France +201927,3,2466,848,4084,4,2,6,FR,France +201926,3,1798,402,3194,3,1,5,FR,France +201925,3,1544,389,2699,2,0,4,FR,France +201924,3,876,17,1735,1,0,2,FR,France +201923,3,2004,748,3260,3,1,5,FR,France +201922,3,2181,602,3760,3,1,5,FR,France +201921,3,2585,1102,4068,4,2,6,FR,France +201920,3,2891,1202,4580,4,1,7,FR,France +201919,3,3221,1509,4933,5,2,8,FR,France +201918,3,1385,278,2492,2,0,4,FR,France +201917,3,3166,1348,4984,5,2,8,FR,France +201916,3,3842,1973,5711,6,3,9,FR,France +201915,3,5932,3669,8195,9,6,12,FR,France +201914,3,12675,9167,16183,19,14,24,FR,France +201913,3,16513,12530,20496,25,19,31,FR,France +201912,3,22184,17786,26582,34,27,41,FR,France +201911,3,31553,26556,36550,48,40,56,FR,France +201910,3,49742,43268,56216,76,66,86,FR,France +201909,3,88354,79564,97144,134,121,147,FR,France +201908,3,172604,160024,185184,262,243,281,FR,France +201907,3,307338,291220,323456,467,443,491,FR,France +201906,3,394286,376782,411790,599,572,626,FR,France +201905,3,355785,339295,372275,540,515,565,FR,France +201904,3,241090,227261,254919,366,345,387,FR,France +201903,3,147063,135890,158236,223,206,240,FR,France +201902,3,75548,67632,83464,115,103,127,FR,France +201901,3,50295,43525,57065,76,66,86,FR,France +201852,3,37903,31375,44431,58,48,68,FR,France +201851,3,39259,32977,45541,60,50,70,FR,France +201850,3,27781,22638,32924,42,34,50,FR,France +201849,3,19738,15481,23995,30,24,36,FR,France +201848,3,19501,15275,23727,30,24,36,FR,France +201847,3,15949,12105,19793,24,18,30,FR,France +201846,3,11278,7957,14599,17,12,22,FR,France +201845,3,11065,7791,14339,17,12,22,FR,France +201844,3,6586,3875,9297,10,6,14,FR,France +201843,3,6550,3988,9112,10,6,14,FR,France +201842,3,7787,5129,10445,12,8,16,FR,France +201841,3,8048,5098,10998,12,8,16,FR,France +201840,3,7409,4717,10101,11,7,15,FR,France +201839,3,7174,4235,10113,11,7,15,FR,France +201838,3,7349,4399,10299,11,7,15,FR,France +201837,3,4915,2386,7444,7,3,11,FR,France +201836,3,3215,1349,5081,5,2,8,FR,France +201835,3,1506,239,2773,2,0,4,FR,France +201834,3,1368,116,2620,2,0,4,FR,France +201833,3,1962,5,3919,3,0,6,FR,France +201832,3,1839,183,3495,3,0,6,FR,France +201831,3,2048,242,3854,3,0,6,FR,France +201830,3,1951,202,3700,3,0,6,FR,France +201829,3,1951,252,3650,3,0,6,FR,France +201828,3,1654,52,3256,3,1,5,FR,France +201827,3,3266,1145,5387,5,2,8,FR,France +201826,3,3758,1493,6023,6,3,9,FR,France +201825,3,4580,2220,6940,7,3,11,FR,France +201824,3,3223,1351,5095,5,2,8,FR,France +201823,3,1207,136,2278,2,0,4,FR,France +201822,3,3202,1330,5074,5,2,8,FR,France +201821,3,2537,763,4311,4,1,7,FR,France +201820,3,2694,967,4421,4,1,7,FR,France +201819,3,1025,0,2098,2,0,4,FR,France +201818,3,3541,1416,5666,5,2,8,FR,France +201817,3,2573,1003,4143,4,2,6,FR,France +201816,3,4818,2724,6912,7,4,10,FR,France +201815,3,16311,12168,20454,25,19,31,FR,France +201814,3,22666,18092,27240,35,28,42,FR,France +201813,3,32680,25536,39824,50,39,61,FR,France +201812,3,52040,44590,59490,79,68,90,FR,France +201811,3,65159,56506,73812,99,86,112,FR,France +201810,3,93512,83989,103035,142,128,156,FR,France +201809,3,108545,98645,118445,165,150,180,FR,France +201808,3,131870,120950,142790,201,184,218,FR,France +201807,3,141138,130177,152099,215,198,232,FR,France +201806,3,138810,128164,149456,211,195,227,FR,France +201805,3,157839,146646,169032,240,223,257,FR,France +201804,3,175483,163835,187131,267,249,285,FR,France +201803,3,178329,166640,190018,271,253,289,FR,France +201802,3,198079,185663,210495,302,283,321,FR,France +201801,3,235493,220941,250045,358,336,380,FR,France +201752,3,299114,279359,318869,459,429,489,FR,France +201751,3,229448,214366,244530,352,329,375,FR,France +201750,3,129535,118787,140283,199,183,215,FR,France +201749,3,63789,56120,71458,98,86,110,FR,France +201748,3,37568,31541,43595,58,49,67,FR,France +201747,3,24972,19923,30021,38,30,46,FR,France +201746,3,13398,9948,16848,21,16,26,FR,France +201745,3,14035,8091,19979,22,13,31,FR,France +201744,3,8544,5318,11770,13,8,18,FR,France +201743,3,7300,4402,10198,11,7,15,FR,France +201742,3,9966,6503,13429,15,10,20,FR,France +201741,3,12434,8718,16150,19,13,25,FR,France +201740,3,12725,8690,16760,20,14,26,FR,France +201739,3,14949,10534,19364,23,16,30,FR,France +201738,3,11463,7438,15488,18,12,24,FR,France +201737,3,9716,6364,13068,15,10,20,FR,France +201736,3,2815,917,4713,4,1,7,FR,France +201735,3,2794,850,4738,4,1,7,FR,France +201734,3,2497,879,4115,4,2,6,FR,France +201733,3,2406,766,4046,4,1,7,FR,France +201732,3,2667,879,4455,4,1,7,FR,France +201731,3,3256,1158,5354,5,2,8,FR,France +201730,3,3759,1299,6219,6,2,10,FR,France +201729,3,5014,1989,8039,8,3,13,FR,France +201728,3,5271,2576,7966,8,4,12,FR,France +201727,3,3924,1432,6416,6,2,10,FR,France +201726,3,3171,1166,5176,5,2,8,FR,France +201725,3,837,0,1721,1,0,2,FR,France +201724,3,1566,248,2884,2,0,4,FR,France +201723,3,1664,203,3125,3,1,5,FR,France +201722,3,1305,92,2518,2,0,4,FR,France +201721,3,971,0,2046,1,0,3,FR,France +201720,3,2686,793,4579,4,1,7,FR,France +201719,3,3461,1490,5432,5,2,8,FR,France +201718,3,2102,515,3689,3,1,5,FR,France +201717,3,2071,428,3714,3,0,6,FR,France +201716,3,1380,222,2538,2,0,4,FR,France +201715,3,479,0,1242,1,0,2,FR,France +201714,3,1110,0,2549,2,0,4,FR,France +201713,3,7594,3808,11380,12,6,18,FR,France +201712,3,8780,4834,12726,13,7,19,FR,France +201711,3,7814,4329,11299,12,7,17,FR,France +201710,3,11802,7964,15640,18,12,24,FR,France +201709,3,13111,9099,17123,20,14,26,FR,France +201708,3,29545,23136,35954,45,35,55,FR,France +201707,3,59590,49764,69416,91,76,106,FR,France +201706,3,93628,82560,104696,144,127,161,FR,France +201705,3,193677,179255,208099,297,275,319,FR,France +201704,3,256428,240618,272238,394,370,418,FR,France +201703,3,267276,251345,283207,410,386,434,FR,France +201702,3,260588,245070,276106,400,376,424,FR,France +201701,3,255535,239743,271327,392,368,416,FR,France +201652,3,224489,207799,241179,345,319,371,FR,France +201651,3,187704,172655,202753,288,265,311,FR,France +201650,3,126570,115081,138059,194,176,212,FR,France +201649,3,76390,67374,85406,117,103,131,FR,France +201648,3,40502,33949,47055,62,52,72,FR,France +201647,3,22270,17612,26928,34,27,41,FR,France +201646,3,20816,16125,25507,32,25,39,FR,France +201645,3,15957,11448,20466,24,17,31,FR,France +201644,3,15145,10357,19933,23,16,30,FR,France +201643,3,9378,5830,12926,14,9,19,FR,France +201642,3,12920,9044,16796,20,14,26,FR,France +201641,3,13909,9709,18109,21,15,27,FR,France +201640,3,13379,8969,17789,21,14,28,FR,France +201639,3,10598,6814,14382,16,10,22,FR,France +201638,3,5969,3073,8865,9,5,13,FR,France +201637,3,4065,1538,6592,6,2,10,FR,France +201636,3,2372,473,4271,4,1,7,FR,France +201635,3,3420,1350,5490,5,2,8,FR,France +201634,3,2233,0,4643,3,0,7,FR,France +201633,3,1567,0,3938,2,0,6,FR,France +201632,3,2100,93,4107,3,0,6,FR,France +201631,3,3691,0,9120,6,0,14,FR,France +201630,3,3209,644,5774,5,1,9,FR,France +201629,3,1469,0,3073,2,0,4,FR,France +201628,3,2725,357,5093,4,0,8,FR,France +201627,3,5905,2343,9467,9,4,14,FR,France +201626,3,4186,1636,6736,6,2,10,FR,France +201625,3,4611,1560,7662,7,2,12,FR,France +201624,3,4977,2404,7550,8,4,12,FR,France +201623,3,4893,2416,7370,8,4,12,FR,France +201622,3,5667,3015,8319,9,5,13,FR,France +201621,3,5603,2475,8731,9,4,14,FR,France +201620,3,3908,1679,6137,6,3,9,FR,France +201619,3,4738,2308,7168,7,3,11,FR,France +201618,3,8204,4394,12014,13,7,19,FR,France +201617,3,13385,8822,17948,21,14,28,FR,France +201616,3,25670,19632,31708,39,30,48,FR,France +201615,3,48441,39824,57058,74,61,87,FR,France +201614,3,92603,81261,103945,142,125,159,FR,France +201613,3,170654,156387,184921,262,240,284,FR,France +201612,3,272174,254338,290010,418,391,445,FR,France +201611,3,304543,286453,322633,467,439,495,FR,France +201610,3,261822,245799,277845,402,377,427,FR,France +201609,3,229943,214533,245353,353,329,377,FR,France +201608,3,195067,180874,209260,299,277,321,FR,France +201607,3,207359,193223,221495,318,296,340,FR,France +201606,3,196143,182672,209614,301,280,322,FR,France +201605,3,178963,166296,191630,275,256,294,FR,France +201604,3,148473,136591,160355,228,210,246,FR,France +201603,3,75277,66630,83924,116,103,129,FR,France +201602,3,44617,37821,51413,68,58,78,FR,France +201601,3,42263,35556,48970,65,55,75,FR,France +201553,3,24835,19106,30564,38,29,47,FR,France +201552,3,19495,14319,24671,30,22,38,FR,France +201551,3,29080,23014,35146,45,36,54,FR,France +201550,3,25043,19812,30274,39,31,47,FR,France +201549,3,21479,16686,26272,33,26,40,FR,France +201548,3,16428,12273,20583,25,19,31,FR,France +201547,3,14959,10856,19062,23,17,29,FR,France +201546,3,12599,8237,16961,20,13,27,FR,France +201545,3,13577,9192,17962,21,14,28,FR,France +201544,3,14596,10025,19167,23,16,30,FR,France +201543,3,16749,11745,21753,26,18,34,FR,France +201542,3,18675,13613,23737,29,21,37,FR,France +201541,3,13585,9830,17340,21,15,27,FR,France +201540,3,13100,9349,16851,20,14,26,FR,France +201539,3,8595,5671,11519,13,8,18,FR,France +201538,3,8402,4929,11875,13,8,18,FR,France +201537,3,8817,4089,13545,14,7,21,FR,France +201536,3,1922,440,3404,3,1,5,FR,France +201535,3,229,0,644,0,0,1,FR,France +201534,3,760,0,1618,1,0,2,FR,France +201533,3,1537,208,2866,2,0,4,FR,France +201532,3,1594,66,3122,2,0,4,FR,France +201531,3,2845,475,5215,4,0,8,FR,France +201530,3,2447,353,4541,4,1,7,FR,France +201529,3,2389,332,4446,4,1,7,FR,France +201528,3,2089,105,4073,3,0,6,FR,France +201527,3,2257,393,4121,3,0,6,FR,France +201526,3,2536,774,4298,4,1,7,FR,France +201525,3,2607,680,4534,4,1,7,FR,France +201524,3,2849,1000,4698,4,1,7,FR,France +201523,3,2702,857,4547,4,1,7,FR,France +201522,3,4262,1989,6535,7,3,11,FR,France +201521,3,5547,2875,8219,9,5,13,FR,France +201520,3,4594,2040,7148,7,3,11,FR,France +201519,3,6307,3256,9358,10,5,15,FR,France +201518,3,3664,1544,5784,6,3,9,FR,France +201517,3,6382,3523,9241,10,6,14,FR,France +201516,3,12098,7913,16283,19,13,25,FR,France +201515,3,19458,14192,24724,30,22,38,FR,France +201514,3,30940,24617,37263,48,38,58,FR,France +201513,3,49563,41986,57140,77,65,89,FR,France +201512,3,70024,61079,78969,109,95,123,FR,France +201511,3,99295,88838,109752,154,138,170,FR,France +201510,3,143931,131682,156180,223,204,242,FR,France +201509,3,238947,222902,254992,370,345,395,FR,France +201508,3,409972,388670,431274,635,602,668,FR,France +201507,3,517750,494301,541199,802,766,838,FR,France +201506,3,533317,510627,556007,827,792,862,FR,France +201505,3,457911,436964,478858,710,678,742,FR,France +201504,3,292161,275491,308831,453,427,479,FR,France +201503,3,153931,141290,166572,239,219,259,FR,France +201502,3,104096,93358,114834,161,144,178,FR,France +201501,3,70962,60505,81419,110,94,126,FR,France +201452,3,63168,52705,73631,98,82,114,FR,France +201451,3,45346,38002,52690,71,60,82,FR,France +201450,3,42182,35049,49315,66,55,77,FR,France +201449,3,33537,27281,39793,52,42,62,FR,France +201448,3,28156,21896,34416,44,34,54,FR,France +201447,3,18158,13186,23130,28,20,36,FR,France +201446,3,14764,10174,19354,23,16,30,FR,France +201445,3,16172,11449,20895,25,18,32,FR,France +201444,3,15500,10464,20536,24,16,32,FR,France +201443,3,16011,10653,21369,25,17,33,FR,France +201442,3,21651,15828,27474,34,25,43,FR,France +201441,3,22486,16295,28677,35,25,45,FR,France +201440,3,16526,11583,21469,26,18,34,FR,France +201439,3,8583,5054,12112,13,8,18,FR,France +201438,3,10567,6496,14638,16,10,22,FR,France +201437,3,7714,3780,11648,12,6,18,FR,France +201436,3,5018,1949,8087,8,3,13,FR,France +201435,3,2268,355,4181,4,1,7,FR,France +201434,3,2367,250,4484,4,1,7,FR,France +201433,3,2358,0,4875,4,0,8,FR,France +201432,3,3229,447,6011,5,1,9,FR,France +201431,3,4143,349,7937,6,0,12,FR,France +201430,3,4631,902,8360,7,1,13,FR,France +201429,3,5122,1258,8986,8,2,14,FR,France +201428,3,4145,1200,7090,6,1,11,FR,France +201427,3,4823,1997,7649,8,4,12,FR,France +201426,3,3858,1235,6481,6,2,10,FR,France +201425,3,4564,1276,7852,7,2,12,FR,France +201424,3,2007,249,3765,3,0,6,FR,France +201423,3,5164,1853,8475,8,3,13,FR,France +201422,3,6907,1856,11958,11,3,19,FR,France +201421,3,4523,1039,8007,7,2,12,FR,France +201420,3,5881,2432,9330,9,4,14,FR,France +201419,3,3588,1277,5899,6,2,10,FR,France +201418,3,4708,1654,7762,7,2,12,FR,France +201417,3,2989,625,5353,5,1,9,FR,France +201416,3,7057,3381,10733,11,5,17,FR,France +201415,3,10800,6762,14838,17,11,23,FR,France +201414,3,19217,13490,24944,30,21,39,FR,France +201413,3,21577,15435,27719,34,24,44,FR,France +201412,3,23524,17260,29788,37,27,47,FR,France +201411,3,44513,35939,53087,69,56,82,FR,France +201410,3,86105,73497,98713,134,114,154,FR,France +201409,3,147035,131889,162181,229,205,253,FR,France +201408,3,188419,171950,204888,293,267,319,FR,France +201407,3,208726,191283,226169,325,298,352,FR,France +201406,3,160403,145280,175526,250,226,274,FR,France +201405,3,120261,107176,133346,187,167,207,FR,France +201404,3,85280,74414,96146,133,116,150,FR,France +201403,3,64159,54089,74229,100,84,116,FR,France +201402,3,46850,38202,55498,73,60,86,FR,France +201401,3,35624,27451,43797,55,42,68,FR,France +201352,3,30142,22721,37563,47,35,59,FR,France +201351,3,29787,23215,36359,47,37,57,FR,France +201350,3,24055,18214,29896,38,29,47,FR,France +201349,3,18071,13058,23084,28,20,36,FR,France +201348,3,17606,12195,23017,28,20,36,FR,France +201347,3,22636,16343,28929,35,25,45,FR,France +201346,3,13340,8367,18313,21,13,29,FR,France +201345,3,10596,6057,15135,17,10,24,FR,France +201344,3,10193,5622,14764,16,9,23,FR,France +201343,3,15780,9497,22063,25,15,35,FR,France +201342,3,14830,9545,20115,23,15,31,FR,France +201341,3,12391,7265,17517,19,11,27,FR,France +201340,3,9794,5140,14448,15,8,22,FR,France +201339,3,5371,1704,9038,8,2,14,FR,France +201338,3,9324,4198,14450,15,7,23,FR,France +201337,3,5027,1752,8302,8,3,13,FR,France +201336,3,4639,1425,7853,7,2,12,FR,France +201335,3,1291,0,3112,2,0,5,FR,France +201334,3,1889,0,4912,3,0,8,FR,France +201333,3,4740,348,9132,7,0,14,FR,France +201332,3,4709,549,8869,7,0,14,FR,France +201331,3,2270,0,5811,4,0,10,FR,France +201330,3,2169,0,4630,3,0,7,FR,France +201329,3,1696,0,3558,3,0,6,FR,France +201328,3,983,0,2168,2,0,4,FR,France +201327,3,4278,1327,7229,7,2,12,FR,France +201326,3,3488,839,6137,5,1,9,FR,France +201325,3,2735,0,5826,4,0,9,FR,France +201324,3,7245,2997,11493,11,4,18,FR,France +201323,3,16094,8918,23270,25,14,36,FR,France +201322,3,7245,2923,11567,11,4,18,FR,France +201321,3,5974,2401,9547,9,3,15,FR,France +201320,3,3831,1245,6417,6,2,10,FR,France +201319,3,1166,0,2680,2,0,4,FR,France +201318,3,3415,757,6073,5,1,9,FR,France +201317,3,7941,2950,12932,12,4,20,FR,France +201316,3,9520,4758,14282,15,8,22,FR,France +201315,3,19357,13311,25403,30,21,39,FR,France +201314,3,36855,27737,45973,58,44,72,FR,France +201313,3,43236,34048,52424,68,54,82,FR,France +201312,3,60822,50414,71230,95,79,111,FR,France +201311,3,84308,72456,96160,132,113,151,FR,France +201310,3,165558,148471,182645,259,232,286,FR,France +201309,3,259984,239067,280901,407,374,440,FR,France +201308,3,351626,327537,375715,550,512,588,FR,France +201307,3,470076,443682,496470,736,695,777,FR,France +201306,3,471647,445112,498182,738,696,780,FR,France +201305,3,492026,464729,519323,770,727,813,FR,France +201304,3,391525,367182,415868,613,575,651,FR,France +201303,3,224661,207134,242188,352,325,379,FR,France +201302,3,184159,168343,199975,288,263,313,FR,France +201301,3,163491,147340,179642,256,231,281,FR,France +201252,3,159290,141978,176602,251,224,278,FR,France +201251,3,113901,99835,127967,179,157,201,FR,France +201250,3,79918,68086,91750,126,107,145,FR,France +201249,3,47537,38711,56363,75,61,89,FR,France +201248,3,43006,32863,53149,68,52,84,FR,France +201247,3,39223,29140,49306,62,46,78,FR,France +201246,3,26436,18286,34586,42,29,55,FR,France +201245,3,18893,12799,24987,30,20,40,FR,France +201244,3,13106,8784,17428,21,14,28,FR,France +201243,3,17791,11284,24298,28,18,38,FR,France +201242,3,13096,8369,17823,21,14,28,FR,France +201241,3,18675,12010,25340,29,19,39,FR,France +201240,3,17873,11545,24201,28,18,38,FR,France +201239,3,20257,14180,26334,32,22,42,FR,France +201238,3,14715,9178,20252,23,14,32,FR,France +201237,3,7775,3509,12041,12,5,19,FR,France +201236,3,6384,2420,10348,10,4,16,FR,France +201235,3,8277,2206,14348,13,3,23,FR,France +201234,3,3858,0,8641,6,0,14,FR,France +201233,3,6492,840,12144,10,1,19,FR,France +201232,3,6381,0,14034,10,0,22,FR,France +201231,3,2696,0,5763,4,0,9,FR,France +201230,3,1834,0,4194,3,0,7,FR,France +201229,3,6329,1424,11234,10,2,18,FR,France +201228,3,4628,1091,8165,7,1,13,FR,France +201227,3,4162,1487,6837,7,3,11,FR,France +201226,3,4819,1097,8541,8,2,14,FR,France +201225,3,2669,530,4808,4,1,7,FR,France +201224,3,5977,2335,9619,9,3,15,FR,France +201223,3,2361,576,4146,4,1,7,FR,France +201222,3,5772,2435,9109,9,4,14,FR,France +201221,3,3722,821,6623,6,1,11,FR,France +201220,3,2731,897,4565,4,1,7,FR,France +201219,3,3267,1317,5217,5,2,8,FR,France +201218,3,2328,569,4087,4,1,7,FR,France +201217,3,6982,2701,11263,11,4,18,FR,France +201216,3,11455,6874,16036,18,11,25,FR,France +201215,3,20437,13435,27439,32,21,43,FR,France +201214,3,36740,27799,45681,58,44,72,FR,France +201213,3,62917,50171,75663,99,79,119,FR,France +201212,3,84738,71566,97910,133,112,154,FR,France +201211,3,128945,113778,144112,203,179,227,FR,France +201210,3,174704,157337,192071,275,248,302,FR,France +201209,3,225648,206810,244486,355,325,385,FR,France +201208,3,287293,264901,309685,452,417,487,FR,France +201207,3,263557,242711,284403,415,382,448,FR,France +201206,3,175123,158942,191304,276,251,301,FR,France +201205,3,106110,92524,119696,167,146,188,FR,France +201204,3,67778,56784,78772,107,90,124,FR,France +201203,3,49440,40981,57899,78,65,91,FR,France +201202,3,40507,32652,48362,64,52,76,FR,France +201201,3,45104,35640,54568,71,56,86,FR,France +201152,3,36532,28367,44697,58,45,71,FR,France +201151,3,25835,19002,32668,41,30,52,FR,France +201150,3,24155,18145,30165,38,28,48,FR,France +201149,3,27209,20376,34042,43,32,54,FR,France +201148,3,32358,24451,40265,51,38,64,FR,France +201147,3,17627,11780,23474,28,19,37,FR,France +201146,3,22368,15730,29006,35,24,46,FR,France +201145,3,18104,11995,24213,29,19,39,FR,France +201144,3,14050,8471,19629,22,13,31,FR,France +201143,3,21522,14251,28793,34,22,46,FR,France +201142,3,16932,11363,22501,27,18,36,FR,France +201141,3,7486,4024,10948,12,7,17,FR,France +201140,3,14053,8659,19447,22,13,31,FR,France +201139,3,17021,11062,22980,27,18,36,FR,France +201138,3,14007,8465,19549,22,13,31,FR,France +201137,3,8365,4174,12556,13,6,20,FR,France +201136,3,4606,1714,7498,7,2,12,FR,France +201135,3,4178,1634,6722,7,3,11,FR,France +201134,3,3312,683,5941,5,1,9,FR,France +201133,3,2421,0,5277,4,0,9,FR,France +201132,3,2590,119,5061,4,0,8,FR,France +201131,3,2409,320,4498,4,1,7,FR,France +201130,3,3972,1395,6549,6,2,10,FR,France +201129,3,2265,717,3813,4,2,6,FR,France +201128,3,1977,255,3699,3,0,6,FR,France +201127,3,3524,551,6497,6,1,11,FR,France +201126,3,1155,0,2685,2,0,4,FR,France +201125,3,3791,1006,6576,6,2,10,FR,France +201124,3,3507,1149,5865,6,2,10,FR,France +201123,3,3406,1170,5642,5,1,9,FR,France +201122,3,3122,1125,5119,5,2,8,FR,France +201121,3,2694,769,4619,4,1,7,FR,France +201120,3,3951,1443,6459,6,2,10,FR,France +201119,3,5416,1995,8837,9,4,14,FR,France +201118,3,5306,1815,8797,8,2,14,FR,France +201117,3,2659,310,5008,4,0,8,FR,France +201116,3,5061,1988,8134,8,3,13,FR,France +201115,3,6557,3038,10076,10,4,16,FR,France +201114,3,7352,3784,10920,12,6,18,FR,France +201113,3,8749,5213,12285,14,8,20,FR,France +201112,3,12491,7845,17137,20,13,27,FR,France +201111,3,14619,10009,19229,23,16,30,FR,France +201110,3,33628,26073,41183,53,41,65,FR,France +201109,3,54522,46057,62987,86,73,99,FR,France +201108,3,78392,67885,88899,124,107,141,FR,France +201107,3,149219,134798,163640,236,213,259,FR,France +201106,3,216579,200236,232922,343,317,369,FR,France +201105,3,278192,260235,296149,440,412,468,FR,France +201104,3,278218,259626,296810,440,411,469,FR,France +201103,3,275882,257313,294451,437,408,466,FR,France +201102,3,308949,288320,329578,489,456,522,FR,France +201101,3,309933,288190,331676,490,456,524,FR,France +201052,3,228105,208046,248164,363,331,395,FR,France +201051,3,158957,142576,175338,253,227,279,FR,France +201050,3,104874,91639,118109,167,146,188,FR,France +201049,3,54971,46418,63524,88,74,102,FR,France +201048,3,36982,29304,44660,59,47,71,FR,France +201047,3,26598,20123,33073,42,32,52,FR,France +201046,3,15465,10915,20015,25,18,32,FR,France +201045,3,9040,5772,12308,14,9,19,FR,France +201044,3,15833,10255,21411,25,16,34,FR,France +201043,3,16002,11001,21003,25,17,33,FR,France +201042,3,18709,13376,24042,30,22,38,FR,France +201041,3,17352,12182,22522,28,20,36,FR,France +201040,3,18331,12824,23838,29,20,38,FR,France +201039,3,11978,7913,16043,19,13,25,FR,France +201038,3,8936,4906,12966,14,8,20,FR,France +201037,3,5318,2551,8085,8,4,12,FR,France +201036,3,4954,2058,7850,8,3,13,FR,France +201035,3,4279,1604,6954,7,3,11,FR,France +201034,3,4926,566,9286,8,1,15,FR,France +201033,3,2950,0,6507,5,0,11,FR,France +201032,3,671,0,1522,1,0,2,FR,France +201031,3,2732,509,4955,4,0,8,FR,France +201030,3,3989,1068,6910,6,1,11,FR,France +201029,3,4123,1531,6715,7,3,11,FR,France +201028,3,1209,0,2640,2,0,4,FR,France +201027,3,2494,433,4555,4,1,7,FR,France +201026,3,5808,2454,9162,9,4,14,FR,France +201025,3,8019,4395,11643,13,7,19,FR,France +201024,3,3584,1657,5511,6,3,9,FR,France +201023,3,4016,1905,6127,6,3,9,FR,France +201022,3,6251,3664,8838,10,6,14,FR,France +201021,3,3860,1636,6084,6,2,10,FR,France +201020,3,2470,442,4498,4,1,7,FR,France +201019,3,2273,636,3910,4,1,7,FR,France +201018,3,4095,1639,6551,7,3,11,FR,France +201017,3,2216,817,3615,4,2,6,FR,France +201016,3,3471,1085,5857,6,2,10,FR,France +201015,3,3990,1376,6604,6,2,10,FR,France +201014,3,6188,3191,9185,10,5,15,FR,France +201013,3,6705,3665,9745,11,6,16,FR,France +201012,3,6727,3582,9872,11,6,16,FR,France +201011,3,8692,5002,12382,14,8,20,FR,France +201010,3,8844,5465,12223,14,9,19,FR,France +201009,3,12081,7334,16828,19,11,27,FR,France +201008,3,15433,10422,20444,25,17,33,FR,France +201007,3,19690,11728,27652,31,18,44,FR,France +201006,3,27858,18883,36833,44,30,58,FR,France +201005,3,22197,17019,27375,35,27,43,FR,France +201004,3,33817,26151,41483,54,42,66,FR,France +201003,3,36236,27936,44536,58,45,71,FR,France +201002,3,40691,32891,48491,65,53,77,FR,France +201001,3,66574,56164,76984,106,89,123,FR,France +200953,3,96141,81818,110464,153,130,176,FR,France +200952,3,172872,153238,192506,275,244,306,FR,France +200951,3,247809,229140,266478,395,365,425,FR,France +200950,3,379424,355974,402874,604,567,641,FR,France +200949,3,473718,447756,499680,754,713,795,FR,France +200948,3,467551,441506,493596,744,703,785,FR,France +200947,3,378924,355752,402096,603,566,640,FR,France +200946,3,223847,203918,243776,356,324,388,FR,France +200945,3,147046,131155,162937,234,209,259,FR,France +200944,3,170231,151298,189164,271,241,301,FR,France +200943,3,131408,114883,147933,209,183,235,FR,France +200942,3,99387,84491,114283,158,134,182,FR,France +200941,3,100802,86381,115223,160,137,183,FR,France +200940,3,111587,97628,125546,178,156,200,FR,France +200939,3,121267,106153,136381,193,169,217,FR,France +200938,3,137924,121242,154606,220,193,247,FR,France +200937,3,101332,87522,115142,161,139,183,FR,France +200936,3,46024,36435,55613,73,58,88,FR,France +200935,3,31660,23669,39651,50,37,63,FR,France +200934,3,24985,17699,32271,40,28,52,FR,France +200933,3,24435,16308,32562,39,26,52,FR,France +200932,3,23151,14624,31678,37,23,51,FR,France +200931,3,30255,9818,50692,48,15,81,FR,France +200930,3,13868,7861,19875,22,12,32,FR,France +200929,3,10704,5314,16094,17,8,26,FR,France +200928,3,15516,273,30759,25,1,49,FR,France +200927,3,10354,2760,17948,16,4,28,FR,France +200926,3,9932,5257,14607,16,9,23,FR,France +200925,3,7619,4026,11212,12,6,18,FR,France +200924,3,7794,3409,12179,12,5,19,FR,France +200923,3,4342,1975,6709,7,3,11,FR,France +200922,3,6390,3020,9760,10,5,15,FR,France +200921,3,7118,3704,10532,11,6,16,FR,France +200920,3,9482,5804,13160,15,9,21,FR,France +200919,3,7538,4299,10777,12,7,17,FR,France +200918,3,9627,5121,14133,15,8,22,FR,France +200917,3,9537,5267,13807,15,8,22,FR,France +200916,3,14666,9218,20114,23,14,32,FR,France +200915,3,17533,12137,22929,28,19,37,FR,France +200914,3,26324,19150,33498,42,31,53,FR,France +200913,3,27737,20781,34693,44,33,55,FR,France +200912,3,38811,29935,47687,62,48,76,FR,France +200911,3,40410,30705,50115,64,49,79,FR,France +200910,3,53395,41943,64847,85,67,103,FR,France +200909,3,70558,57400,83716,112,91,133,FR,France +200908,3,109100,94840,123360,174,151,197,FR,France +200907,3,141531,125101,157961,225,199,251,FR,France +200906,3,276274,252759,299789,440,403,477,FR,France +200905,3,401868,375032,428704,640,597,683,FR,France +200904,3,545313,512892,577734,868,816,920,FR,France +200903,3,520957,487271,554643,829,775,883,FR,France +200902,3,287145,262869,311421,457,418,496,FR,France +200901,3,200349,180878,219820,319,288,350,FR,France +200852,3,198418,115769,281067,323,188,458,FR,France +200851,3,112588,96656,128520,184,158,210,FR,France +200850,3,51746,43319,60173,84,70,98,FR,France +200849,3,34950,27527,42373,57,45,69,FR,France +200848,3,25604,18563,32645,42,31,53,FR,France +200847,3,18706,10838,26574,30,17,43,FR,France +200846,3,10899,5461,16337,18,9,27,FR,France +200845,3,12472,7082,17862,20,11,29,FR,France +200844,3,9772,5661,13883,16,9,23,FR,France +200843,3,9345,5541,13149,15,9,21,FR,France +200842,3,9087,5572,12602,15,9,21,FR,France +200841,3,9925,5637,14213,16,9,23,FR,France +200840,3,7869,4535,11203,13,8,18,FR,France +200839,3,2195,506,3884,4,1,7,FR,France +200838,3,3679,1481,5877,6,2,10,FR,France +200837,3,2429,561,4297,4,1,7,FR,France +200836,3,2512,492,4532,4,1,7,FR,France +200835,3,1901,0,4869,3,0,8,FR,France +200834,3,2552,0,6509,4,0,10,FR,France +200833,3,7229,0,16106,12,0,26,FR,France +200832,3,4378,107,8649,7,0,14,FR,France +200831,3,3972,621,7323,6,1,11,FR,France +200830,3,3821,643,6999,6,1,11,FR,France +200829,3,2055,0,4225,3,0,7,FR,France +200828,3,3257,208,6306,5,0,10,FR,France +200827,3,2862,474,5250,5,1,9,FR,France +200826,3,897,0,2062,1,0,3,FR,France +200825,3,2006,360,3652,3,0,6,FR,France +200824,3,3217,823,5611,5,1,9,FR,France +200823,3,2906,1006,4806,5,2,8,FR,France +200822,3,1792,451,3133,3,1,5,FR,France +200821,3,3642,925,6359,6,2,10,FR,France +200820,3,6452,2790,10114,11,5,17,FR,France +200819,3,5173,1485,8861,8,2,14,FR,France +200818,3,5315,1770,8860,9,3,15,FR,France +200817,3,10150,5835,14465,17,10,24,FR,France +200816,3,11876,7054,16698,19,11,27,FR,France +200815,3,22871,16253,29489,37,26,48,FR,France +200814,3,45610,27907,63313,74,45,103,FR,France +200813,3,38600,29300,47900,63,48,78,FR,France +200812,3,53169,43299,63039,87,71,103,FR,France +200811,3,62014,50430,73598,101,82,120,FR,France +200810,3,90342,75729,104955,147,123,171,FR,France +200809,3,119696,104205,135187,195,170,220,FR,France +200808,3,198688,180749,216627,324,295,353,FR,France +200807,3,286498,264535,308461,467,431,503,FR,France +200806,3,377097,350714,403480,615,572,658,FR,France +200805,3,344050,320436,367664,561,523,599,FR,France +200804,3,290196,268193,312199,473,437,509,FR,France +200803,3,260268,233385,287151,424,380,468,FR,France +200802,3,160872,145311,176433,262,237,287,FR,France +200801,3,102562,88547,116577,167,144,190,FR,France +200752,3,86742,72295,101189,141,117,165,FR,France +200751,3,61954,51764,72144,101,84,118,FR,France +200750,3,45366,36923,53809,74,60,88,FR,France +200749,3,38351,26177,50525,63,43,83,FR,France +200748,3,48174,35418,60930,79,58,100,FR,France +200747,3,30716,23351,38081,50,38,62,FR,France +200746,3,18204,12267,24141,30,20,40,FR,France +200745,3,15521,10195,20847,25,16,34,FR,France +200744,3,13904,9072,18736,23,15,31,FR,France +200743,3,16212,10778,21646,26,17,35,FR,France +200742,3,20197,13955,26439,33,23,43,FR,France +200741,3,12987,8464,17510,21,14,28,FR,France +200740,3,13517,2983,24051,22,5,39,FR,France +200739,3,15985,7519,24451,26,12,40,FR,France +200738,3,4769,837,8701,8,2,14,FR,France +200737,3,1449,300,2598,2,0,4,FR,France +200736,3,1100,0,2424,2,0,4,FR,France +200735,3,1177,0,2872,2,0,5,FR,France +200734,3,3353,654,6052,5,1,9,FR,France +200733,3,4189,360,8018,7,1,13,FR,France +200732,3,132,0,688,0,0,1,FR,France +200731,3,1965,0,4461,3,0,7,FR,France +200730,3,2158,0,4583,4,0,8,FR,France +200729,3,3406,240,6572,6,1,11,FR,France +200728,3,1459,0,3467,2,0,5,FR,France +200727,3,1453,0,3382,2,0,5,FR,France +200726,3,157,0,513,0,0,1,FR,France +200725,3,3699,0,7778,6,0,13,FR,France +200724,3,2854,481,5227,5,1,9,FR,France +200723,3,5343,2164,8522,9,4,14,FR,France +200722,3,7689,4224,11154,13,7,19,FR,France +200721,3,4319,1659,6979,7,3,11,FR,France +200720,3,6400,2685,10115,10,4,16,FR,France +200719,3,3012,703,5321,5,1,9,FR,France +200718,3,2232,348,4116,4,1,7,FR,France +200717,3,4705,1736,7674,8,3,13,FR,France +200716,3,3817,1438,6196,6,2,10,FR,France +200715,3,4757,717,8797,8,1,15,FR,France +200714,3,11377,6957,15797,19,12,26,FR,France +200713,3,21271,13093,29449,35,22,48,FR,France +200712,3,25433,17717,33149,41,28,54,FR,France +200711,3,30764,23356,38172,50,38,62,FR,France +200710,3,49469,40368,58570,81,66,96,FR,France +200709,3,138901,117018,160784,226,190,262,FR,France +200708,3,316747,284988,348506,516,464,568,FR,France +200707,3,417698,386505,448891,681,630,732,FR,France +200706,3,500016,466668,533364,815,761,869,FR,France +200705,3,375457,346822,404092,612,565,659,FR,France +200704,3,209878,189332,230424,342,309,375,FR,France +200703,3,126161,110596,141726,206,181,231,FR,France +200702,3,82849,69493,96205,135,113,157,FR,France +200701,3,70842,58613,83071,115,95,135,FR,France +200652,3,78190,64191,92189,128,105,151,FR,France +200651,3,62734,50210,75258,103,82,124,FR,France +200650,3,35668,27280,44056,58,44,72,FR,France +200649,3,18773,13164,24382,31,22,40,FR,France +200648,3,16439,11225,21653,27,18,36,FR,France +200647,3,16104,9343,22865,26,15,37,FR,France +200646,3,14032,5590,22474,23,9,37,FR,France +200645,3,12285,7745,16825,20,13,27,FR,France +200644,3,8031,4172,11890,13,7,19,FR,France +200643,3,21157,12483,29831,35,21,49,FR,France +200642,3,16673,8249,25097,27,13,41,FR,France +200641,3,13920,9081,18759,23,15,31,FR,France +200640,3,11950,7132,16768,20,12,28,FR,France +200639,3,8945,4333,13557,15,7,23,FR,France +200638,3,2532,138,4926,4,0,8,FR,France +200637,3,1786,233,3339,3,0,6,FR,France +200636,3,1107,0,2346,2,0,4,FR,France +200635,3,2170,0,4760,4,0,8,FR,France +200634,3,1572,0,3756,3,0,7,FR,France +200633,3,0,0,0,0,0,0,FR,France +200632,3,0,0,0,0,0,0,FR,France +200631,3,1773,0,3892,3,0,6,FR,France +200630,3,665,0,1614,1,0,3,FR,France +200629,3,1339,0,3260,2,0,5,FR,France +200628,3,843,0,2245,1,0,3,FR,France +200627,3,1351,0,3031,2,0,5,FR,France +200626,3,4564,1506,7622,7,2,12,FR,France +200625,3,6259,2072,10446,10,3,17,FR,France +200624,3,4279,964,7594,7,2,12,FR,France +200623,3,4532,1489,7575,7,2,12,FR,France +200622,3,5807,2667,8947,10,5,15,FR,France +200621,3,4661,1761,7561,8,3,13,FR,France +200620,3,8859,4754,12964,15,8,22,FR,France +200619,3,5083,2011,8155,8,3,13,FR,France +200618,3,4454,1632,7276,7,2,12,FR,France +200617,3,17762,11802,23722,29,19,39,FR,France +200616,3,22096,15420,28772,36,25,47,FR,France +200615,3,26969,19631,34307,44,32,56,FR,France +200614,3,40321,31022,49620,66,51,81,FR,France +200613,3,77053,63531,90575,126,104,148,FR,France +200612,3,108004,93005,123003,177,152,202,FR,France +200611,3,122437,106388,138486,201,175,227,FR,France +200610,3,124749,109104,140394,204,178,230,FR,France +200609,3,164150,146099,182201,269,239,299,FR,France +200608,3,199088,178830,219346,326,293,359,FR,France +200607,3,243908,221071,266745,400,363,437,FR,France +200606,3,256758,235190,278326,421,386,456,FR,France +200605,3,184928,166901,202955,303,273,333,FR,France +200604,3,104620,90909,118331,171,149,193,FR,France +200603,3,66255,55727,76783,109,92,126,FR,France +200602,3,39211,31418,47004,64,51,77,FR,France +200601,3,34603,26269,42937,57,43,71,FR,France +200552,3,32132,24389,39875,53,40,66,FR,France +200551,3,40344,28397,52291,67,47,87,FR,France +200550,3,36880,28635,45125,61,47,75,FR,France +200549,3,27589,20576,34602,46,34,58,FR,France +200548,3,24860,17839,31881,41,29,53,FR,France +200547,3,26884,19810,33958,44,32,56,FR,France +200546,3,23967,17155,30779,40,29,51,FR,France +200545,3,14609,8709,20509,24,14,34,FR,France +200544,3,20481,13625,27337,34,23,45,FR,France +200543,3,18045,11916,24174,30,20,40,FR,France +200542,3,23653,15209,32097,39,25,53,FR,France +200541,3,26466,18270,34662,44,30,58,FR,France +200540,3,26647,18088,35206,44,30,58,FR,France +200539,3,23994,15381,32607,40,26,54,FR,France +200538,3,21881,13979,29783,36,23,49,FR,France +200537,3,10347,5384,15310,17,9,25,FR,France +200536,3,7082,2806,11358,12,5,19,FR,France +200535,3,2448,0,4987,4,0,8,FR,France +200534,3,5281,539,10023,9,1,17,FR,France +200533,3,2815,0,6252,5,0,11,FR,France +200532,3,1572,0,3690,3,0,6,FR,France +200531,3,3767,0,10955,6,0,18,FR,France +200530,3,2203,0,5072,4,0,9,FR,France +200529,3,3965,739,7191,7,2,12,FR,France +200528,3,1988,96,3880,3,0,6,FR,France +200527,3,2305,0,4713,4,0,8,FR,France +200526,3,4720,1385,8055,8,2,14,FR,France +200525,3,2354,0,4747,4,0,8,FR,France +200524,3,5892,2029,9755,10,4,16,FR,France +200523,3,5246,1722,8770,9,3,15,FR,France +200522,3,3935,1031,6839,6,1,11,FR,France +200521,3,4284,474,8094,7,1,13,FR,France +200520,3,7841,3611,12071,13,6,20,FR,France +200519,3,7638,3346,11930,13,6,20,FR,France +200518,3,2755,388,5122,5,1,9,FR,France +200517,3,7166,3530,10802,12,6,18,FR,France +200516,3,9741,5344,14138,16,9,23,FR,France +200515,3,14881,9018,20744,25,15,35,FR,France +200514,3,21988,14834,29142,36,24,48,FR,France +200513,3,42971,33053,52889,71,55,87,FR,France +200512,3,90040,75374,104706,149,125,173,FR,France +200511,3,183032,161407,204657,302,266,338,FR,France +200510,3,222526,199990,245062,367,330,404,FR,France +200509,3,251784,229464,274104,416,379,453,FR,France +200508,3,277423,254825,300021,458,421,495,FR,France +200507,3,459444,430026,488862,759,710,808,FR,France +200506,3,568610,536207,601013,939,885,993,FR,France +200505,3,568285,534912,601658,938,883,993,FR,France +200504,3,316856,292011,341701,523,482,564,FR,France +200503,3,154208,137061,171355,255,227,283,FR,France +200502,3,88853,75576,102130,147,125,169,FR,France +200501,3,55801,45339,66263,92,75,109,FR,France +200453,3,40695,31926,49464,68,53,83,FR,France +200452,3,32687,24316,41058,54,40,68,FR,France +200451,3,46209,36017,56401,77,60,94,FR,France +200450,3,42358,31865,52851,70,53,87,FR,France +200449,3,27092,17910,36274,45,30,60,FR,France +200448,3,30522,21236,39808,51,36,66,FR,France +200447,3,21148,13386,28910,35,22,48,FR,France +200446,3,13934,8335,19533,23,14,32,FR,France +200445,3,15658,9703,21613,26,16,36,FR,France +200444,3,23166,14852,31480,38,24,52,FR,France +200443,3,16780,10545,23015,28,18,38,FR,France +200442,3,20480,13909,27051,34,23,45,FR,France +200441,3,15852,9789,21915,26,16,36,FR,France +200440,3,25639,17291,33987,43,29,57,FR,France +200439,3,22680,13222,32138,38,22,54,FR,France +200438,3,17483,9417,25549,29,16,42,FR,France +200437,3,9103,4768,13438,15,8,22,FR,France +200436,3,7753,3596,11910,13,6,20,FR,France +200435,3,4408,775,8041,7,1,13,FR,France +200434,3,4501,610,8392,7,1,13,FR,France +200433,3,1697,0,4046,3,0,7,FR,France +200432,3,3496,0,8181,6,0,14,FR,France +200431,3,2949,20,5878,5,0,10,FR,France +200430,3,3557,642,6472,6,1,11,FR,France +200429,3,5164,1162,9166,9,2,16,FR,France +200428,3,6358,2224,10492,11,4,18,FR,France +200427,3,7486,3040,11932,12,5,19,FR,France +200426,3,7113,0,14709,12,0,25,FR,France +200425,3,3275,508,6042,5,0,10,FR,France +200424,3,6737,2394,11080,11,4,18,FR,France +200423,3,9792,807,18777,16,1,31,FR,France +200422,3,8077,3482,12672,13,5,21,FR,France +200421,3,8073,3588,12558,13,6,20,FR,France +200420,3,7885,3454,12316,13,6,20,FR,France +200419,3,7235,3101,11369,12,5,19,FR,France +200418,3,5108,1830,8386,8,3,13,FR,France +200417,3,3647,523,6771,6,1,11,FR,France +200416,3,5265,1359,9171,9,3,15,FR,France +200415,3,8272,3655,12889,14,6,22,FR,France +200414,3,15657,8888,22426,26,15,37,FR,France +200413,3,8316,4067,12565,14,7,21,FR,France +200412,3,12482,6899,18065,21,12,30,FR,France +200411,3,13964,7879,20049,23,13,33,FR,France +200410,3,22531,14164,30898,37,23,51,FR,France +200409,3,12618,7283,17953,21,12,30,FR,France +200408,3,17738,11055,24421,29,18,40,FR,France +200407,3,25484,17228,33740,42,28,56,FR,France +200406,3,27452,19505,35399,46,33,59,FR,France +200405,3,35110,25869,44351,58,43,73,FR,France +200404,3,44571,35266,53876,74,59,89,FR,France +200403,3,60482,50389,70575,100,83,117,FR,France +200402,3,95234,81407,109061,158,135,181,FR,France +200401,3,109116,84565,133667,181,140,222,FR,France +200352,3,72239,5520,138958,121,10,232,FR,France +200351,3,445464,389214,501714,744,650,838,FR,France +200350,3,522427,491781,553073,873,822,924,FR,France +200349,3,555492,524706,586278,928,877,979,FR,France +200348,3,514668,485364,543972,860,811,909,FR,France +200347,3,332927,305972,359882,556,511,601,FR,France +200346,3,146101,126840,165362,244,212,276,FR,France +200345,3,95565,80900,110230,160,135,185,FR,France +200344,3,54703,43193,66213,91,72,110,FR,France +200343,3,45834,36611,55057,77,62,92,FR,France +200342,3,39010,28885,49135,65,48,82,FR,France +200341,3,29579,21478,37680,49,35,63,FR,France +200340,3,30862,19484,42240,52,33,71,FR,France +200339,3,26592,18927,34257,44,31,57,FR,France +200338,3,14811,8777,20845,25,15,35,FR,France +200337,3,14735,7495,21975,25,13,37,FR,France +200336,3,10951,3732,18170,18,6,30,FR,France +200335,3,1504,0,3349,3,0,6,FR,France +200334,3,2194,0,4889,4,0,9,FR,France +200333,3,1504,0,3921,3,0,7,FR,France +200332,3,1619,0,4072,3,0,7,FR,France +200331,3,5164,0,10601,9,0,18,FR,France +200330,3,3183,28,6338,5,0,10,FR,France +200329,3,6801,450,13152,11,0,22,FR,France +200328,3,3975,609,7341,7,1,13,FR,France +200327,3,2293,0,4605,4,0,8,FR,France +200326,3,5333,2138,8528,9,4,14,FR,France +200325,3,2602,0,5228,4,0,8,FR,France +200324,3,8429,0,19483,14,0,32,FR,France +200323,3,4821,1479,8163,8,2,14,FR,France +200322,3,2573,158,4988,4,0,8,FR,France +200321,3,5563,2465,8661,9,4,14,FR,France +200320,3,7554,3748,11360,13,7,19,FR,France +200319,3,8325,3777,12873,14,6,22,FR,France +200318,3,12268,6392,18144,20,10,30,FR,France +200317,3,46253,36234,56272,77,60,94,FR,France +200316,3,50759,39835,61683,85,67,103,FR,France +200315,3,69269,55778,82760,116,93,139,FR,France +200314,3,70084,55374,84794,117,92,142,FR,France +200313,3,70335,56370,84300,118,95,141,FR,France +200312,3,88582,73568,103596,148,123,173,FR,France +200311,3,99729,83353,116105,167,140,194,FR,France +200310,3,121516,104361,138671,203,174,232,FR,France +200309,3,177255,151800,202710,296,253,339,FR,France +200308,3,222638,194269,251007,372,325,419,FR,France +200307,3,237104,207851,266357,396,347,445,FR,France +200306,3,206955,177973,235937,346,298,394,FR,France +200305,3,151864,125877,177851,254,211,297,FR,France +200304,3,95356,76211,114501,159,127,191,FR,France +200303,3,50983,38264,63702,85,64,106,FR,France +200302,3,31447,21706,41188,53,37,69,FR,France +200301,3,31228,19202,43254,52,32,72,FR,France +200252,3,47016,33692,60340,79,57,101,FR,France +200251,3,47629,36912,58346,80,62,98,FR,France +200250,3,35221,26217,44225,59,44,74,FR,France +200249,3,24656,16900,32412,41,28,54,FR,France +200248,3,19799,12868,26730,33,21,45,FR,France +200247,3,16449,9214,23684,28,16,40,FR,France +200246,3,12753,5779,19727,21,9,33,FR,France +200245,3,19304,8475,30133,32,14,50,FR,France +200244,3,18082,10671,25493,30,18,42,FR,France +200243,3,14326,7548,21104,24,13,35,FR,France +200242,3,13774,7800,19748,23,13,33,FR,France +200241,3,11036,5650,16422,19,10,28,FR,France +200240,3,8137,3375,12899,14,6,22,FR,France +200239,3,15989,9892,22086,27,17,37,FR,France +200238,3,7067,3299,10835,12,6,18,FR,France +200237,3,12409,4981,19837,21,9,33,FR,France +200236,3,1679,0,4072,3,0,7,FR,France +200235,3,2126,0,6301,4,0,11,FR,France +200234,3,2843,0,7483,5,0,13,FR,France +200233,3,2670,0,5462,4,0,9,FR,France +200232,3,1087,0,3003,2,0,5,FR,France +200231,3,5455,399,10511,9,1,17,FR,France +200230,3,3601,0,7836,6,0,13,FR,France +200229,3,5576,379,10773,9,0,18,FR,France +200228,3,6602,0,14289,11,0,24,FR,France +200227,3,1882,0,6151,3,0,10,FR,France +200226,3,4523,0,12320,8,0,21,FR,France +200225,3,4765,1076,8454,8,2,14,FR,France +200224,3,12063,7174,16952,20,12,28,FR,France +200223,3,15468,9806,21130,26,16,36,FR,France +200222,3,4854,1696,8012,8,3,13,FR,France +200221,3,5901,2212,9590,10,4,16,FR,France +200220,3,3803,1215,6391,6,2,10,FR,France +200219,3,6139,2598,9680,10,4,16,FR,France +200218,3,6083,2646,9520,10,4,16,FR,France +200217,3,7223,2678,11768,12,4,20,FR,France +200216,3,17762,9887,25637,30,17,43,FR,France +200215,3,21654,13662,29646,36,23,49,FR,France +200214,3,23877,15709,32045,40,26,54,FR,France +200213,3,27497,16289,38705,46,27,65,FR,France +200212,3,33510,20938,46082,56,35,77,FR,France +200211,3,40426,29171,51681,68,49,87,FR,France +200210,3,42915,24537,61293,72,41,103,FR,France +200209,3,63735,48368,79102,107,81,133,FR,France +200208,3,117204,95548,138860,197,161,233,FR,France +200207,3,170251,137065,203437,286,230,342,FR,France +200206,3,325084,296111,354057,546,497,595,FR,France +200205,3,456186,422559,489813,767,710,824,FR,France +200204,3,504715,470859,538571,848,791,905,FR,France +200203,3,383720,353019,414421,645,593,697,FR,France +200202,3,244028,217752,270304,410,366,454,FR,France +200201,3,115422,95696,135148,194,161,227,FR,France +200152,3,57999,43225,72773,98,73,123,FR,France +200151,3,45961,36017,55905,78,61,95,FR,France +200150,3,31309,22878,39740,53,39,67,FR,France +200149,3,34792,23268,46316,59,40,78,FR,France +200148,3,43283,20164,66402,73,34,112,FR,France +200147,3,27455,20021,34889,46,33,59,FR,France +200146,3,21127,14294,27960,36,24,48,FR,France +200145,3,20766,13979,27553,35,24,46,FR,France +200144,3,11410,6593,16227,19,11,27,FR,France +200143,3,23311,15652,30970,39,26,52,FR,France +200142,3,18963,11652,26274,32,20,44,FR,France +200141,3,20241,14032,26450,34,24,44,FR,France +200140,3,18113,9971,26255,31,17,45,FR,France +200139,3,25407,7785,43029,43,13,73,FR,France +200138,3,9736,4985,14487,16,8,24,FR,France +200137,3,8025,3527,12523,14,6,22,FR,France +200136,3,4663,654,8672,8,1,15,FR,France +200135,3,4399,0,9810,7,0,16,FR,France +200134,3,2990,0,6419,5,0,11,FR,France +200133,3,0,0,0,0,0,0,FR,France +200132,3,0,0,0,0,0,0,FR,France +200131,3,18999,4286,33712,32,7,57,FR,France +200130,3,2144,0,5670,4,0,10,FR,France +200129,3,2408,0,5215,4,0,9,FR,France +200128,3,3555,553,6557,6,1,11,FR,France +200127,3,4739,1122,8356,8,2,14,FR,France +200126,3,3335,466,6204,6,1,11,FR,France +200125,3,2643,527,4759,4,0,8,FR,France +200124,3,4784,2158,7410,8,4,12,FR,France +200123,3,6299,3161,9437,11,6,16,FR,France +200122,3,4544,2006,7082,8,4,12,FR,France +200121,3,8925,4094,13756,15,7,23,FR,France +200120,3,15269,8883,21655,26,15,37,FR,France +200119,3,17369,10575,24163,29,18,40,FR,France +200118,3,21043,14262,27824,36,25,47,FR,France +200117,3,25787,19109,32465,44,33,55,FR,France +200116,3,24025,16833,31217,41,29,53,FR,France +200115,3,24188,17340,31036,41,29,53,FR,France +200114,3,40429,31774,49084,68,53,83,FR,France +200113,3,48644,39517,57771,82,67,97,FR,France +200112,3,45411,35780,55042,77,61,93,FR,France +200111,3,49809,40534,59084,84,68,100,FR,France +200110,3,46649,37240,56058,79,63,95,FR,France +200109,3,58623,47346,69900,99,80,118,FR,France +200108,3,77423,63237,91609,131,107,155,FR,France +200107,3,126970,107898,146042,215,183,247,FR,France +200106,3,225969,198142,253796,382,335,429,FR,France +200105,3,278674,249486,307862,471,422,520,FR,France +200104,3,209193,189129,229257,354,320,388,FR,France +200103,3,139823,124243,155403,236,210,262,FR,France +200102,3,105356,92392,118320,178,156,200,FR,France +200101,3,98930,84599,113261,167,143,191,FR,France +200052,3,143525,124203,162847,244,211,277,FR,France +200051,3,125224,108719,141729,213,185,241,FR,France +200050,3,99177,84857,113497,169,145,193,FR,France +200049,3,74170,54196,94144,126,92,160,FR,France +200048,3,43642,34064,53220,74,58,90,FR,France +200047,3,64848,11322,118374,110,19,201,FR,France +200046,3,20598,14053,27143,35,24,46,FR,France +200045,3,25375,17229,33521,43,29,57,FR,France +200044,3,16330,9762,22898,28,17,39,FR,France +200043,3,36951,27693,46209,63,47,79,FR,France +200042,3,41200,30772,51628,70,52,88,FR,France +200041,3,40022,30939,49105,68,53,83,FR,France +200040,3,27237,19986,34488,46,34,58,FR,France +200039,3,19338,12649,26027,33,22,44,FR,France +200038,3,7417,3193,11641,13,6,20,FR,France +200037,3,2243,0,4722,4,0,8,FR,France +200036,3,2990,0,6416,5,0,11,FR,France +200035,3,5590,0,12003,10,0,21,FR,France +200034,3,5188,0,12418,9,0,21,FR,France +200033,3,1690,0,3859,3,0,7,FR,France +200032,3,1405,0,4239,2,0,7,FR,France +200031,3,2159,0,4744,4,0,8,FR,France +200030,3,218,0,783,0,0,1,FR,France +200029,3,1532,0,3751,3,0,7,FR,France +200028,3,1071,0,2881,2,0,5,FR,France +200027,3,2427,150,4704,4,0,8,FR,France +200026,3,1997,0,4996,3,0,8,FR,France +200025,3,4239,221,8257,7,0,14,FR,France +200024,3,5411,1122,9700,9,2,16,FR,France +200023,3,8757,4101,13413,15,7,23,FR,France +200022,3,4966,1694,8238,8,2,14,FR,France +200021,3,4271,1389,7153,7,2,12,FR,France +200020,3,4520,1478,7562,8,3,13,FR,France +200019,3,13867,8548,19186,24,15,33,FR,France +200018,3,5386,2261,8511,9,4,14,FR,France +200017,3,7018,1581,12455,12,3,21,FR,France +200016,3,5328,1433,9223,9,2,16,FR,France +200015,3,12020,6436,17604,20,11,29,FR,France +200014,3,10942,5691,16193,19,10,28,FR,France +200013,3,8572,3443,13701,15,6,24,FR,France +200012,3,7081,3097,11065,12,5,19,FR,France +200011,3,12172,7447,16897,21,13,29,FR,France +200010,3,9091,5450,12732,15,9,21,FR,France +200009,3,14631,9200,20062,25,16,34,FR,France +200008,3,23647,17172,30122,40,29,51,FR,France +200007,3,59173,48440,69906,101,83,119,FR,France +200006,3,146517,129961,163073,249,221,277,FR,France +200005,3,261687,239983,283391,445,408,482,FR,France +200004,3,374822,349785,399859,637,594,680,FR,France +200003,3,484233,456706,511760,824,777,871,FR,France +200002,3,521069,492185,549953,886,837,935,FR,France +200001,3,541945,511326,572564,922,870,974,FR,France +199952,3,387655,360652,414658,663,617,709,FR,France +199951,3,272075,250906,293244,465,429,501,FR,France +199950,3,181113,164571,197655,310,282,338,FR,France +199949,3,112328,99058,125598,192,169,215,FR,France +199948,3,58710,48651,68769,100,83,117,FR,France +199947,3,35912,23462,48362,61,40,82,FR,France +199946,3,8601,1503,15699,15,3,27,FR,France +199945,3,17781,10817,24745,30,18,42,FR,France +199944,3,18238,12870,23606,31,22,40,FR,France +199943,3,18135,12601,23669,31,22,40,FR,France +199942,3,19183,13258,25108,33,23,43,FR,France +199941,3,25171,18689,31653,43,32,54,FR,France +199940,3,24185,16184,32186,41,27,55,FR,France +199939,3,28553,20776,36330,49,36,62,FR,France +199938,3,12430,7759,17101,21,13,29,FR,France +199937,3,7543,4283,10803,13,7,19,FR,France +199936,3,8191,2827,13555,14,5,23,FR,France +199935,3,3334,1188,5480,6,2,10,FR,France +199934,3,7600,0,27730,13,0,47,FR,France +199933,3,9757,354,19160,17,1,33,FR,France +199932,3,7149,0,15077,12,0,26,FR,France +199931,3,2640,0,5463,5,0,10,FR,France +199930,3,1478,0,3153,3,0,6,FR,France +199929,3,3983,498,7468,7,1,13,FR,France +199928,3,3731,712,6750,6,1,11,FR,France +199927,3,5004,1597,8411,9,3,15,FR,France +199926,3,3459,699,6219,6,1,11,FR,France +199925,3,5302,2057,8547,9,3,15,FR,France +199924,3,4327,1646,7008,7,2,12,FR,France +199923,3,5370,2374,8366,9,4,14,FR,France +199922,3,4404,1643,7165,8,3,13,FR,France +199921,3,4180,1485,6875,7,2,12,FR,France +199920,3,6073,2775,9371,10,4,16,FR,France +199919,3,6241,3220,9262,11,6,16,FR,France +199918,3,3057,678,5436,5,1,9,FR,France +199917,3,2904,701,5107,5,1,9,FR,France +199916,3,7539,3360,11718,13,6,20,FR,France +199915,3,11535,6814,16256,20,12,28,FR,France +199914,3,18730,13131,24329,32,22,42,FR,France +199913,3,38453,29560,47346,66,51,81,FR,France +199912,3,58090,48072,68108,99,82,116,FR,France +199911,3,91329,78686,103972,156,134,178,FR,France +199910,3,147976,131058,164894,253,224,282,FR,France +199909,3,207450,188710,226190,355,323,387,FR,France +199908,3,313293,292280,334306,536,500,572,FR,France +199907,3,524136,496702,551570,896,849,943,FR,France +199906,3,493908,466605,521211,844,797,891,FR,France +199905,3,476884,449696,504072,815,769,861,FR,France +199904,3,368514,345131,391897,630,590,670,FR,France +199903,3,242388,224208,260568,414,383,445,FR,France +199902,3,160657,145209,176105,275,249,301,FR,France +199901,3,130133,115125,145141,222,196,248,FR,France +199853,3,107611,92301,122921,185,159,211,FR,France +199852,3,72373,61032,83714,124,105,143,FR,France +199851,3,78179,67156,89202,134,115,153,FR,France +199850,3,54775,45478,64072,94,78,110,FR,France +199849,3,33385,26332,40438,57,45,69,FR,France +199848,3,22636,16668,28604,39,29,49,FR,France +199847,3,14505,9746,19264,25,17,33,FR,France +199846,3,13804,9049,18559,24,16,32,FR,France +199845,3,13021,8113,17929,22,14,30,FR,France +199844,3,12631,7410,17852,22,13,31,FR,France +199843,3,12180,7125,17235,21,12,30,FR,France +199842,3,18885,12726,25044,32,21,43,FR,France +199841,3,24196,17506,30886,42,31,53,FR,France +199840,3,20235,14114,26356,35,25,45,FR,France +199839,3,17075,11538,22612,29,20,38,FR,France +199838,3,10837,6336,15338,19,11,27,FR,France +199837,3,6968,3227,10709,12,6,18,FR,France +199836,3,3033,580,5486,5,1,9,FR,France +199835,3,2491,0,5022,4,0,8,FR,France +199834,3,3853,589,7117,7,1,13,FR,France +199833,3,2934,0,6598,5,0,11,FR,France +199832,3,1308,0,2894,2,0,5,FR,France +199831,3,12147,0,29237,21,0,50,FR,France +199830,3,5309,1628,8990,9,3,15,FR,France +199829,3,6486,2465,10507,11,4,18,FR,France +199828,3,9577,4464,14690,16,7,25,FR,France +199827,3,12358,7158,17558,21,12,30,FR,France +199826,3,10415,6547,14283,18,11,25,FR,France +199825,3,18246,13050,23442,31,22,40,FR,France +199824,3,16263,11126,21400,28,19,37,FR,France +199823,3,8553,4911,12195,15,9,21,FR,France +199822,3,5181,2669,7693,9,5,13,FR,France +199821,3,4751,2416,7086,8,4,12,FR,France +199820,3,12129,8099,16159,21,14,28,FR,France +199819,3,24118,17906,30330,41,30,52,FR,France +199818,3,31612,24512,38712,54,42,66,FR,France +199817,3,61148,51894,70402,105,89,121,FR,France +199816,3,123195,109878,136512,211,188,234,FR,France +199815,3,171603,156715,186491,294,268,320,FR,France +199814,3,319092,298398,339786,547,512,582,FR,France +199813,3,298212,278513,317911,512,478,546,FR,France +199812,3,263585,246356,280814,452,422,482,FR,France +199811,3,220578,204894,236262,378,351,405,FR,France +199810,3,202354,186304,218404,347,319,375,FR,France +199809,3,227553,209970,245136,390,360,420,FR,France +199808,3,271362,252005,290719,465,432,498,FR,France +199807,3,190187,173694,206680,326,298,354,FR,France +199806,3,88217,76829,99605,151,131,171,FR,France +199805,3,45180,36970,53390,77,63,91,FR,France +199804,3,30005,23272,36738,51,39,63,FR,France +199803,3,23900,18221,29579,41,31,51,FR,France +199802,3,31143,23994,38292,53,41,65,FR,France +199801,3,24809,17786,31832,43,31,55,FR,France +199752,3,29039,21984,36094,50,38,62,FR,France +199751,3,34924,27737,42111,60,48,72,FR,France +199750,3,33527,26388,40666,58,46,70,FR,France +199749,3,15978,11147,20809,27,19,35,FR,France +199748,3,11507,7744,15270,20,14,26,FR,France +199747,3,11059,7151,14967,19,12,26,FR,France +199746,3,8073,4613,11533,14,8,20,FR,France +199745,3,18202,13113,23291,31,22,40,FR,France +199744,3,19770,14405,25135,34,25,43,FR,France +199743,3,16707,11945,21469,29,21,37,FR,France +199742,3,15340,10351,20329,26,17,35,FR,France +199741,3,16933,11941,21925,29,20,38,FR,France +199740,3,13292,8709,17875,23,15,31,FR,France +199739,3,10189,6279,14099,18,11,25,FR,France +199738,3,3231,1061,5401,6,2,10,FR,France +199737,3,4542,1949,7135,8,4,12,FR,France +199736,3,5131,2205,8057,9,4,14,FR,France +199735,3,1842,0,3740,3,0,6,FR,France +199734,3,3226,0,6717,6,0,12,FR,France +199733,3,1799,0,4368,3,0,7,FR,France +199732,3,2086,0,4411,4,0,8,FR,France +199731,3,1386,0,3332,2,0,5,FR,France +199730,3,2116,0,4919,4,0,9,FR,France +199729,3,1973,0,4347,3,0,7,FR,France +199728,3,1560,216,2904,3,1,5,FR,France +199727,3,2540,754,4326,4,1,7,FR,France +199726,3,5582,2699,8465,10,5,15,FR,France +199725,3,4012,1090,6934,7,2,12,FR,France +199724,3,4696,1824,7568,8,3,13,FR,France +199723,3,4709,2136,7282,8,4,12,FR,France +199722,3,2283,665,3901,4,1,7,FR,France +199721,3,2108,664,3552,4,2,6,FR,France +199720,3,3257,1519,4995,6,3,9,FR,France +199719,3,4646,2436,6856,8,4,12,FR,France +199718,3,5246,2764,7728,9,5,13,FR,France +199717,3,14236,9906,18566,24,17,31,FR,France +199716,3,12169,8111,16227,21,14,28,FR,France +199715,3,9516,6192,12840,16,10,22,FR,France +199714,3,13602,9659,17545,23,16,30,FR,France +199713,3,18032,13345,22719,31,23,39,FR,France +199712,3,17199,12707,21691,30,22,38,FR,France +199711,3,19988,15419,24557,34,26,42,FR,France +199710,3,21903,17338,26468,38,30,46,FR,France +199709,3,29860,24261,35459,51,41,61,FR,France +199708,3,55445,47857,63033,95,82,108,FR,France +199707,3,70876,62518,79234,122,108,136,FR,France +199706,3,76906,68152,85660,132,117,147,FR,France +199705,3,95900,86095,105705,165,148,182,FR,France +199704,3,96896,87079,106713,167,150,184,FR,France +199703,3,143844,131917,155771,248,227,269,FR,France +199702,3,211578,197395,225761,364,340,388,FR,France +199701,3,280440,263783,297097,483,454,512,FR,France +199652,3,388201,369211,407191,670,637,703,FR,France +199651,3,640627,617388,663866,1106,1066,1146,FR,France +199650,3,535205,514568,555842,924,888,960,FR,France +199649,3,411498,393335,429661,710,679,741,FR,France +199648,3,195568,182563,208573,338,316,360,FR,France +199647,3,71980,63619,80341,124,110,138,FR,France +199646,3,32138,26358,37918,55,45,65,FR,France +199645,3,25551,20136,30966,44,35,53,FR,France +199644,3,10753,7230,14276,19,13,25,FR,France +199643,3,12971,9311,16631,22,16,28,FR,France +199642,3,11929,8472,15386,21,15,27,FR,France +199641,3,9918,6674,13162,17,11,23,FR,France +199640,3,10765,7067,14463,19,13,25,FR,France +199639,3,8377,5183,11571,14,8,20,FR,France +199638,3,9470,5965,12975,16,10,22,FR,France +199637,3,2925,829,5021,5,1,9,FR,France +199636,3,1122,23,2221,2,0,4,FR,France +199635,3,1674,93,3255,3,0,6,FR,France +199634,3,1273,122,2424,2,0,4,FR,France +199633,3,540,0,1246,1,0,2,FR,France +199632,3,1453,176,2730,3,1,5,FR,France +199631,3,3010,752,5268,5,1,9,FR,France +199630,3,2992,706,5278,5,1,9,FR,France +199629,3,1559,144,2974,3,1,5,FR,France +199628,3,3109,541,5677,5,1,9,FR,France +199627,3,4456,1595,7317,8,3,13,FR,France +199626,3,2871,1138,4604,5,2,8,FR,France +199625,3,2308,856,3760,4,1,7,FR,France +199624,3,2490,1067,3913,4,2,6,FR,France +199623,3,2819,1262,4376,5,2,8,FR,France +199622,3,4005,1984,6026,7,4,10,FR,France +199621,3,7042,4291,9793,12,7,17,FR,France +199620,3,10619,7365,13873,18,12,24,FR,France +199619,3,11898,8065,15731,21,14,28,FR,France +199618,3,18338,13352,23324,32,23,41,FR,France +199617,3,24954,19100,30808,43,33,53,FR,France +199616,3,29313,23868,34758,51,42,60,FR,France +199615,3,51703,43644,59762,89,75,103,FR,France +199614,3,44414,36774,52054,77,64,90,FR,France +199613,3,30622,25062,36182,53,43,63,FR,France +199612,3,31818,25852,37784,55,45,65,FR,France +199611,3,24427,19499,29355,42,33,51,FR,France +199610,3,20910,16198,25622,36,28,44,FR,France +199609,3,19594,15228,23960,34,26,42,FR,France +199608,3,19046,14850,23242,33,26,40,FR,France +199607,3,23041,18338,27744,40,32,48,FR,France +199606,3,21810,17153,26467,38,30,46,FR,France +199605,3,25275,20410,30140,44,36,52,FR,France +199604,3,43359,36948,49770,75,64,86,FR,France +199603,3,54691,48016,61366,94,82,106,FR,France +199602,3,105606,96106,115106,182,166,198,FR,France +199601,3,223830,209274,238386,386,361,411,FR,France +199552,3,397122,378252,415992,688,655,721,FR,France +199551,3,749988,725434,774542,1299,1256,1342,FR,France +199550,3,604926,583100,626752,1047,1009,1085,FR,France +199549,3,375500,358200,392800,650,620,680,FR,France +199548,3,206446,193457,219435,357,335,379,FR,France +199547,3,120472,110526,130418,209,192,226,FR,France +199546,3,62380,55042,69718,108,95,121,FR,France +199545,3,29791,24523,35059,52,43,61,FR,France +199544,3,13168,9820,16516,23,17,29,FR,France +199543,3,16188,12389,19987,28,21,35,FR,France +199542,3,15178,11387,18969,26,19,33,FR,France +199541,3,14980,10851,19109,26,19,33,FR,France +199540,3,16245,11610,20880,28,20,36,FR,France +199539,3,18499,13844,23154,32,24,40,FR,France +199538,3,13123,9410,16836,23,17,29,FR,France +199537,3,4895,2666,7124,8,4,12,FR,France +199536,3,3659,1574,5744,6,2,10,FR,France +199535,3,2496,644,4348,4,1,7,FR,France +199534,3,1887,214,3560,3,0,6,FR,France +199533,3,905,0,2007,2,0,4,FR,France +199532,3,700,0,1699,1,0,3,FR,France +199531,3,1946,92,3800,3,0,6,FR,France +199530,3,1898,46,3750,3,0,6,FR,France +199529,3,2148,687,3609,4,1,7,FR,France +199528,3,3312,1430,5194,6,3,9,FR,France +199527,3,4853,2683,7023,8,4,12,FR,France +199526,3,4986,2911,7061,9,5,13,FR,France +199525,3,4571,2520,6622,8,4,12,FR,France +199524,3,8058,5054,11062,14,9,19,FR,France +199523,3,13820,9801,17839,24,17,31,FR,France +199522,3,14124,9999,18249,24,17,31,FR,France +199521,3,11931,8655,15207,21,15,27,FR,France +199520,3,18846,14311,23381,33,25,41,FR,France +199519,3,26261,21488,31034,45,37,53,FR,France +199518,3,39231,33258,45204,68,58,78,FR,France +199517,3,88640,79343,97937,153,137,169,FR,France +199516,3,140488,129439,151537,243,224,262,FR,France +199515,3,181007,169110,192904,313,292,334,FR,France +199514,3,248704,235144,262264,431,408,454,FR,France +199513,3,209839,197191,222487,363,341,385,FR,France +199512,3,122434,112497,132371,212,195,229,FR,France +199511,3,81730,73346,90114,142,127,157,FR,France +199510,3,49387,42703,56071,86,74,98,FR,France +199509,3,39696,33259,46133,69,58,80,FR,France +199508,3,38008,32225,43791,66,56,76,FR,France +199507,3,30550,25479,35621,53,44,62,FR,France +199506,3,37351,32007,42695,65,56,74,FR,France +199505,3,27876,23218,32534,48,40,56,FR,France +199504,3,27643,22818,32468,48,40,56,FR,France +199503,3,24844,20391,29297,43,35,51,FR,France +199502,3,23480,19249,27711,41,34,48,FR,France +199501,3,26556,21916,31196,46,38,54,FR,France +199452,3,22036,17495,26577,38,30,46,FR,France +199451,3,26912,21750,32074,47,38,56,FR,France +199450,3,28831,23470,34192,50,41,59,FR,France +199449,3,21161,16559,25763,37,29,45,FR,France +199448,3,18487,14456,22518,32,25,39,FR,France +199447,3,15206,11578,18834,26,20,32,FR,France +199446,3,14252,10525,17979,25,19,31,FR,France +199445,3,12152,8448,15856,21,15,27,FR,France +199444,3,11307,7688,14926,20,14,26,FR,France +199443,3,11254,8002,14506,20,14,26,FR,France +199442,3,14406,10653,18159,25,18,32,FR,France +199441,3,14073,10341,17805,24,18,30,FR,France +199440,3,15962,11850,20074,28,21,35,FR,France +199439,3,15878,11643,20113,28,21,35,FR,France +199438,3,15366,11100,19632,27,20,34,FR,France +199437,3,5949,3561,8337,10,6,14,FR,France +199436,3,2806,1133,4479,5,2,8,FR,France +199435,3,4556,2358,6754,8,4,12,FR,France +199434,3,3459,1444,5474,6,2,10,FR,France +199433,3,4272,977,7567,7,1,13,FR,France +199432,3,4786,1613,7959,8,2,14,FR,France +199431,3,5027,1580,8474,9,3,15,FR,France +199430,3,2100,520,3680,4,1,7,FR,France +199429,3,1188,0,2384,2,0,4,FR,France +199428,3,1581,316,2846,3,1,5,FR,France +199427,3,713,0,1459,1,0,2,FR,France +199426,3,990,80,1900,2,0,4,FR,France +199425,3,5431,3222,7640,9,5,13,FR,France +199424,3,6288,3723,8853,11,7,15,FR,France +199423,3,6440,1052,11828,11,2,20,FR,France +199422,3,845,0,2449,1,0,4,FR,France +199421,3,2197,395,3999,4,1,7,FR,France +199420,3,2217,852,3582,4,2,6,FR,France +199419,3,1483,406,2560,3,1,5,FR,France +199418,3,3705,1940,5470,6,3,9,FR,France +199417,3,2288,1064,3512,4,2,6,FR,France +199416,3,5156,3176,7136,9,6,12,FR,France +199415,3,6952,4678,9226,12,8,16,FR,France +199414,3,4671,2784,6558,8,5,11,FR,France +199413,3,3343,1641,5045,6,3,9,FR,France +199412,3,4305,2412,6198,7,4,10,FR,France +199411,3,5399,3327,7471,9,5,13,FR,France +199410,3,4548,2529,6567,8,4,12,FR,France +199409,3,5635,3251,8019,10,6,14,FR,France +199408,3,9539,6652,12426,17,12,22,FR,France +199407,3,14639,11188,18090,25,19,31,FR,France +199406,3,17308,13395,21221,30,23,37,FR,France +199405,3,18489,14290,22688,32,25,39,FR,France +199404,3,23712,19048,28376,41,33,49,FR,France +199403,3,29882,24817,34947,52,43,61,FR,France +199402,3,47402,41415,53389,82,72,92,FR,France +199401,3,118119,108182,128056,205,188,222,FR,France +199352,3,233137,218608,247666,406,381,431,FR,France +199351,3,377472,359792,395152,658,627,689,FR,France +199350,3,627639,607097,648181,1094,1058,1130,FR,France +199349,3,898045,873419,922671,1565,1522,1608,FR,France +199348,3,527582,507752,547412,920,885,955,FR,France +199347,3,241371,226769,255973,421,396,446,FR,France +199346,3,76034,68003,84065,133,119,147,FR,France +199345,3,32289,27022,37556,56,47,65,FR,France +199344,3,17832,14015,21649,31,24,38,FR,France +199343,3,15098,11333,18863,26,19,33,FR,France +199342,3,19187,14893,23481,33,26,40,FR,France +199341,3,18285,14384,22186,32,25,39,FR,France +199340,3,13805,10348,17262,24,18,30,FR,France +199339,3,14783,11173,18393,26,20,32,FR,France +199338,3,10492,7329,13655,18,12,24,FR,France +199337,3,7023,4503,9543,12,8,16,FR,France +199336,3,4361,2445,6277,8,5,11,FR,France +199335,3,5589,3066,8112,10,6,14,FR,France +199334,3,2984,1209,4759,5,2,8,FR,France +199333,3,3217,758,5676,6,2,10,FR,France +199332,3,3755,1051,6459,7,2,12,FR,France +199331,3,4163,1768,6558,7,3,11,FR,France +199330,3,4055,1907,6203,7,3,11,FR,France +199329,3,3714,1668,5760,6,2,10,FR,France +199328,3,1774,484,3064,3,1,5,FR,France +199327,3,2574,918,4230,4,1,7,FR,France +199326,3,3048,1450,4646,5,2,8,FR,France +199325,3,8348,5260,11436,15,10,20,FR,France +199324,3,6624,3747,9501,12,7,17,FR,France +199323,3,7424,4302,10546,13,8,18,FR,France +199322,3,3432,1849,5015,6,3,9,FR,France +199321,3,5942,3670,8214,10,6,14,FR,France +199320,3,5137,3157,7117,9,6,12,FR,France +199319,3,4593,2725,6461,8,5,11,FR,France +199318,3,5027,3075,6979,9,6,12,FR,France +199317,3,8111,5138,11084,14,9,19,FR,France +199316,3,24932,19468,30396,43,33,53,FR,France +199315,3,22181,17147,27215,39,30,48,FR,France +199314,3,38266,30865,45667,67,54,80,FR,France +199313,3,62987,54506,71468,110,95,125,FR,France +199312,3,63493,55956,71030,111,98,124,FR,France +199311,3,80548,72628,88468,140,126,154,FR,France +199310,3,127910,117688,138132,223,205,241,FR,France +199309,3,184150,171378,196922,321,299,343,FR,France +199308,3,222932,209051,236813,389,365,413,FR,France +199307,3,248494,234936,262052,433,409,457,FR,France +199306,3,286939,271830,302048,500,474,526,FR,France +199305,3,255890,241516,270264,446,421,471,FR,France +199304,3,193107,181261,204953,337,316,358,FR,France +199303,3,147854,137256,158452,258,240,276,FR,France +199302,3,90269,82164,98374,157,143,171,FR,France +199301,3,75288,67244,83332,131,117,145,FR,France +199253,3,56622,49107,64137,99,86,112,FR,France +199252,3,49588,42568,56608,87,75,99,FR,France +199251,3,41156,35024,47288,72,61,83,FR,France +199250,3,40100,34699,45501,70,61,79,FR,France +199249,3,39146,33847,44445,69,60,78,FR,France +199248,3,32392,27499,37285,57,48,66,FR,France +199247,3,26276,21797,30755,46,38,54,FR,France +199246,3,22758,18462,27054,40,32,48,FR,France +199245,3,22023,17804,26242,39,32,46,FR,France +199244,3,27619,22945,32293,48,40,56,FR,France +199243,3,24969,20704,29234,44,37,51,FR,France +199242,3,29980,25261,34699,52,44,60,FR,France +199241,3,24091,19953,28229,42,35,49,FR,France +199240,3,17593,13885,21301,31,25,37,FR,France +199239,3,13535,10301,16769,24,18,30,FR,France +199238,3,9837,7106,12568,17,12,22,FR,France +199237,3,7480,5130,9830,13,9,17,FR,France +199236,3,5155,2958,7352,9,5,13,FR,France +199235,3,6383,3687,9079,11,6,16,FR,France +199234,3,2953,922,4984,5,1,9,FR,France +199233,3,4046,1549,6543,7,3,11,FR,France +199232,3,4963,2215,7711,9,4,14,FR,France +199231,3,4233,1733,6733,7,3,11,FR,France +199230,3,3091,1145,5037,5,2,8,FR,France +199229,3,3586,1583,5589,6,2,10,FR,France +199228,3,4179,2133,6225,7,3,11,FR,France +199227,3,5568,3134,8002,10,6,14,FR,France +199226,3,5886,3229,8543,10,5,15,FR,France +199225,3,5304,2805,7803,9,5,13,FR,France +199224,3,5928,3482,8374,10,6,14,FR,France +199223,3,3914,1855,5973,7,3,11,FR,France +199222,3,4899,2641,7157,9,5,13,FR,France +199221,3,5059,2889,7229,9,5,13,FR,France +199220,3,4308,2226,6390,8,4,12,FR,France +199219,3,2982,1181,4783,5,2,8,FR,France +199218,3,3887,1777,5997,7,3,11,FR,France +199217,3,3614,1216,6012,6,2,10,FR,France +199216,3,5460,2934,7986,10,6,14,FR,France +199215,3,8642,5029,12255,15,9,21,FR,France +199214,3,11346,7536,15156,20,13,27,FR,France +199213,3,11693,8096,15290,20,14,26,FR,France +199212,3,11752,7834,15670,21,14,28,FR,France +199211,3,11689,7575,15803,20,13,27,FR,France +199210,3,19224,12971,25477,34,23,45,FR,France +199209,3,26629,20275,32983,47,36,58,FR,France +199208,3,37667,30887,44447,66,54,78,FR,France +199207,3,57312,48777,65847,100,85,115,FR,France +199206,3,112450,99989,124911,197,175,219,FR,France +199205,3,165474,151342,179606,290,265,315,FR,France +199204,3,147959,133595,162323,259,234,284,FR,France +199203,3,137893,122944,152842,241,215,267,FR,France +199202,3,185852,166558,205146,325,291,359,FR,France +199201,3,247688,222574,272802,434,390,478,FR,France +199152,3,349815,325499,374131,615,572,658,FR,France +199151,3,378413,355928,400898,666,626,706,FR,France +199150,3,198721,182878,214564,350,322,378,FR,France +199149,3,93903,82992,104814,165,146,184,FR,France +199148,3,45173,37384,52962,79,65,93,FR,France +199147,3,35691,28224,43158,63,50,76,FR,France +199146,3,23685,17531,29839,42,31,53,FR,France +199145,3,19565,13551,25579,34,23,45,FR,France +199144,3,21571,15477,27665,38,27,49,FR,France +199143,3,28842,21958,35726,51,39,63,FR,France +199142,3,27483,20385,34581,48,36,60,FR,France +199141,3,28185,20655,35715,50,37,63,FR,France +199140,3,26740,16049,37431,47,28,66,FR,France +199139,3,14373,8734,20012,25,15,35,FR,France +199138,3,7460,3700,11220,13,6,20,FR,France +199137,3,2429,434,4424,4,0,8,FR,France +199136,3,2380,0,4882,4,0,8,FR,France +199135,3,2372,0,5025,4,0,9,FR,France +199134,3,2099,0,5104,4,0,9,FR,France +199133,3,1654,0,4102,3,0,7,FR,France +199132,3,625,0,2190,1,0,4,FR,France +199131,3,2464,0,5830,4,0,10,FR,France +199130,3,2382,0,6857,4,0,12,FR,France +199129,3,3837,40,7634,7,0,14,FR,France +199128,3,3297,152,6442,6,0,12,FR,France +199127,3,3164,934,5394,6,2,10,FR,France +199126,3,6376,3324,9428,11,6,16,FR,France +199125,3,8218,4776,11660,14,8,20,FR,France +199124,3,8223,4660,11786,14,8,20,FR,France +199123,3,6801,3596,10006,12,6,18,FR,France +199122,3,6050,2682,9418,11,5,17,FR,France +199121,3,6391,3385,9397,11,6,16,FR,France +199120,3,8633,4683,12583,15,8,22,FR,France +199119,3,7785,3986,11584,14,7,21,FR,France +199118,3,10856,6457,15255,19,11,27,FR,France +199117,3,15603,10950,20256,27,19,35,FR,France +199116,3,15665,11184,20146,28,20,36,FR,France +199115,3,15062,10715,19409,26,18,34,FR,France +199114,3,27862,21583,34141,49,38,60,FR,France +199113,3,32179,25829,38529,57,46,68,FR,France +199112,3,27873,22312,33434,49,39,59,FR,France +199111,3,46186,38876,53496,81,68,94,FR,France +199110,3,88750,77784,99716,156,137,175,FR,France +199109,3,139093,124326,153860,245,219,271,FR,France +199108,3,216369,198630,234108,381,350,412,FR,France +199107,3,208836,191789,225883,367,337,397,FR,France +199106,3,134737,121280,148194,237,213,261,FR,France +199105,3,73564,62716,84412,129,110,148,FR,France +199104,3,48253,39031,57475,85,69,101,FR,France +199103,3,29382,22258,36506,52,39,65,FR,France +199102,3,29759,22044,37474,52,38,66,FR,France +199101,3,42927,33706,52148,76,60,92,FR,France +199052,3,41262,31607,50917,73,56,90,FR,France +199051,3,46924,37544,56304,83,66,100,FR,France +199050,3,44125,36137,52113,78,64,92,FR,France +199049,3,38379,30603,46155,68,54,82,FR,France +199048,3,29571,22315,36827,52,39,65,FR,France +199047,3,23358,15890,30826,41,28,54,FR,France +199046,3,20246,7930,32562,36,14,58,FR,France +199045,3,17571,11591,23551,31,20,42,FR,France +199044,3,16182,10305,22059,29,19,39,FR,France +199043,3,17579,11588,23570,31,20,42,FR,France +199042,3,13011,7875,18147,23,14,32,FR,France +199041,3,19723,13330,26116,35,24,46,FR,France +199040,3,20433,14614,26252,36,26,46,FR,France +199039,3,15618,10315,20921,28,19,37,FR,France +199038,3,11146,6197,16095,20,11,29,FR,France +199037,3,4051,1022,7080,7,2,12,FR,France +199036,3,2542,124,4960,4,0,8,FR,France +199035,3,934,0,2681,2,0,5,FR,France +199034,3,201,0,595,0,0,1,FR,France +199033,3,0,0,0,0,0,0,FR,France +199032,3,1399,0,3849,2,0,6,FR,France +199031,3,881,0,2206,2,0,4,FR,France +199030,3,425,0,1262,1,0,2,FR,France +199029,3,1077,0,2643,2,0,5,FR,France +199028,3,959,0,2252,2,0,4,FR,France +199027,3,2948,793,5103,5,1,9,FR,France +199026,3,7236,2651,11821,13,5,21,FR,France +199025,3,7879,3136,12622,14,6,22,FR,France +199024,3,5727,2460,8994,10,4,16,FR,France +199023,3,3655,1043,6267,6,1,11,FR,France +199022,3,4196,1292,7100,7,2,12,FR,France +199021,3,1004,0,2367,2,0,4,FR,France +199020,3,4506,1771,7241,8,3,13,FR,France +199019,3,5897,2440,9354,10,4,16,FR,France +199018,3,1738,141,3335,3,0,6,FR,France +199017,3,5278,2197,8359,9,4,14,FR,France +199016,3,8129,3754,12504,14,6,22,FR,France +199015,3,11707,5831,17583,21,11,31,FR,France +199014,3,12862,8177,17547,23,15,31,FR,France +199013,3,21879,15088,28670,39,27,51,FR,France +199012,3,17035,11135,22935,30,20,40,FR,France +199011,3,20018,14311,25725,35,25,45,FR,France +199010,3,16294,11045,21543,29,20,38,FR,France +199009,3,21793,15460,28126,39,28,50,FR,France +199008,3,26110,19342,32878,46,34,58,FR,France +199007,3,61742,49720,73764,109,88,130,FR,France +199006,3,399984,353345,446623,707,625,789,FR,France +199005,3,161765,146354,177176,286,259,313,FR,France +199004,3,287771,267698,307844,509,474,544,FR,France +199003,3,315466,296550,334382,558,525,591,FR,France +199002,3,345060,326087,364033,610,576,644,FR,France +199001,3,483600,460913,506287,855,815,895,FR,France +198952,3,581149,556023,606275,1035,990,1080,FR,France +198951,3,821540,793846,849234,1463,1414,1512,FR,France +198950,3,749283,723633,774933,1334,1288,1380,FR,France +198949,3,358043,340053,376033,638,606,670,FR,France +198948,3,119087,108253,129921,212,193,231,FR,France +198947,3,40963,33897,48029,73,60,86,FR,France +198946,3,23547,17952,29142,42,32,52,FR,France +198945,3,22711,16999,28423,40,30,50,FR,France +198944,3,23405,17475,29335,42,31,53,FR,France +198943,3,29549,23287,35811,53,42,64,FR,France +198942,3,39410,32172,46648,70,57,83,FR,France +198941,3,43763,35245,52281,78,63,93,FR,France +198940,3,31453,24288,38618,56,43,69,FR,France +198939,3,24622,18425,30819,44,33,55,FR,France +198938,3,18296,13483,23109,33,24,42,FR,France +198937,3,12022,8082,15962,21,14,28,FR,France +198936,3,4769,2299,7239,8,4,12,FR,France +198935,3,4661,1696,7626,8,3,13,FR,France +198934,3,6039,2185,9893,11,4,18,FR,France +198933,3,7940,3858,12022,14,7,21,FR,France +198932,3,7114,2361,11867,13,5,21,FR,France +198931,3,2721,0,5478,5,0,10,FR,France +198930,3,3168,561,5775,6,1,11,FR,France +198929,3,3909,1504,6314,7,3,11,FR,France +198928,3,1284,105,2463,2,0,4,FR,France +198927,3,3641,1350,5932,6,2,10,FR,France +198926,3,5753,2885,8621,10,5,15,FR,France +198925,3,6299,3454,9144,11,6,16,FR,France +198924,3,6337,3537,9137,11,6,16,FR,France +198923,3,11779,7984,15574,21,14,28,FR,France +198922,3,9104,4764,13444,16,8,24,FR,France +198921,3,9554,4316,14792,17,8,26,FR,France +198920,3,6093,1023,11163,11,2,20,FR,France +198919,3,0,,,0,,,FR,France +198918,3,13452,1365,25539,24,2,46,FR,France +198917,3,10949,7147,14751,19,12,26,FR,France +198916,3,10908,7494,14322,19,13,25,FR,France +198915,3,9667,6209,13125,17,11,23,FR,France +198914,3,15230,10469,19991,27,19,35,FR,France +198913,3,10564,6767,14361,19,12,26,FR,France +198912,3,13419,9542,17296,24,17,31,FR,France +198911,3,16633,12140,21126,30,22,38,FR,France +198910,3,12387,8750,16024,22,16,28,FR,France +198909,3,12895,9183,16607,23,16,30,FR,France +198908,3,19746,15258,24234,35,27,43,FR,France +198907,3,27277,21760,32794,49,39,59,FR,France +198906,3,47844,40320,55368,85,72,98,FR,France +198905,3,52840,45665,60015,94,81,107,FR,France +198904,3,54942,47750,62134,98,85,111,FR,France +198903,3,66010,58065,73955,118,104,132,FR,France +198902,3,112284,102003,122565,200,182,218,FR,France +198901,3,202266,188305,216227,360,335,385,FR,France +198852,3,467971,447033,488909,837,800,874,FR,France +198851,3,872748,846468,899028,1562,1515,1609,FR,France +198850,3,1001824,974799,1028849,1793,1745,1841,FR,France +198849,3,966523,940068,992978,1729,1682,1776,FR,France +198848,3,637811,614785,660837,1141,1100,1182,FR,France +198847,3,246062,231234,260890,440,413,467,FR,France +198846,3,92484,83160,101808,165,148,182,FR,France +198845,3,53940,46148,61732,97,83,111,FR,France +198844,3,42106,35336,48876,75,63,87,FR,France +198843,3,38252,31909,44595,68,57,79,FR,France +198842,3,45495,38467,52523,81,68,94,FR,France +198841,3,46336,39344,53328,83,70,96,FR,France +198840,3,39882,33507,46257,71,60,82,FR,France +198839,3,43730,36755,50705,78,66,90,FR,France +198838,3,35243,29367,41119,63,52,74,FR,France +198837,3,15537,11911,19163,28,22,34,FR,France +198836,3,7539,4840,10238,13,8,18,FR,France +198835,3,7797,4762,10832,14,9,19,FR,France +198834,3,4950,2005,7895,9,4,14,FR,France +198833,3,7937,3861,12013,14,7,21,FR,France +198832,3,7033,2595,11471,13,5,21,FR,France +198831,3,8758,3591,13925,16,7,25,FR,France +198830,3,4205,1224,7186,8,3,13,FR,France +198829,3,6103,1013,11193,11,2,20,FR,France +198828,3,8562,3483,13641,15,6,24,FR,France +198827,3,4690,2196,7184,8,4,12,FR,France +198826,3,7065,3905,10225,13,7,19,FR,France +198825,3,7657,4664,10650,14,9,19,FR,France +198824,3,6676,3978,9374,12,7,17,FR,France +198823,3,8695,5755,11635,16,11,21,FR,France +198822,3,11566,8282,14850,21,15,27,FR,France +198821,3,11107,7742,14472,20,14,26,FR,France +198820,3,14118,10223,18013,25,18,32,FR,France +198819,3,18260,13847,22673,33,25,41,FR,France +198818,3,20415,16281,24549,37,30,44,FR,France +198817,3,21750,17436,26064,39,31,47,FR,France +198816,3,33730,27496,39964,60,49,71,FR,France +198815,3,70616,61754,79478,126,110,142,FR,France +198814,3,123868,113211,134525,222,203,241,FR,France +198813,3,193710,181519,205901,347,325,369,FR,France +198812,3,283445,268834,298056,507,481,533,FR,France +198811,3,316175,300858,331492,566,539,593,FR,France +198810,3,235142,222004,248280,421,397,445,FR,France +198809,3,135564,125263,145865,243,225,261,FR,France +198808,3,87753,78449,97057,157,140,174,FR,France +198807,3,77099,68423,85775,138,122,154,FR,France +198806,3,69349,61502,77196,124,110,138,FR,France +198805,3,72705,64952,80458,130,116,144,FR,France +198804,3,72818,64944,80692,130,116,144,FR,France +198803,3,68869,60922,76816,123,109,137,FR,France +198802,3,59743,51907,67579,107,93,121,FR,France +198801,3,60929,52573,69285,109,94,124,FR,France +198753,3,47257,38170,56344,85,69,101,FR,France +198752,3,11935,2353,21517,21,4,38,FR,France +198751,3,47744,34266,61222,86,62,110,FR,France +198750,3,57767,50181,65353,104,90,118,FR,France +198749,3,49380,42461,56299,89,77,101,FR,France +198748,3,41871,35115,48627,75,63,87,FR,France +198747,3,29688,23465,35911,53,42,64,FR,France +198746,3,37216,30199,44233,67,54,80,FR,France +198745,3,35456,29024,41888,64,52,76,FR,France +198744,3,41024,33829,48219,74,61,87,FR,France +198743,3,46356,38370,54342,83,69,97,FR,France +198742,3,38021,30236,45806,68,54,82,FR,France +198741,3,42021,32016,52026,76,58,94,FR,France +198740,3,24641,15930,33352,44,28,60,FR,France +198739,3,32328,23548,41108,58,42,74,FR,France +198738,3,16782,11870,21694,30,21,39,FR,France +198737,3,11208,6542,15874,20,12,28,FR,France +198736,3,7906,4014,11798,14,7,21,FR,France +198735,3,6149,2970,9328,11,5,17,FR,France +198734,3,6631,2734,10528,12,5,19,FR,France +198733,3,6404,1834,10974,12,4,20,FR,France +198732,3,7215,2353,12077,13,4,22,FR,France +198731,3,8233,3655,12811,15,7,23,FR,France +198730,3,4642,1301,7983,8,2,14,FR,France +198729,3,4389,913,7865,8,2,14,FR,France +198728,3,2702,138,5266,5,0,10,FR,France +198727,3,10171,5904,14438,18,10,26,FR,France +198726,3,12341,7824,16858,22,14,30,FR,France +198725,3,23413,15490,31336,42,28,56,FR,France +198724,3,11289,7282,15296,20,13,27,FR,France +198723,3,15857,10943,20771,29,20,38,FR,France +198722,3,14887,9743,20031,27,18,36,FR,France +198721,3,17619,12649,22589,32,23,41,FR,France +198720,3,10344,6454,14234,19,12,26,FR,France +198719,3,12539,7943,17135,23,15,31,FR,France +198718,3,16095,10330,21860,29,19,39,FR,France +198717,3,21256,14850,27662,38,26,50,FR,France +198716,3,32416,25100,39732,58,45,71,FR,France +198715,3,44292,36456,52128,80,66,94,FR,France +198714,3,50642,41866,59418,91,75,107,FR,France +198713,3,62246,52749,71743,112,95,129,FR,France +198712,3,59625,50653,68597,107,91,123,FR,France +198711,3,53561,45035,62087,96,81,111,FR,France +198710,3,93067,80519,105615,167,144,190,FR,France +198709,3,147006,133519,160493,264,240,288,FR,France +198708,3,217779,202179,233379,391,363,419,FR,France +198707,3,288180,270718,305642,518,487,549,FR,France +198706,3,296702,279051,314353,533,501,565,FR,France +198705,3,236046,219483,252609,424,394,454,FR,France +198704,3,158333,143625,173041,285,259,311,FR,France +198703,3,103841,91699,115983,187,165,209,FR,France +198702,3,74213,64014,84412,133,115,151,FR,France +198701,3,69745,59207,80283,125,106,144,FR,France +198652,3,76263,64958,87568,138,118,158,FR,France +198651,3,72920,63047,82793,132,114,150,FR,France +198650,3,73413,64019,82807,133,116,150,FR,France +198649,3,56296,48229,64363,102,87,117,FR,France +198648,3,46031,38578,53484,83,70,96,FR,France +198647,3,36740,29710,43770,66,53,79,FR,France +198646,3,32134,25327,38941,58,46,70,FR,France +198645,3,38964,31382,46546,70,56,84,FR,France +198644,3,28646,22048,35244,52,40,64,FR,France +198643,3,27532,20842,34222,50,38,62,FR,France +198642,3,31815,25124,38506,57,45,69,FR,France +198641,3,32864,25939,39789,59,47,71,FR,France +198640,3,33516,26776,40256,60,48,72,FR,France +198639,3,28665,22477,34853,52,41,63,FR,France +198638,3,26615,20479,32751,48,37,59,FR,France +198637,3,15998,10802,21194,29,20,38,FR,France +198636,3,9182,4982,13382,17,9,25,FR,France +198635,3,10587,4470,16704,19,8,30,FR,France +198634,3,5762,858,10666,10,1,19,FR,France +198633,3,3115,554,5676,6,1,11,FR,France +198632,3,1027,0,2311,2,0,4,FR,France +198631,3,2247,0,4574,4,0,8,FR,France +198630,3,2346,141,4551,4,0,8,FR,France +198629,3,3654,931,6377,7,2,12,FR,France +198628,3,2327,0,5318,4,0,9,FR,France +198627,3,7529,3353,11705,14,6,22,FR,France +198626,3,8778,5106,12450,16,9,23,FR,France +198625,3,11075,6804,15346,20,12,28,FR,France +198624,3,11160,7252,15068,20,13,27,FR,France +198623,3,14372,9896,18848,26,18,34,FR,France +198622,3,9717,5594,13840,18,11,25,FR,France +198621,3,14460,9575,19345,26,17,35,FR,France +198620,3,17133,12106,22160,31,22,40,FR,France +198619,3,22177,16008,28346,40,29,51,FR,France +198618,3,31736,24115,39357,57,43,71,FR,France +198617,3,34874,27440,42308,63,50,76,FR,France +198616,3,41196,32894,49498,74,59,89,FR,France +198615,3,42659,33537,51781,77,61,93,FR,France +198614,3,49792,39728,59856,90,72,108,FR,France +198613,3,87249,63562,110936,157,114,200,FR,France +198612,3,124777,97237,152317,225,175,275,FR,France +198611,3,168146,151035,185257,303,272,334,FR,France +198610,3,257305,231225,283385,464,417,511,FR,France +198609,3,321140,296644,345636,580,536,624,FR,France +198608,3,448786,419219,478353,810,757,863,FR,France +198607,3,490723,460150,521296,886,831,941,FR,France +198606,3,439300,411764,466836,793,743,843,FR,France +198605,3,364727,339868,389586,658,613,703,FR,France +198604,3,348509,322464,374554,629,582,676,FR,France +198603,3,271539,248654,294424,490,449,531,FR,France +198602,3,178138,159344,196932,322,288,356,FR,France +198601,3,112614,96539,128689,203,174,232,FR,France +198552,3,86452,72250,100654,157,131,183,FR,France +198551,3,114666,99538,129794,208,181,235,FR,France +198550,3,86031,73604,98458,156,133,179,FR,France +198549,3,65931,55326,76536,120,101,139,FR,France +198548,3,68291,57581,79001,124,105,143,FR,France +198547,3,66177,55221,77133,120,100,140,FR,France +198546,3,70534,58788,82280,128,107,149,FR,France +198545,3,57514,47167,67861,104,85,123,FR,France +198544,3,67356,55744,78968,122,101,143,FR,France +198543,3,87402,74208,100596,158,134,182,FR,France +198542,3,76218,64604,87832,138,117,159,FR,France +198541,3,45712,36755,54669,83,67,99,FR,France +198540,3,49739,40335,59143,90,73,107,FR,France +198539,3,39819,31234,48404,72,56,88,FR,France +198538,3,27605,20614,34596,50,37,63,FR,France +198537,3,22219,15626,28812,40,28,52,FR,France +198536,3,27986,18992,36980,51,35,67,FR,France +198535,3,30215,18546,41884,55,34,76,FR,France +198534,3,40389,24786,55992,73,45,101,FR,France +198533,3,22611,8819,36403,41,16,66,FR,France +198532,3,7488,1851,13125,14,4,24,FR,France +198531,3,16958,8479,25437,31,16,46,FR,France +198530,3,11598,5507,17689,21,10,32,FR,France +198529,3,13054,6474,19634,24,12,36,FR,France +198528,3,14588,7659,21517,26,13,39,FR,France +198527,3,19670,11761,27579,36,22,50,FR,France +198526,3,18609,12637,24581,34,23,45,FR,France +198525,3,19362,12454,26270,35,22,48,FR,France +198524,3,19855,13577,26133,36,25,47,FR,France +198523,3,19373,10010,28736,35,18,52,FR,France +198522,3,24099,17190,31008,44,31,57,FR,France +198521,3,26096,19621,32571,47,35,59,FR,France +198520,3,27896,20885,34907,51,38,64,FR,France +198519,3,43154,32821,53487,78,59,97,FR,France +198518,3,40555,29935,51175,74,55,93,FR,France +198517,3,34053,24366,43740,62,44,80,FR,France +198516,3,50362,36451,64273,91,66,116,FR,France +198515,3,63881,45538,82224,116,83,149,FR,France +198514,3,134545,114400,154690,244,207,281,FR,France +198513,3,197206,176080,218332,357,319,395,FR,France +198512,3,245240,223304,267176,445,405,485,FR,France +198511,3,276205,252399,300011,501,458,544,FR,France +198510,3,353231,326279,380183,640,591,689,FR,France +198509,3,369895,341109,398681,670,618,722,FR,France +198508,3,389886,359529,420243,707,652,762,FR,France +198507,3,471852,432599,511105,855,784,926,FR,France +198506,3,565825,518011,613639,1026,939,1113,FR,France +198505,3,637302,592795,681809,1155,1074,1236,FR,France +198504,3,424937,390794,459080,770,708,832,FR,France +198503,3,213901,174689,253113,388,317,459,FR,France +198502,3,97586,80949,114223,177,147,207,FR,France +198501,3,85489,65918,105060,155,120,190,FR,France +198452,3,84830,60602,109058,154,110,198,FR,France +198451,3,101726,80242,123210,185,146,224,FR,France +198450,3,123680,101401,145959,225,184,266,FR,France +198449,3,101073,81684,120462,184,149,219,FR,France +198448,3,78620,60634,96606,143,110,176,FR,France +198447,3,72029,54274,89784,131,99,163,FR,France +198446,3,87330,67686,106974,159,123,195,FR,France +198445,3,135223,101414,169032,246,184,308,FR,France +198444,3,68422,20056,116788,125,37,213,FR,France diff --git a/module3/data_2.csv b/module3/data_2.csv new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/module3/data_3.csv b/module3/data_3.csv new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/module3/data_4.csv b/module3/data_4.csv new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/module3/data_5.csv b/module3/data_5.csv new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/module3/data_6.csv b/module3/data_6.csv new file mode 100644 index 0000000000000000000000000000000000000000..c0201761a330c8a457b40ceca779ebc2badd85a5 --- /dev/null +++ b/module3/data_6.csv @@ -0,0 +1 @@ +b'# @source="r\xe9seau Sentinelles, INSERM, Sorbonne Universit\xe9, http://www.sentiweb.fr", @meta={"period":[198444,202221],"geo":["PAY","1"],"geo_ref":"insee","indicator":"3","type":"all","conf_int":true,"compact":false}, @date=2022-06-04T12:28:03+02:00\nweek,indicator,inc,inc_low,inc_up,inc100,inc100_low,inc100_up,geo_insee,geo_name\n202221,3,17538,12255,22821,26,18,34,FR,France\n202220,3,20413,16271,24555,31,25,37,FR,France\n202219,3,17874,14068,21680,27,21,33,FR,France\n202218,3,30353,25089,35617,46,38,54,FR,France\n202217,3,36006,30373,41639,54,46,62,FR,France\n202216,3,49949,42836,57062,75,64,86,FR,France\n202215,3,100806,90824,110788,152,137,167,FR,France\n202214,3,155441,143891,166991,234,217,251,FR,France\n202213,3,191914,179558,204270,289,270,308,FR,France\n202212,3,166224,155035,177413,251,234,268,FR,France\n202211,3,122849,113306,132392,185,171,199,FR,France\n202210,3,87904,79741,96067,133,121,145,FR,France\n202209,3,50182,43958,56406,76,67,85,FR,France\n202208,3,30963,25942,35984,47,39,55,FR,France\n202207,3,34882,29446,40318,53,45,61,FR,France\n202206,3,46623,40398,52848,70,61,79,FR,France\n202205,3,62970,56043,69897,95,85,105,FR,France\n202204,3,72209,64804,79614,109,98,120,FR,France\n202203,3,74613,67144,82082,113,102,124,FR,France\n202202,3,55920,49511,62329,84,74,94,FR,France\n202201,3,57629,50699,64559,87,77,97,FR,France\n202152,3,54349,47029,61669,82,71,93,FR,France\n202151,3,41698,35359,48037,63,53,73,FR,France\n202150,3,38117,32497,43737,58,49,67,FR,France\n202149,3,40168,34716,45620,61,53,69,FR,France\n202148,3,41842,36364,47320,63,55,71,FR,France\n202147,3,36598,31338,41858,55,47,63,FR,France\n202146,3,30059,25302,34816,46,39,53,FR,France\n202145,3,20364,16564,24164,31,25,37,FR,France\n202144,3,18999,15042,22956,29,23,35,FR,France\n202143,3,27040,21935,32145,41,33,49,FR,France\n202142,3,28343,23382,33304,43,35,51,FR,France\n202141,3,25043,20586,29500,38,31,45,FR,France\n202140,3,26286,21842,30730,40,33,47,FR,France\n202139,3,22155,18014,26296,34,28,40,FR,France\n202138,3,15614,12310,18918,24,19,29,FR,France\n202137,3,13673,10404,16942,21,16,26,FR,France\n202136,3,10289,7505,13073,16,12,20,FR,France\n202135,3,12609,9282,15936,19,14,24,FR,France\n202134,3,13081,9540,16622,20,15,25,FR,France\n202133,3,10392,7042,13742,16,11,21,FR,France\n202132,3,15586,11009,20163,24,17,31,FR,France\n202131,3,18855,13664,24046,29,21,37,FR,France\n202130,3,13991,9695,18287,21,14,28,FR,France\n202129,3,13626,9618,17634,21,15,27,FR,France\n202128,3,8636,5430,11842,13,8,18,FR,France\n202127,3,10693,6838,14548,16,10,22,FR,France\n202126,3,7086,4109,10063,11,6,16,FR,France\n202125,3,7942,5540,10344,12,8,16,FR,France\n202124,3,4855,3011,6699,7,4,10,FR,France\n202123,3,6710,4455,8965,10,7,13,FR,France\n202122,3,7879,5495,10263,12,8,16,FR,France\n202121,3,7827,5403,10251,12,8,16,FR,France\n202120,3,10278,7540,13016,16,12,20,FR,France\n202119,3,9539,6860,12218,14,10,18,FR,France\n202118,3,12135,9165,15105,18,14,22,FR,France\n202117,3,12058,8891,15225,18,13,23,FR,France\n202116,3,16505,12735,20275,25,19,31,FR,France\n202115,3,19306,15398,23214,29,23,35,FR,France\n202114,3,21073,17099,25047,32,26,38,FR,France\n202113,3,26413,22094,30732,40,33,47,FR,France\n202112,3,30658,25919,35397,46,39,53,FR,France\n202111,3,24988,20718,29258,38,32,44,FR,France\n202110,3,19539,15951,23127,30,25,35,FR,France\n202109,3,17572,13926,21218,27,21,33,FR,France\n202108,3,20882,16907,24857,32,26,38,FR,France\n202107,3,22393,18303,26483,34,28,40,FR,France\n202106,3,23183,19134,27232,35,29,41,FR,France\n202105,3,22426,18445,26407,34,28,40,FR,France\n202104,3,25804,21491,30117,39,32,46,FR,France\n202103,3,21810,17894,25726,33,27,39,FR,France\n202102,3,17320,13906,20734,26,21,31,FR,France\n202101,3,21799,17778,25820,33,27,39,FR,France\n202053,3,21220,16498,25942,32,25,39,FR,France\n202052,3,16428,12285,20571,25,19,31,FR,France\n202051,3,21619,17370,25868,33,27,39,FR,France\n202050,3,16845,13220,20470,26,20,32,FR,France\n202049,3,12939,9923,15955,20,15,25,FR,France\n202048,3,13804,10641,16967,21,16,26,FR,France\n202047,3,19085,15285,22885,29,23,35,FR,France\n202046,3,24801,20503,29099,38,31,45,FR,France\n202045,3,42516,36857,48175,65,56,74,FR,France\n202044,3,44567,38521,50613,68,59,77,FR,France\n202043,3,43799,37581,50017,67,58,76,FR,France\n202042,3,35183,29847,40519,53,45,61,FR,France\n202041,3,27926,23251,32601,42,35,49,FR,France\n202040,3,20443,16381,24505,31,25,37,FR,France\n202039,3,19810,15900,23720,30,24,36,FR,France\n202038,3,25559,21141,29977,39,32,46,FR,France\n202037,3,18485,14649,22321,28,22,34,FR,France\n202036,3,10390,7646,13134,16,12,20,FR,France\n202035,3,9918,6842,12994,15,10,20,FR,France\n202034,3,6084,3090,9078,9,4,14,FR,France\n202033,3,6106,3411,8801,9,5,13,FR,France\n202032,3,5918,3330,8506,9,5,13,FR,France\n202031,3,4351,2269,6433,7,4,10,FR,France\n202030,3,8179,5442,10916,12,8,16,FR,France\n202029,3,8687,5860,11514,13,9,17,FR,France\n202028,3,8325,5688,10962,13,9,17,FR,France\n202027,3,4066,2406,5726,6,3,9,FR,France\n202026,3,4039,2389,5689,6,3,9,FR,France\n202025,3,2853,1488,4218,4,2,6,FR,France\n202024,3,3058,1690,4426,5,3,7,FR,France\n202023,3,4168,2468,5868,6,3,9,FR,France\n202022,3,3580,1947,5213,5,3,7,FR,France\n202021,3,6114,4026,8202,9,6,12,FR,France\n202020,3,9315,6775,11855,14,10,18,FR,France\n202019,3,11679,8722,14636,18,14,22,FR,France\n202018,3,16398,12851,19945,25,20,30,FR,France\n202017,3,18082,14454,21710,27,21,33,FR,France\n202016,3,24165,19893,28437,37,31,43,FR,France\n202015,3,41049,35377,46721,62,53,71,FR,France\n202014,3,71666,64531,78801,109,98,120,FR,France\n202013,3,107742,99187,116297,164,151,177,FR,France\n202012,3,107283,98610,115956,163,150,176,FR,France\n202011,3,112943,104468,121418,172,159,185,FR,France\n202010,3,105145,96812,113478,160,147,173,FR,France\n202009,3,110696,102066,119326,168,155,181,FR,France\n202008,3,143753,133984,153522,218,203,233,FR,France\n202007,3,183610,172812,194408,279,263,295,FR,France\n202006,3,206669,195481,217857,314,297,331,FR,France\n202005,3,187957,177445,198469,285,269,301,FR,France\n202004,3,122331,113492,131170,186,173,199,FR,France\n202003,3,78413,71330,85496,119,108,130,FR,France\n202002,3,53614,47654,59574,81,72,90,FR,France\n202001,3,36850,31608,42092,56,48,64,FR,France\n201952,3,28135,23220,33050,43,36,50,FR,France\n201951,3,29786,25042,34530,45,38,52,FR,France\n201950,3,34223,29156,39290,52,44,60,FR,France\n201949,3,25662,21414,29910,39,33,45,FR,France\n201948,3,22367,18055,26679,34,27,41,FR,France\n201947,3,18669,14759,22579,28,22,34,FR,France\n201946,3,16030,12567,19493,24,19,29,FR,France\n201945,3,10138,7160,13116,15,10,20,FR,France\n201944,3,7822,5010,10634,12,8,16,FR,France\n201943,3,9487,6448,12526,14,9,19,FR,France\n201942,3,7747,5243,10251,12,8,16,FR,France\n201941,3,7122,4720,9524,11,7,15,FR,France\n201940,3,8505,5784,11226,13,9,17,FR,France\n201939,3,7091,4462,9720,11,7,15,FR,France\n201938,3,4897,2891,6903,7,4,10,FR,France\n201937,3,3172,1367,4977,5,2,8,FR,France\n201936,3,2295,728,3862,3,1,5,FR,France\n201935,3,1010,2,2018,2,0,4,FR,France\n201934,3,1672,279,3065,3,1,5,FR,France\n201933,3,1593,68,3118,2,0,4,FR,France\n201932,3,1592,71,3113,2,0,4,FR,France\n201931,3,2337,695,3979,4,2,6,FR,France\n201930,3,1944,415,3473,3,1,5,FR,France\n201929,3,2096,420,3772,3,0,6,FR,France\n201928,3,1195,125,2265,2,0,4,FR,France\n201927,3,2466,848,4084,4,2,6,FR,France\n201926,3,1798,402,3194,3,1,5,FR,France\n201925,3,1544,389,2699,2,0,4,FR,France\n201924,3,876,17,1735,1,0,2,FR,France\n201923,3,2004,748,3260,3,1,5,FR,France\n201922,3,2181,602,3760,3,1,5,FR,France\n201921,3,2585,1102,4068,4,2,6,FR,France\n201920,3,2891,1202,4580,4,1,7,FR,France\n201919,3,3221,1509,4933,5,2,8,FR,France\n201918,3,1385,278,2492,2,0,4,FR,France\n201917,3,3166,1348,4984,5,2,8,FR,France\n201916,3,3842,1973,5711,6,3,9,FR,France\n201915,3,5932,3669,8195,9,6,12,FR,France\n201914,3,12675,9167,16183,19,14,24,FR,France\n201913,3,16513,12530,20496,25,19,31,FR,France\n201912,3,22184,17786,26582,34,27,41,FR,France\n201911,3,31553,26556,36550,48,40,56,FR,France\n201910,3,49742,43268,56216,76,66,86,FR,France\n201909,3,88354,79564,97144,134,121,147,FR,France\n201908,3,172604,160024,185184,262,243,281,FR,France\n201907,3,307338,291220,323456,467,443,491,FR,France\n201906,3,394286,376782,411790,599,572,626,FR,France\n201905,3,355785,339295,372275,540,515,565,FR,France\n201904,3,241090,227261,254919,366,345,387,FR,France\n201903,3,147063,135890,158236,223,206,240,FR,France\n201902,3,75548,67632,83464,115,103,127,FR,France\n201901,3,50295,43525,57065,76,66,86,FR,France\n201852,3,37903,31375,44431,58,48,68,FR,France\n201851,3,39259,32977,45541,60,50,70,FR,France\n201850,3,27781,22638,32924,42,34,50,FR,France\n201849,3,19738,15481,23995,30,24,36,FR,France\n201848,3,19501,15275,23727,30,24,36,FR,France\n201847,3,15949,12105,19793,24,18,30,FR,France\n201846,3,11278,7957,14599,17,12,22,FR,France\n201845,3,11065,7791,14339,17,12,22,FR,France\n201844,3,6586,3875,9297,10,6,14,FR,France\n201843,3,6550,3988,9112,10,6,14,FR,France\n201842,3,7787,5129,10445,12,8,16,FR,France\n201841,3,8048,5098,10998,12,8,16,FR,France\n201840,3,7409,4717,10101,11,7,15,FR,France\n201839,3,7174,4235,10113,11,7,15,FR,France\n201838,3,7349,4399,10299,11,7,15,FR,France\n201837,3,4915,2386,7444,7,3,11,FR,France\n201836,3,3215,1349,5081,5,2,8,FR,France\n201835,3,1506,239,2773,2,0,4,FR,France\n201834,3,1368,116,2620,2,0,4,FR,France\n201833,3,1962,5,3919,3,0,6,FR,France\n201832,3,1839,183,3495,3,0,6,FR,France\n201831,3,2048,242,3854,3,0,6,FR,France\n201830,3,1951,202,3700,3,0,6,FR,France\n201829,3,1951,252,3650,3,0,6,FR,France\n201828,3,1654,52,3256,3,1,5,FR,France\n201827,3,3266,1145,5387,5,2,8,FR,France\n201826,3,3758,1493,6023,6,3,9,FR,France\n201825,3,4580,2220,6940,7,3,11,FR,France\n201824,3,3223,1351,5095,5,2,8,FR,France\n201823,3,1207,136,2278,2,0,4,FR,France\n201822,3,3202,1330,5074,5,2,8,FR,France\n201821,3,2537,763,4311,4,1,7,FR,France\n201820,3,2694,967,4421,4,1,7,FR,France\n201819,3,1025,0,2098,2,0,4,FR,France\n201818,3,3541,1416,5666,5,2,8,FR,France\n201817,3,2573,1003,4143,4,2,6,FR,France\n201816,3,4818,2724,6912,7,4,10,FR,France\n201815,3,16311,12168,20454,25,19,31,FR,France\n201814,3,22666,18092,27240,35,28,42,FR,France\n201813,3,32680,25536,39824,50,39,61,FR,France\n201812,3,52040,44590,59490,79,68,90,FR,France\n201811,3,65159,56506,73812,99,86,112,FR,France\n201810,3,93512,83989,103035,142,128,156,FR,France\n201809,3,108545,98645,118445,165,150,180,FR,France\n201808,3,131870,120950,142790,201,184,218,FR,France\n201807,3,141138,130177,152099,215,198,232,FR,France\n201806,3,138810,128164,149456,211,195,227,FR,France\n201805,3,157839,146646,169032,240,223,257,FR,France\n201804,3,175483,163835,187131,267,249,285,FR,France\n201803,3,178329,166640,190018,271,253,289,FR,France\n201802,3,198079,185663,210495,302,283,321,FR,France\n201801,3,235493,220941,250045,358,336,380,FR,France\n201752,3,299114,279359,318869,459,429,489,FR,France\n201751,3,229448,214366,244530,352,329,375,FR,France\n201750,3,129535,118787,140283,199,183,215,FR,France\n201749,3,63789,56120,71458,98,86,110,FR,France\n201748,3,37568,31541,43595,58,49,67,FR,France\n201747,3,24972,19923,30021,38,30,46,FR,France\n201746,3,13398,9948,16848,21,16,26,FR,France\n201745,3,14035,8091,19979,22,13,31,FR,France\n201744,3,8544,5318,11770,13,8,18,FR,France\n201743,3,7300,4402,10198,11,7,15,FR,France\n201742,3,9966,6503,13429,15,10,20,FR,France\n201741,3,12434,8718,16150,19,13,25,FR,France\n201740,3,12725,8690,16760,20,14,26,FR,France\n201739,3,14949,10534,19364,23,16,30,FR,France\n201738,3,11463,7438,15488,18,12,24,FR,France\n201737,3,9716,6364,13068,15,10,20,FR,France\n201736,3,2815,917,4713,4,1,7,FR,France\n201735,3,2794,850,4738,4,1,7,FR,France\n201734,3,2497,879,4115,4,2,6,FR,France\n201733,3,2406,766,4046,4,1,7,FR,France\n201732,3,2667,879,4455,4,1,7,FR,France\n201731,3,3256,1158,5354,5,2,8,FR,France\n201730,3,3759,1299,6219,6,2,10,FR,France\n201729,3,5014,1989,8039,8,3,13,FR,France\n201728,3,5271,2576,7966,8,4,12,FR,France\n201727,3,3924,1432,6416,6,2,10,FR,France\n201726,3,3171,1166,5176,5,2,8,FR,France\n201725,3,837,0,1721,1,0,2,FR,France\n201724,3,1566,248,2884,2,0,4,FR,France\n201723,3,1664,203,3125,3,1,5,FR,France\n201722,3,1305,92,2518,2,0,4,FR,France\n201721,3,971,0,2046,1,0,3,FR,France\n201720,3,2686,793,4579,4,1,7,FR,France\n201719,3,3461,1490,5432,5,2,8,FR,France\n201718,3,2102,515,3689,3,1,5,FR,France\n201717,3,2071,428,3714,3,0,6,FR,France\n201716,3,1380,222,2538,2,0,4,FR,France\n201715,3,479,0,1242,1,0,2,FR,France\n201714,3,1110,0,2549,2,0,4,FR,France\n201713,3,7594,3808,11380,12,6,18,FR,France\n201712,3,8780,4834,12726,13,7,19,FR,France\n201711,3,7814,4329,11299,12,7,17,FR,France\n201710,3,11802,7964,15640,18,12,24,FR,France\n201709,3,13111,9099,17123,20,14,26,FR,France\n201708,3,29545,23136,35954,45,35,55,FR,France\n201707,3,59590,49764,69416,91,76,106,FR,France\n201706,3,93628,82560,104696,144,127,161,FR,France\n201705,3,193677,179255,208099,297,275,319,FR,France\n201704,3,256428,240618,272238,394,370,418,FR,France\n201703,3,267276,251345,283207,410,386,434,FR,France\n201702,3,260588,245070,276106,400,376,424,FR,France\n201701,3,255535,239743,271327,392,368,416,FR,France\n201652,3,224489,207799,241179,345,319,371,FR,France\n201651,3,187704,172655,202753,288,265,311,FR,France\n201650,3,126570,115081,138059,194,176,212,FR,France\n201649,3,76390,67374,85406,117,103,131,FR,France\n201648,3,40502,33949,47055,62,52,72,FR,France\n201647,3,22270,17612,26928,34,27,41,FR,France\n201646,3,20816,16125,25507,32,25,39,FR,France\n201645,3,15957,11448,20466,24,17,31,FR,France\n201644,3,15145,10357,19933,23,16,30,FR,France\n201643,3,9378,5830,12926,14,9,19,FR,France\n201642,3,12920,9044,16796,20,14,26,FR,France\n201641,3,13909,9709,18109,21,15,27,FR,France\n201640,3,13379,8969,17789,21,14,28,FR,France\n201639,3,10598,6814,14382,16,10,22,FR,France\n201638,3,5969,3073,8865,9,5,13,FR,France\n201637,3,4065,1538,6592,6,2,10,FR,France\n201636,3,2372,473,4271,4,1,7,FR,France\n201635,3,3420,1350,5490,5,2,8,FR,France\n201634,3,2233,0,4643,3,0,7,FR,France\n201633,3,1567,0,3938,2,0,6,FR,France\n201632,3,2100,93,4107,3,0,6,FR,France\n201631,3,3691,0,9120,6,0,14,FR,France\n201630,3,3209,644,5774,5,1,9,FR,France\n201629,3,1469,0,3073,2,0,4,FR,France\n201628,3,2725,357,5093,4,0,8,FR,France\n201627,3,5905,2343,9467,9,4,14,FR,France\n201626,3,4186,1636,6736,6,2,10,FR,France\n201625,3,4611,1560,7662,7,2,12,FR,France\n201624,3,4977,2404,7550,8,4,12,FR,France\n201623,3,4893,2416,7370,8,4,12,FR,France\n201622,3,5667,3015,8319,9,5,13,FR,France\n201621,3,5603,2475,8731,9,4,14,FR,France\n201620,3,3908,1679,6137,6,3,9,FR,France\n201619,3,4738,2308,7168,7,3,11,FR,France\n201618,3,8204,4394,12014,13,7,19,FR,France\n201617,3,13385,8822,17948,21,14,28,FR,France\n201616,3,25670,19632,31708,39,30,48,FR,France\n201615,3,48441,39824,57058,74,61,87,FR,France\n201614,3,92603,81261,103945,142,125,159,FR,France\n201613,3,170654,156387,184921,262,240,284,FR,France\n201612,3,272174,254338,290010,418,391,445,FR,France\n201611,3,304543,286453,322633,467,439,495,FR,France\n201610,3,261822,245799,277845,402,377,427,FR,France\n201609,3,229943,214533,245353,353,329,377,FR,France\n201608,3,195067,180874,209260,299,277,321,FR,France\n201607,3,207359,193223,221495,318,296,340,FR,France\n201606,3,196143,182672,209614,301,280,322,FR,France\n201605,3,178963,166296,191630,275,256,294,FR,France\n201604,3,148473,136591,160355,228,210,246,FR,France\n201603,3,75277,66630,83924,116,103,129,FR,France\n201602,3,44617,37821,51413,68,58,78,FR,France\n201601,3,42263,35556,48970,65,55,75,FR,France\n201553,3,24835,19106,30564,38,29,47,FR,France\n201552,3,19495,14319,24671,30,22,38,FR,France\n201551,3,29080,23014,35146,45,36,54,FR,France\n201550,3,25043,19812,30274,39,31,47,FR,France\n201549,3,21479,16686,26272,33,26,40,FR,France\n201548,3,16428,12273,20583,25,19,31,FR,France\n201547,3,14959,10856,19062,23,17,29,FR,France\n201546,3,12599,8237,16961,20,13,27,FR,France\n201545,3,13577,9192,17962,21,14,28,FR,France\n201544,3,14596,10025,19167,23,16,30,FR,France\n201543,3,16749,11745,21753,26,18,34,FR,France\n201542,3,18675,13613,23737,29,21,37,FR,France\n201541,3,13585,9830,17340,21,15,27,FR,France\n201540,3,13100,9349,16851,20,14,26,FR,France\n201539,3,8595,5671,11519,13,8,18,FR,France\n201538,3,8402,4929,11875,13,8,18,FR,France\n201537,3,8817,4089,13545,14,7,21,FR,France\n201536,3,1922,440,3404,3,1,5,FR,France\n201535,3,229,0,644,0,0,1,FR,France\n201534,3,760,0,1618,1,0,2,FR,France\n201533,3,1537,208,2866,2,0,4,FR,France\n201532,3,1594,66,3122,2,0,4,FR,France\n201531,3,2845,475,5215,4,0,8,FR,France\n201530,3,2447,353,4541,4,1,7,FR,France\n201529,3,2389,332,4446,4,1,7,FR,France\n201528,3,2089,105,4073,3,0,6,FR,France\n201527,3,2257,393,4121,3,0,6,FR,France\n201526,3,2536,774,4298,4,1,7,FR,France\n201525,3,2607,680,4534,4,1,7,FR,France\n201524,3,2849,1000,4698,4,1,7,FR,France\n201523,3,2702,857,4547,4,1,7,FR,France\n201522,3,4262,1989,6535,7,3,11,FR,France\n201521,3,5547,2875,8219,9,5,13,FR,France\n201520,3,4594,2040,7148,7,3,11,FR,France\n201519,3,6307,3256,9358,10,5,15,FR,France\n201518,3,3664,1544,5784,6,3,9,FR,France\n201517,3,6382,3523,9241,10,6,14,FR,France\n201516,3,12098,7913,16283,19,13,25,FR,France\n201515,3,19458,14192,24724,30,22,38,FR,France\n201514,3,30940,24617,37263,48,38,58,FR,France\n201513,3,49563,41986,57140,77,65,89,FR,France\n201512,3,70024,61079,78969,109,95,123,FR,France\n201511,3,99295,88838,109752,154,138,170,FR,France\n201510,3,143931,131682,156180,223,204,242,FR,France\n201509,3,238947,222902,254992,370,345,395,FR,France\n201508,3,409972,388670,431274,635,602,668,FR,France\n201507,3,517750,494301,541199,802,766,838,FR,France\n201506,3,533317,510627,556007,827,792,862,FR,France\n201505,3,457911,436964,478858,710,678,742,FR,France\n201504,3,292161,275491,308831,453,427,479,FR,France\n201503,3,153931,141290,166572,239,219,259,FR,France\n201502,3,104096,93358,114834,161,144,178,FR,France\n201501,3,70962,60505,81419,110,94,126,FR,France\n201452,3,63168,52705,73631,98,82,114,FR,France\n201451,3,45346,38002,52690,71,60,82,FR,France\n201450,3,42182,35049,49315,66,55,77,FR,France\n201449,3,33537,27281,39793,52,42,62,FR,France\n201448,3,28156,21896,34416,44,34,54,FR,France\n201447,3,18158,13186,23130,28,20,36,FR,France\n201446,3,14764,10174,19354,23,16,30,FR,France\n201445,3,16172,11449,20895,25,18,32,FR,France\n201444,3,15500,10464,20536,24,16,32,FR,France\n201443,3,16011,10653,21369,25,17,33,FR,France\n201442,3,21651,15828,27474,34,25,43,FR,France\n201441,3,22486,16295,28677,35,25,45,FR,France\n201440,3,16526,11583,21469,26,18,34,FR,France\n201439,3,8583,5054,12112,13,8,18,FR,France\n201438,3,10567,6496,14638,16,10,22,FR,France\n201437,3,7714,3780,11648,12,6,18,FR,France\n201436,3,5018,1949,8087,8,3,13,FR,France\n201435,3,2268,355,4181,4,1,7,FR,France\n201434,3,2367,250,4484,4,1,7,FR,France\n201433,3,2358,0,4875,4,0,8,FR,France\n201432,3,3229,447,6011,5,1,9,FR,France\n201431,3,4143,349,7937,6,0,12,FR,France\n201430,3,4631,902,8360,7,1,13,FR,France\n201429,3,5122,1258,8986,8,2,14,FR,France\n201428,3,4145,1200,7090,6,1,11,FR,France\n201427,3,4823,1997,7649,8,4,12,FR,France\n201426,3,3858,1235,6481,6,2,10,FR,France\n201425,3,4564,1276,7852,7,2,12,FR,France\n201424,3,2007,249,3765,3,0,6,FR,France\n201423,3,5164,1853,8475,8,3,13,FR,France\n201422,3,6907,1856,11958,11,3,19,FR,France\n201421,3,4523,1039,8007,7,2,12,FR,France\n201420,3,5881,2432,9330,9,4,14,FR,France\n201419,3,3588,1277,5899,6,2,10,FR,France\n201418,3,4708,1654,7762,7,2,12,FR,France\n201417,3,2989,625,5353,5,1,9,FR,France\n201416,3,7057,3381,10733,11,5,17,FR,France\n201415,3,10800,6762,14838,17,11,23,FR,France\n201414,3,19217,13490,24944,30,21,39,FR,France\n201413,3,21577,15435,27719,34,24,44,FR,France\n201412,3,23524,17260,29788,37,27,47,FR,France\n201411,3,44513,35939,53087,69,56,82,FR,France\n201410,3,86105,73497,98713,134,114,154,FR,France\n201409,3,147035,131889,162181,229,205,253,FR,France\n201408,3,188419,171950,204888,293,267,319,FR,France\n201407,3,208726,191283,226169,325,298,352,FR,France\n201406,3,160403,145280,175526,250,226,274,FR,France\n201405,3,120261,107176,133346,187,167,207,FR,France\n201404,3,85280,74414,96146,133,116,150,FR,France\n201403,3,64159,54089,74229,100,84,116,FR,France\n201402,3,46850,38202,55498,73,60,86,FR,France\n201401,3,35624,27451,43797,55,42,68,FR,France\n201352,3,30142,22721,37563,47,35,59,FR,France\n201351,3,29787,23215,36359,47,37,57,FR,France\n201350,3,24055,18214,29896,38,29,47,FR,France\n201349,3,18071,13058,23084,28,20,36,FR,France\n201348,3,17606,12195,23017,28,20,36,FR,France\n201347,3,22636,16343,28929,35,25,45,FR,France\n201346,3,13340,8367,18313,21,13,29,FR,France\n201345,3,10596,6057,15135,17,10,24,FR,France\n201344,3,10193,5622,14764,16,9,23,FR,France\n201343,3,15780,9497,22063,25,15,35,FR,France\n201342,3,14830,9545,20115,23,15,31,FR,France\n201341,3,12391,7265,17517,19,11,27,FR,France\n201340,3,9794,5140,14448,15,8,22,FR,France\n201339,3,5371,1704,9038,8,2,14,FR,France\n201338,3,9324,4198,14450,15,7,23,FR,France\n201337,3,5027,1752,8302,8,3,13,FR,France\n201336,3,4639,1425,7853,7,2,12,FR,France\n201335,3,1291,0,3112,2,0,5,FR,France\n201334,3,1889,0,4912,3,0,8,FR,France\n201333,3,4740,348,9132,7,0,14,FR,France\n201332,3,4709,549,8869,7,0,14,FR,France\n201331,3,2270,0,5811,4,0,10,FR,France\n201330,3,2169,0,4630,3,0,7,FR,France\n201329,3,1696,0,3558,3,0,6,FR,France\n201328,3,983,0,2168,2,0,4,FR,France\n201327,3,4278,1327,7229,7,2,12,FR,France\n201326,3,3488,839,6137,5,1,9,FR,France\n201325,3,2735,0,5826,4,0,9,FR,France\n201324,3,7245,2997,11493,11,4,18,FR,France\n201323,3,16094,8918,23270,25,14,36,FR,France\n201322,3,7245,2923,11567,11,4,18,FR,France\n201321,3,5974,2401,9547,9,3,15,FR,France\n201320,3,3831,1245,6417,6,2,10,FR,France\n201319,3,1166,0,2680,2,0,4,FR,France\n201318,3,3415,757,6073,5,1,9,FR,France\n201317,3,7941,2950,12932,12,4,20,FR,France\n201316,3,9520,4758,14282,15,8,22,FR,France\n201315,3,19357,13311,25403,30,21,39,FR,France\n201314,3,36855,27737,45973,58,44,72,FR,France\n201313,3,43236,34048,52424,68,54,82,FR,France\n201312,3,60822,50414,71230,95,79,111,FR,France\n201311,3,84308,72456,96160,132,113,151,FR,France\n201310,3,165558,148471,182645,259,232,286,FR,France\n201309,3,259984,239067,280901,407,374,440,FR,France\n201308,3,351626,327537,375715,550,512,588,FR,France\n201307,3,470076,443682,496470,736,695,777,FR,France\n201306,3,471647,445112,498182,738,696,780,FR,France\n201305,3,492026,464729,519323,770,727,813,FR,France\n201304,3,391525,367182,415868,613,575,651,FR,France\n201303,3,224661,207134,242188,352,325,379,FR,France\n201302,3,184159,168343,199975,288,263,313,FR,France\n201301,3,163491,147340,179642,256,231,281,FR,France\n201252,3,159290,141978,176602,251,224,278,FR,France\n201251,3,113901,99835,127967,179,157,201,FR,France\n201250,3,79918,68086,91750,126,107,145,FR,France\n201249,3,47537,38711,56363,75,61,89,FR,France\n201248,3,43006,32863,53149,68,52,84,FR,France\n201247,3,39223,29140,49306,62,46,78,FR,France\n201246,3,26436,18286,34586,42,29,55,FR,France\n201245,3,18893,12799,24987,30,20,40,FR,France\n201244,3,13106,8784,17428,21,14,28,FR,France\n201243,3,17791,11284,24298,28,18,38,FR,France\n201242,3,13096,8369,17823,21,14,28,FR,France\n201241,3,18675,12010,25340,29,19,39,FR,France\n201240,3,17873,11545,24201,28,18,38,FR,France\n201239,3,20257,14180,26334,32,22,42,FR,France\n201238,3,14715,9178,20252,23,14,32,FR,France\n201237,3,7775,3509,12041,12,5,19,FR,France\n201236,3,6384,2420,10348,10,4,16,FR,France\n201235,3,8277,2206,14348,13,3,23,FR,France\n201234,3,3858,0,8641,6,0,14,FR,France\n201233,3,6492,840,12144,10,1,19,FR,France\n201232,3,6381,0,14034,10,0,22,FR,France\n201231,3,2696,0,5763,4,0,9,FR,France\n201230,3,1834,0,4194,3,0,7,FR,France\n201229,3,6329,1424,11234,10,2,18,FR,France\n201228,3,4628,1091,8165,7,1,13,FR,France\n201227,3,4162,1487,6837,7,3,11,FR,France\n201226,3,4819,1097,8541,8,2,14,FR,France\n201225,3,2669,530,4808,4,1,7,FR,France\n201224,3,5977,2335,9619,9,3,15,FR,France\n201223,3,2361,576,4146,4,1,7,FR,France\n201222,3,5772,2435,9109,9,4,14,FR,France\n201221,3,3722,821,6623,6,1,11,FR,France\n201220,3,2731,897,4565,4,1,7,FR,France\n201219,3,3267,1317,5217,5,2,8,FR,France\n201218,3,2328,569,4087,4,1,7,FR,France\n201217,3,6982,2701,11263,11,4,18,FR,France\n201216,3,11455,6874,16036,18,11,25,FR,France\n201215,3,20437,13435,27439,32,21,43,FR,France\n201214,3,36740,27799,45681,58,44,72,FR,France\n201213,3,62917,50171,75663,99,79,119,FR,France\n201212,3,84738,71566,97910,133,112,154,FR,France\n201211,3,128945,113778,144112,203,179,227,FR,France\n201210,3,174704,157337,192071,275,248,302,FR,France\n201209,3,225648,206810,244486,355,325,385,FR,France\n201208,3,287293,264901,309685,452,417,487,FR,France\n201207,3,263557,242711,284403,415,382,448,FR,France\n201206,3,175123,158942,191304,276,251,301,FR,France\n201205,3,106110,92524,119696,167,146,188,FR,France\n201204,3,67778,56784,78772,107,90,124,FR,France\n201203,3,49440,40981,57899,78,65,91,FR,France\n201202,3,40507,32652,48362,64,52,76,FR,France\n201201,3,45104,35640,54568,71,56,86,FR,France\n201152,3,36532,28367,44697,58,45,71,FR,France\n201151,3,25835,19002,32668,41,30,52,FR,France\n201150,3,24155,18145,30165,38,28,48,FR,France\n201149,3,27209,20376,34042,43,32,54,FR,France\n201148,3,32358,24451,40265,51,38,64,FR,France\n201147,3,17627,11780,23474,28,19,37,FR,France\n201146,3,22368,15730,29006,35,24,46,FR,France\n201145,3,18104,11995,24213,29,19,39,FR,France\n201144,3,14050,8471,19629,22,13,31,FR,France\n201143,3,21522,14251,28793,34,22,46,FR,France\n201142,3,16932,11363,22501,27,18,36,FR,France\n201141,3,7486,4024,10948,12,7,17,FR,France\n201140,3,14053,8659,19447,22,13,31,FR,France\n201139,3,17021,11062,22980,27,18,36,FR,France\n201138,3,14007,8465,19549,22,13,31,FR,France\n201137,3,8365,4174,12556,13,6,20,FR,France\n201136,3,4606,1714,7498,7,2,12,FR,France\n201135,3,4178,1634,6722,7,3,11,FR,France\n201134,3,3312,683,5941,5,1,9,FR,France\n201133,3,2421,0,5277,4,0,9,FR,France\n201132,3,2590,119,5061,4,0,8,FR,France\n201131,3,2409,320,4498,4,1,7,FR,France\n201130,3,3972,1395,6549,6,2,10,FR,France\n201129,3,2265,717,3813,4,2,6,FR,France\n201128,3,1977,255,3699,3,0,6,FR,France\n201127,3,3524,551,6497,6,1,11,FR,France\n201126,3,1155,0,2685,2,0,4,FR,France\n201125,3,3791,1006,6576,6,2,10,FR,France\n201124,3,3507,1149,5865,6,2,10,FR,France\n201123,3,3406,1170,5642,5,1,9,FR,France\n201122,3,3122,1125,5119,5,2,8,FR,France\n201121,3,2694,769,4619,4,1,7,FR,France\n201120,3,3951,1443,6459,6,2,10,FR,France\n201119,3,5416,1995,8837,9,4,14,FR,France\n201118,3,5306,1815,8797,8,2,14,FR,France\n201117,3,2659,310,5008,4,0,8,FR,France\n201116,3,5061,1988,8134,8,3,13,FR,France\n201115,3,6557,3038,10076,10,4,16,FR,France\n201114,3,7352,3784,10920,12,6,18,FR,France\n201113,3,8749,5213,12285,14,8,20,FR,France\n201112,3,12491,7845,17137,20,13,27,FR,France\n201111,3,14619,10009,19229,23,16,30,FR,France\n201110,3,33628,26073,41183,53,41,65,FR,France\n201109,3,54522,46057,62987,86,73,99,FR,France\n201108,3,78392,67885,88899,124,107,141,FR,France\n201107,3,149219,134798,163640,236,213,259,FR,France\n201106,3,216579,200236,232922,343,317,369,FR,France\n201105,3,278192,260235,296149,440,412,468,FR,France\n201104,3,278218,259626,296810,440,411,469,FR,France\n201103,3,275882,257313,294451,437,408,466,FR,France\n201102,3,308949,288320,329578,489,456,522,FR,France\n201101,3,309933,288190,331676,490,456,524,FR,France\n201052,3,228105,208046,248164,363,331,395,FR,France\n201051,3,158957,142576,175338,253,227,279,FR,France\n201050,3,104874,91639,118109,167,146,188,FR,France\n201049,3,54971,46418,63524,88,74,102,FR,France\n201048,3,36982,29304,44660,59,47,71,FR,France\n201047,3,26598,20123,33073,42,32,52,FR,France\n201046,3,15465,10915,20015,25,18,32,FR,France\n201045,3,9040,5772,12308,14,9,19,FR,France\n201044,3,15833,10255,21411,25,16,34,FR,France\n201043,3,16002,11001,21003,25,17,33,FR,France\n201042,3,18709,13376,24042,30,22,38,FR,France\n201041,3,17352,12182,22522,28,20,36,FR,France\n201040,3,18331,12824,23838,29,20,38,FR,France\n201039,3,11978,7913,16043,19,13,25,FR,France\n201038,3,8936,4906,12966,14,8,20,FR,France\n201037,3,5318,2551,8085,8,4,12,FR,France\n201036,3,4954,2058,7850,8,3,13,FR,France\n201035,3,4279,1604,6954,7,3,11,FR,France\n201034,3,4926,566,9286,8,1,15,FR,France\n201033,3,2950,0,6507,5,0,11,FR,France\n201032,3,671,0,1522,1,0,2,FR,France\n201031,3,2732,509,4955,4,0,8,FR,France\n201030,3,3989,1068,6910,6,1,11,FR,France\n201029,3,4123,1531,6715,7,3,11,FR,France\n201028,3,1209,0,2640,2,0,4,FR,France\n201027,3,2494,433,4555,4,1,7,FR,France\n201026,3,5808,2454,9162,9,4,14,FR,France\n201025,3,8019,4395,11643,13,7,19,FR,France\n201024,3,3584,1657,5511,6,3,9,FR,France\n201023,3,4016,1905,6127,6,3,9,FR,France\n201022,3,6251,3664,8838,10,6,14,FR,France\n201021,3,3860,1636,6084,6,2,10,FR,France\n201020,3,2470,442,4498,4,1,7,FR,France\n201019,3,2273,636,3910,4,1,7,FR,France\n201018,3,4095,1639,6551,7,3,11,FR,France\n201017,3,2216,817,3615,4,2,6,FR,France\n201016,3,3471,1085,5857,6,2,10,FR,France\n201015,3,3990,1376,6604,6,2,10,FR,France\n201014,3,6188,3191,9185,10,5,15,FR,France\n201013,3,6705,3665,9745,11,6,16,FR,France\n201012,3,6727,3582,9872,11,6,16,FR,France\n201011,3,8692,5002,12382,14,8,20,FR,France\n201010,3,8844,5465,12223,14,9,19,FR,France\n201009,3,12081,7334,16828,19,11,27,FR,France\n201008,3,15433,10422,20444,25,17,33,FR,France\n201007,3,19690,11728,27652,31,18,44,FR,France\n201006,3,27858,18883,36833,44,30,58,FR,France\n201005,3,22197,17019,27375,35,27,43,FR,France\n201004,3,33817,26151,41483,54,42,66,FR,France\n201003,3,36236,27936,44536,58,45,71,FR,France\n201002,3,40691,32891,48491,65,53,77,FR,France\n201001,3,66574,56164,76984,106,89,123,FR,France\n200953,3,96141,81818,110464,153,130,176,FR,France\n200952,3,172872,153238,192506,275,244,306,FR,France\n200951,3,247809,229140,266478,395,365,425,FR,France\n200950,3,379424,355974,402874,604,567,641,FR,France\n200949,3,473718,447756,499680,754,713,795,FR,France\n200948,3,467551,441506,493596,744,703,785,FR,France\n200947,3,378924,355752,402096,603,566,640,FR,France\n200946,3,223847,203918,243776,356,324,388,FR,France\n200945,3,147046,131155,162937,234,209,259,FR,France\n200944,3,170231,151298,189164,271,241,301,FR,France\n200943,3,131408,114883,147933,209,183,235,FR,France\n200942,3,99387,84491,114283,158,134,182,FR,France\n200941,3,100802,86381,115223,160,137,183,FR,France\n200940,3,111587,97628,125546,178,156,200,FR,France\n200939,3,121267,106153,136381,193,169,217,FR,France\n200938,3,137924,121242,154606,220,193,247,FR,France\n200937,3,101332,87522,115142,161,139,183,FR,France\n200936,3,46024,36435,55613,73,58,88,FR,France\n200935,3,31660,23669,39651,50,37,63,FR,France\n200934,3,24985,17699,32271,40,28,52,FR,France\n200933,3,24435,16308,32562,39,26,52,FR,France\n200932,3,23151,14624,31678,37,23,51,FR,France\n200931,3,30255,9818,50692,48,15,81,FR,France\n200930,3,13868,7861,19875,22,12,32,FR,France\n200929,3,10704,5314,16094,17,8,26,FR,France\n200928,3,15516,273,30759,25,1,49,FR,France\n200927,3,10354,2760,17948,16,4,28,FR,France\n200926,3,9932,5257,14607,16,9,23,FR,France\n200925,3,7619,4026,11212,12,6,18,FR,France\n200924,3,7794,3409,12179,12,5,19,FR,France\n200923,3,4342,1975,6709,7,3,11,FR,France\n200922,3,6390,3020,9760,10,5,15,FR,France\n200921,3,7118,3704,10532,11,6,16,FR,France\n200920,3,9482,5804,13160,15,9,21,FR,France\n200919,3,7538,4299,10777,12,7,17,FR,France\n200918,3,9627,5121,14133,15,8,22,FR,France\n200917,3,9537,5267,13807,15,8,22,FR,France\n200916,3,14666,9218,20114,23,14,32,FR,France\n200915,3,17533,12137,22929,28,19,37,FR,France\n200914,3,26324,19150,33498,42,31,53,FR,France\n200913,3,27737,20781,34693,44,33,55,FR,France\n200912,3,38811,29935,47687,62,48,76,FR,France\n200911,3,40410,30705,50115,64,49,79,FR,France\n200910,3,53395,41943,64847,85,67,103,FR,France\n200909,3,70558,57400,83716,112,91,133,FR,France\n200908,3,109100,94840,123360,174,151,197,FR,France\n200907,3,141531,125101,157961,225,199,251,FR,France\n200906,3,276274,252759,299789,440,403,477,FR,France\n200905,3,401868,375032,428704,640,597,683,FR,France\n200904,3,545313,512892,577734,868,816,920,FR,France\n200903,3,520957,487271,554643,829,775,883,FR,France\n200902,3,287145,262869,311421,457,418,496,FR,France\n200901,3,200349,180878,219820,319,288,350,FR,France\n200852,3,198418,115769,281067,323,188,458,FR,France\n200851,3,112588,96656,128520,184,158,210,FR,France\n200850,3,51746,43319,60173,84,70,98,FR,France\n200849,3,34950,27527,42373,57,45,69,FR,France\n200848,3,25604,18563,32645,42,31,53,FR,France\n200847,3,18706,10838,26574,30,17,43,FR,France\n200846,3,10899,5461,16337,18,9,27,FR,France\n200845,3,12472,7082,17862,20,11,29,FR,France\n200844,3,9772,5661,13883,16,9,23,FR,France\n200843,3,9345,5541,13149,15,9,21,FR,France\n200842,3,9087,5572,12602,15,9,21,FR,France\n200841,3,9925,5637,14213,16,9,23,FR,France\n200840,3,7869,4535,11203,13,8,18,FR,France\n200839,3,2195,506,3884,4,1,7,FR,France\n200838,3,3679,1481,5877,6,2,10,FR,France\n200837,3,2429,561,4297,4,1,7,FR,France\n200836,3,2512,492,4532,4,1,7,FR,France\n200835,3,1901,0,4869,3,0,8,FR,France\n200834,3,2552,0,6509,4,0,10,FR,France\n200833,3,7229,0,16106,12,0,26,FR,France\n200832,3,4378,107,8649,7,0,14,FR,France\n200831,3,3972,621,7323,6,1,11,FR,France\n200830,3,3821,643,6999,6,1,11,FR,France\n200829,3,2055,0,4225,3,0,7,FR,France\n200828,3,3257,208,6306,5,0,10,FR,France\n200827,3,2862,474,5250,5,1,9,FR,France\n200826,3,897,0,2062,1,0,3,FR,France\n200825,3,2006,360,3652,3,0,6,FR,France\n200824,3,3217,823,5611,5,1,9,FR,France\n200823,3,2906,1006,4806,5,2,8,FR,France\n200822,3,1792,451,3133,3,1,5,FR,France\n200821,3,3642,925,6359,6,2,10,FR,France\n200820,3,6452,2790,10114,11,5,17,FR,France\n200819,3,5173,1485,8861,8,2,14,FR,France\n200818,3,5315,1770,8860,9,3,15,FR,France\n200817,3,10150,5835,14465,17,10,24,FR,France\n200816,3,11876,7054,16698,19,11,27,FR,France\n200815,3,22871,16253,29489,37,26,48,FR,France\n200814,3,45610,27907,63313,74,45,103,FR,France\n200813,3,38600,29300,47900,63,48,78,FR,France\n200812,3,53169,43299,63039,87,71,103,FR,France\n200811,3,62014,50430,73598,101,82,120,FR,France\n200810,3,90342,75729,104955,147,123,171,FR,France\n200809,3,119696,104205,135187,195,170,220,FR,France\n200808,3,198688,180749,216627,324,295,353,FR,France\n200807,3,286498,264535,308461,467,431,503,FR,France\n200806,3,377097,350714,403480,615,572,658,FR,France\n200805,3,344050,320436,367664,561,523,599,FR,France\n200804,3,290196,268193,312199,473,437,509,FR,France\n200803,3,260268,233385,287151,424,380,468,FR,France\n200802,3,160872,145311,176433,262,237,287,FR,France\n200801,3,102562,88547,116577,167,144,190,FR,France\n200752,3,86742,72295,101189,141,117,165,FR,France\n200751,3,61954,51764,72144,101,84,118,FR,France\n200750,3,45366,36923,53809,74,60,88,FR,France\n200749,3,38351,26177,50525,63,43,83,FR,France\n200748,3,48174,35418,60930,79,58,100,FR,France\n200747,3,30716,23351,38081,50,38,62,FR,France\n200746,3,18204,12267,24141,30,20,40,FR,France\n200745,3,15521,10195,20847,25,16,34,FR,France\n200744,3,13904,9072,18736,23,15,31,FR,France\n200743,3,16212,10778,21646,26,17,35,FR,France\n200742,3,20197,13955,26439,33,23,43,FR,France\n200741,3,12987,8464,17510,21,14,28,FR,France\n200740,3,13517,2983,24051,22,5,39,FR,France\n200739,3,15985,7519,24451,26,12,40,FR,France\n200738,3,4769,837,8701,8,2,14,FR,France\n200737,3,1449,300,2598,2,0,4,FR,France\n200736,3,1100,0,2424,2,0,4,FR,France\n200735,3,1177,0,2872,2,0,5,FR,France\n200734,3,3353,654,6052,5,1,9,FR,France\n200733,3,4189,360,8018,7,1,13,FR,France\n200732,3,132,0,688,0,0,1,FR,France\n200731,3,1965,0,4461,3,0,7,FR,France\n200730,3,2158,0,4583,4,0,8,FR,France\n200729,3,3406,240,6572,6,1,11,FR,France\n200728,3,1459,0,3467,2,0,5,FR,France\n200727,3,1453,0,3382,2,0,5,FR,France\n200726,3,157,0,513,0,0,1,FR,France\n200725,3,3699,0,7778,6,0,13,FR,France\n200724,3,2854,481,5227,5,1,9,FR,France\n200723,3,5343,2164,8522,9,4,14,FR,France\n200722,3,7689,4224,11154,13,7,19,FR,France\n200721,3,4319,1659,6979,7,3,11,FR,France\n200720,3,6400,2685,10115,10,4,16,FR,France\n200719,3,3012,703,5321,5,1,9,FR,France\n200718,3,2232,348,4116,4,1,7,FR,France\n200717,3,4705,1736,7674,8,3,13,FR,France\n200716,3,3817,1438,6196,6,2,10,FR,France\n200715,3,4757,717,8797,8,1,15,FR,France\n200714,3,11377,6957,15797,19,12,26,FR,France\n200713,3,21271,13093,29449,35,22,48,FR,France\n200712,3,25433,17717,33149,41,28,54,FR,France\n200711,3,30764,23356,38172,50,38,62,FR,France\n200710,3,49469,40368,58570,81,66,96,FR,France\n200709,3,138901,117018,160784,226,190,262,FR,France\n200708,3,316747,284988,348506,516,464,568,FR,France\n200707,3,417698,386505,448891,681,630,732,FR,France\n200706,3,500016,466668,533364,815,761,869,FR,France\n200705,3,375457,346822,404092,612,565,659,FR,France\n200704,3,209878,189332,230424,342,309,375,FR,France\n200703,3,126161,110596,141726,206,181,231,FR,France\n200702,3,82849,69493,96205,135,113,157,FR,France\n200701,3,70842,58613,83071,115,95,135,FR,France\n200652,3,78190,64191,92189,128,105,151,FR,France\n200651,3,62734,50210,75258,103,82,124,FR,France\n200650,3,35668,27280,44056,58,44,72,FR,France\n200649,3,18773,13164,24382,31,22,40,FR,France\n200648,3,16439,11225,21653,27,18,36,FR,France\n200647,3,16104,9343,22865,26,15,37,FR,France\n200646,3,14032,5590,22474,23,9,37,FR,France\n200645,3,12285,7745,16825,20,13,27,FR,France\n200644,3,8031,4172,11890,13,7,19,FR,France\n200643,3,21157,12483,29831,35,21,49,FR,France\n200642,3,16673,8249,25097,27,13,41,FR,France\n200641,3,13920,9081,18759,23,15,31,FR,France\n200640,3,11950,7132,16768,20,12,28,FR,France\n200639,3,8945,4333,13557,15,7,23,FR,France\n200638,3,2532,138,4926,4,0,8,FR,France\n200637,3,1786,233,3339,3,0,6,FR,France\n200636,3,1107,0,2346,2,0,4,FR,France\n200635,3,2170,0,4760,4,0,8,FR,France\n200634,3,1572,0,3756,3,0,7,FR,France\n200633,3,0,0,0,0,0,0,FR,France\n200632,3,0,0,0,0,0,0,FR,France\n200631,3,1773,0,3892,3,0,6,FR,France\n200630,3,665,0,1614,1,0,3,FR,France\n200629,3,1339,0,3260,2,0,5,FR,France\n200628,3,843,0,2245,1,0,3,FR,France\n200627,3,1351,0,3031,2,0,5,FR,France\n200626,3,4564,1506,7622,7,2,12,FR,France\n200625,3,6259,2072,10446,10,3,17,FR,France\n200624,3,4279,964,7594,7,2,12,FR,France\n200623,3,4532,1489,7575,7,2,12,FR,France\n200622,3,5807,2667,8947,10,5,15,FR,France\n200621,3,4661,1761,7561,8,3,13,FR,France\n200620,3,8859,4754,12964,15,8,22,FR,France\n200619,3,5083,2011,8155,8,3,13,FR,France\n200618,3,4454,1632,7276,7,2,12,FR,France\n200617,3,17762,11802,23722,29,19,39,FR,France\n200616,3,22096,15420,28772,36,25,47,FR,France\n200615,3,26969,19631,34307,44,32,56,FR,France\n200614,3,40321,31022,49620,66,51,81,FR,France\n200613,3,77053,63531,90575,126,104,148,FR,France\n200612,3,108004,93005,123003,177,152,202,FR,France\n200611,3,122437,106388,138486,201,175,227,FR,France\n200610,3,124749,109104,140394,204,178,230,FR,France\n200609,3,164150,146099,182201,269,239,299,FR,France\n200608,3,199088,178830,219346,326,293,359,FR,France\n200607,3,243908,221071,266745,400,363,437,FR,France\n200606,3,256758,235190,278326,421,386,456,FR,France\n200605,3,184928,166901,202955,303,273,333,FR,France\n200604,3,104620,90909,118331,171,149,193,FR,France\n200603,3,66255,55727,76783,109,92,126,FR,France\n200602,3,39211,31418,47004,64,51,77,FR,France\n200601,3,34603,26269,42937,57,43,71,FR,France\n200552,3,32132,24389,39875,53,40,66,FR,France\n200551,3,40344,28397,52291,67,47,87,FR,France\n200550,3,36880,28635,45125,61,47,75,FR,France\n200549,3,27589,20576,34602,46,34,58,FR,France\n200548,3,24860,17839,31881,41,29,53,FR,France\n200547,3,26884,19810,33958,44,32,56,FR,France\n200546,3,23967,17155,30779,40,29,51,FR,France\n200545,3,14609,8709,20509,24,14,34,FR,France\n200544,3,20481,13625,27337,34,23,45,FR,France\n200543,3,18045,11916,24174,30,20,40,FR,France\n200542,3,23653,15209,32097,39,25,53,FR,France\n200541,3,26466,18270,34662,44,30,58,FR,France\n200540,3,26647,18088,35206,44,30,58,FR,France\n200539,3,23994,15381,32607,40,26,54,FR,France\n200538,3,21881,13979,29783,36,23,49,FR,France\n200537,3,10347,5384,15310,17,9,25,FR,France\n200536,3,7082,2806,11358,12,5,19,FR,France\n200535,3,2448,0,4987,4,0,8,FR,France\n200534,3,5281,539,10023,9,1,17,FR,France\n200533,3,2815,0,6252,5,0,11,FR,France\n200532,3,1572,0,3690,3,0,6,FR,France\n200531,3,3767,0,10955,6,0,18,FR,France\n200530,3,2203,0,5072,4,0,9,FR,France\n200529,3,3965,739,7191,7,2,12,FR,France\n200528,3,1988,96,3880,3,0,6,FR,France\n200527,3,2305,0,4713,4,0,8,FR,France\n200526,3,4720,1385,8055,8,2,14,FR,France\n200525,3,2354,0,4747,4,0,8,FR,France\n200524,3,5892,2029,9755,10,4,16,FR,France\n200523,3,5246,1722,8770,9,3,15,FR,France\n200522,3,3935,1031,6839,6,1,11,FR,France\n200521,3,4284,474,8094,7,1,13,FR,France\n200520,3,7841,3611,12071,13,6,20,FR,France\n200519,3,7638,3346,11930,13,6,20,FR,France\n200518,3,2755,388,5122,5,1,9,FR,France\n200517,3,7166,3530,10802,12,6,18,FR,France\n200516,3,9741,5344,14138,16,9,23,FR,France\n200515,3,14881,9018,20744,25,15,35,FR,France\n200514,3,21988,14834,29142,36,24,48,FR,France\n200513,3,42971,33053,52889,71,55,87,FR,France\n200512,3,90040,75374,104706,149,125,173,FR,France\n200511,3,183032,161407,204657,302,266,338,FR,France\n200510,3,222526,199990,245062,367,330,404,FR,France\n200509,3,251784,229464,274104,416,379,453,FR,France\n200508,3,277423,254825,300021,458,421,495,FR,France\n200507,3,459444,430026,488862,759,710,808,FR,France\n200506,3,568610,536207,601013,939,885,993,FR,France\n200505,3,568285,534912,601658,938,883,993,FR,France\n200504,3,316856,292011,341701,523,482,564,FR,France\n200503,3,154208,137061,171355,255,227,283,FR,France\n200502,3,88853,75576,102130,147,125,169,FR,France\n200501,3,55801,45339,66263,92,75,109,FR,France\n200453,3,40695,31926,49464,68,53,83,FR,France\n200452,3,32687,24316,41058,54,40,68,FR,France\n200451,3,46209,36017,56401,77,60,94,FR,France\n200450,3,42358,31865,52851,70,53,87,FR,France\n200449,3,27092,17910,36274,45,30,60,FR,France\n200448,3,30522,21236,39808,51,36,66,FR,France\n200447,3,21148,13386,28910,35,22,48,FR,France\n200446,3,13934,8335,19533,23,14,32,FR,France\n200445,3,15658,9703,21613,26,16,36,FR,France\n200444,3,23166,14852,31480,38,24,52,FR,France\n200443,3,16780,10545,23015,28,18,38,FR,France\n200442,3,20480,13909,27051,34,23,45,FR,France\n200441,3,15852,9789,21915,26,16,36,FR,France\n200440,3,25639,17291,33987,43,29,57,FR,France\n200439,3,22680,13222,32138,38,22,54,FR,France\n200438,3,17483,9417,25549,29,16,42,FR,France\n200437,3,9103,4768,13438,15,8,22,FR,France\n200436,3,7753,3596,11910,13,6,20,FR,France\n200435,3,4408,775,8041,7,1,13,FR,France\n200434,3,4501,610,8392,7,1,13,FR,France\n200433,3,1697,0,4046,3,0,7,FR,France\n200432,3,3496,0,8181,6,0,14,FR,France\n200431,3,2949,20,5878,5,0,10,FR,France\n200430,3,3557,642,6472,6,1,11,FR,France\n200429,3,5164,1162,9166,9,2,16,FR,France\n200428,3,6358,2224,10492,11,4,18,FR,France\n200427,3,7486,3040,11932,12,5,19,FR,France\n200426,3,7113,0,14709,12,0,25,FR,France\n200425,3,3275,508,6042,5,0,10,FR,France\n200424,3,6737,2394,11080,11,4,18,FR,France\n200423,3,9792,807,18777,16,1,31,FR,France\n200422,3,8077,3482,12672,13,5,21,FR,France\n200421,3,8073,3588,12558,13,6,20,FR,France\n200420,3,7885,3454,12316,13,6,20,FR,France\n200419,3,7235,3101,11369,12,5,19,FR,France\n200418,3,5108,1830,8386,8,3,13,FR,France\n200417,3,3647,523,6771,6,1,11,FR,France\n200416,3,5265,1359,9171,9,3,15,FR,France\n200415,3,8272,3655,12889,14,6,22,FR,France\n200414,3,15657,8888,22426,26,15,37,FR,France\n200413,3,8316,4067,12565,14,7,21,FR,France\n200412,3,12482,6899,18065,21,12,30,FR,France\n200411,3,13964,7879,20049,23,13,33,FR,France\n200410,3,22531,14164,30898,37,23,51,FR,France\n200409,3,12618,7283,17953,21,12,30,FR,France\n200408,3,17738,11055,24421,29,18,40,FR,France\n200407,3,25484,17228,33740,42,28,56,FR,France\n200406,3,27452,19505,35399,46,33,59,FR,France\n200405,3,35110,25869,44351,58,43,73,FR,France\n200404,3,44571,35266,53876,74,59,89,FR,France\n200403,3,60482,50389,70575,100,83,117,FR,France\n200402,3,95234,81407,109061,158,135,181,FR,France\n200401,3,109116,84565,133667,181,140,222,FR,France\n200352,3,72239,5520,138958,121,10,232,FR,France\n200351,3,445464,389214,501714,744,650,838,FR,France\n200350,3,522427,491781,553073,873,822,924,FR,France\n200349,3,555492,524706,586278,928,877,979,FR,France\n200348,3,514668,485364,543972,860,811,909,FR,France\n200347,3,332927,305972,359882,556,511,601,FR,France\n200346,3,146101,126840,165362,244,212,276,FR,France\n200345,3,95565,80900,110230,160,135,185,FR,France\n200344,3,54703,43193,66213,91,72,110,FR,France\n200343,3,45834,36611,55057,77,62,92,FR,France\n200342,3,39010,28885,49135,65,48,82,FR,France\n200341,3,29579,21478,37680,49,35,63,FR,France\n200340,3,30862,19484,42240,52,33,71,FR,France\n200339,3,26592,18927,34257,44,31,57,FR,France\n200338,3,14811,8777,20845,25,15,35,FR,France\n200337,3,14735,7495,21975,25,13,37,FR,France\n200336,3,10951,3732,18170,18,6,30,FR,France\n200335,3,1504,0,3349,3,0,6,FR,France\n200334,3,2194,0,4889,4,0,9,FR,France\n200333,3,1504,0,3921,3,0,7,FR,France\n200332,3,1619,0,4072,3,0,7,FR,France\n200331,3,5164,0,10601,9,0,18,FR,France\n200330,3,3183,28,6338,5,0,10,FR,France\n200329,3,6801,450,13152,11,0,22,FR,France\n200328,3,3975,609,7341,7,1,13,FR,France\n200327,3,2293,0,4605,4,0,8,FR,France\n200326,3,5333,2138,8528,9,4,14,FR,France\n200325,3,2602,0,5228,4,0,8,FR,France\n200324,3,8429,0,19483,14,0,32,FR,France\n200323,3,4821,1479,8163,8,2,14,FR,France\n200322,3,2573,158,4988,4,0,8,FR,France\n200321,3,5563,2465,8661,9,4,14,FR,France\n200320,3,7554,3748,11360,13,7,19,FR,France\n200319,3,8325,3777,12873,14,6,22,FR,France\n200318,3,12268,6392,18144,20,10,30,FR,France\n200317,3,46253,36234,56272,77,60,94,FR,France\n200316,3,50759,39835,61683,85,67,103,FR,France\n200315,3,69269,55778,82760,116,93,139,FR,France\n200314,3,70084,55374,84794,117,92,142,FR,France\n200313,3,70335,56370,84300,118,95,141,FR,France\n200312,3,88582,73568,103596,148,123,173,FR,France\n200311,3,99729,83353,116105,167,140,194,FR,France\n200310,3,121516,104361,138671,203,174,232,FR,France\n200309,3,177255,151800,202710,296,253,339,FR,France\n200308,3,222638,194269,251007,372,325,419,FR,France\n200307,3,237104,207851,266357,396,347,445,FR,France\n200306,3,206955,177973,235937,346,298,394,FR,France\n200305,3,151864,125877,177851,254,211,297,FR,France\n200304,3,95356,76211,114501,159,127,191,FR,France\n200303,3,50983,38264,63702,85,64,106,FR,France\n200302,3,31447,21706,41188,53,37,69,FR,France\n200301,3,31228,19202,43254,52,32,72,FR,France\n200252,3,47016,33692,60340,79,57,101,FR,France\n200251,3,47629,36912,58346,80,62,98,FR,France\n200250,3,35221,26217,44225,59,44,74,FR,France\n200249,3,24656,16900,32412,41,28,54,FR,France\n200248,3,19799,12868,26730,33,21,45,FR,France\n200247,3,16449,9214,23684,28,16,40,FR,France\n200246,3,12753,5779,19727,21,9,33,FR,France\n200245,3,19304,8475,30133,32,14,50,FR,France\n200244,3,18082,10671,25493,30,18,42,FR,France\n200243,3,14326,7548,21104,24,13,35,FR,France\n200242,3,13774,7800,19748,23,13,33,FR,France\n200241,3,11036,5650,16422,19,10,28,FR,France\n200240,3,8137,3375,12899,14,6,22,FR,France\n200239,3,15989,9892,22086,27,17,37,FR,France\n200238,3,7067,3299,10835,12,6,18,FR,France\n200237,3,12409,4981,19837,21,9,33,FR,France\n200236,3,1679,0,4072,3,0,7,FR,France\n200235,3,2126,0,6301,4,0,11,FR,France\n200234,3,2843,0,7483,5,0,13,FR,France\n200233,3,2670,0,5462,4,0,9,FR,France\n200232,3,1087,0,3003,2,0,5,FR,France\n200231,3,5455,399,10511,9,1,17,FR,France\n200230,3,3601,0,7836,6,0,13,FR,France\n200229,3,5576,379,10773,9,0,18,FR,France\n200228,3,6602,0,14289,11,0,24,FR,France\n200227,3,1882,0,6151,3,0,10,FR,France\n200226,3,4523,0,12320,8,0,21,FR,France\n200225,3,4765,1076,8454,8,2,14,FR,France\n200224,3,12063,7174,16952,20,12,28,FR,France\n200223,3,15468,9806,21130,26,16,36,FR,France\n200222,3,4854,1696,8012,8,3,13,FR,France\n200221,3,5901,2212,9590,10,4,16,FR,France\n200220,3,3803,1215,6391,6,2,10,FR,France\n200219,3,6139,2598,9680,10,4,16,FR,France\n200218,3,6083,2646,9520,10,4,16,FR,France\n200217,3,7223,2678,11768,12,4,20,FR,France\n200216,3,17762,9887,25637,30,17,43,FR,France\n200215,3,21654,13662,29646,36,23,49,FR,France\n200214,3,23877,15709,32045,40,26,54,FR,France\n200213,3,27497,16289,38705,46,27,65,FR,France\n200212,3,33510,20938,46082,56,35,77,FR,France\n200211,3,40426,29171,51681,68,49,87,FR,France\n200210,3,42915,24537,61293,72,41,103,FR,France\n200209,3,63735,48368,79102,107,81,133,FR,France\n200208,3,117204,95548,138860,197,161,233,FR,France\n200207,3,170251,137065,203437,286,230,342,FR,France\n200206,3,325084,296111,354057,546,497,595,FR,France\n200205,3,456186,422559,489813,767,710,824,FR,France\n200204,3,504715,470859,538571,848,791,905,FR,France\n200203,3,383720,353019,414421,645,593,697,FR,France\n200202,3,244028,217752,270304,410,366,454,FR,France\n200201,3,115422,95696,135148,194,161,227,FR,France\n200152,3,57999,43225,72773,98,73,123,FR,France\n200151,3,45961,36017,55905,78,61,95,FR,France\n200150,3,31309,22878,39740,53,39,67,FR,France\n200149,3,34792,23268,46316,59,40,78,FR,France\n200148,3,43283,20164,66402,73,34,112,FR,France\n200147,3,27455,20021,34889,46,33,59,FR,France\n200146,3,21127,14294,27960,36,24,48,FR,France\n200145,3,20766,13979,27553,35,24,46,FR,France\n200144,3,11410,6593,16227,19,11,27,FR,France\n200143,3,23311,15652,30970,39,26,52,FR,France\n200142,3,18963,11652,26274,32,20,44,FR,France\n200141,3,20241,14032,26450,34,24,44,FR,France\n200140,3,18113,9971,26255,31,17,45,FR,France\n200139,3,25407,7785,43029,43,13,73,FR,France\n200138,3,9736,4985,14487,16,8,24,FR,France\n200137,3,8025,3527,12523,14,6,22,FR,France\n200136,3,4663,654,8672,8,1,15,FR,France\n200135,3,4399,0,9810,7,0,16,FR,France\n200134,3,2990,0,6419,5,0,11,FR,France\n200133,3,0,0,0,0,0,0,FR,France\n200132,3,0,0,0,0,0,0,FR,France\n200131,3,18999,4286,33712,32,7,57,FR,France\n200130,3,2144,0,5670,4,0,10,FR,France\n200129,3,2408,0,5215,4,0,9,FR,France\n200128,3,3555,553,6557,6,1,11,FR,France\n200127,3,4739,1122,8356,8,2,14,FR,France\n200126,3,3335,466,6204,6,1,11,FR,France\n200125,3,2643,527,4759,4,0,8,FR,France\n200124,3,4784,2158,7410,8,4,12,FR,France\n200123,3,6299,3161,9437,11,6,16,FR,France\n200122,3,4544,2006,7082,8,4,12,FR,France\n200121,3,8925,4094,13756,15,7,23,FR,France\n200120,3,15269,8883,21655,26,15,37,FR,France\n200119,3,17369,10575,24163,29,18,40,FR,France\n200118,3,21043,14262,27824,36,25,47,FR,France\n200117,3,25787,19109,32465,44,33,55,FR,France\n200116,3,24025,16833,31217,41,29,53,FR,France\n200115,3,24188,17340,31036,41,29,53,FR,France\n200114,3,40429,31774,49084,68,53,83,FR,France\n200113,3,48644,39517,57771,82,67,97,FR,France\n200112,3,45411,35780,55042,77,61,93,FR,France\n200111,3,49809,40534,59084,84,68,100,FR,France\n200110,3,46649,37240,56058,79,63,95,FR,France\n200109,3,58623,47346,69900,99,80,118,FR,France\n200108,3,77423,63237,91609,131,107,155,FR,France\n200107,3,126970,107898,146042,215,183,247,FR,France\n200106,3,225969,198142,253796,382,335,429,FR,France\n200105,3,278674,249486,307862,471,422,520,FR,France\n200104,3,209193,189129,229257,354,320,388,FR,France\n200103,3,139823,124243,155403,236,210,262,FR,France\n200102,3,105356,92392,118320,178,156,200,FR,France\n200101,3,98930,84599,113261,167,143,191,FR,France\n200052,3,143525,124203,162847,244,211,277,FR,France\n200051,3,125224,108719,141729,213,185,241,FR,France\n200050,3,99177,84857,113497,169,145,193,FR,France\n200049,3,74170,54196,94144,126,92,160,FR,France\n200048,3,43642,34064,53220,74,58,90,FR,France\n200047,3,64848,11322,118374,110,19,201,FR,France\n200046,3,20598,14053,27143,35,24,46,FR,France\n200045,3,25375,17229,33521,43,29,57,FR,France\n200044,3,16330,9762,22898,28,17,39,FR,France\n200043,3,36951,27693,46209,63,47,79,FR,France\n200042,3,41200,30772,51628,70,52,88,FR,France\n200041,3,40022,30939,49105,68,53,83,FR,France\n200040,3,27237,19986,34488,46,34,58,FR,France\n200039,3,19338,12649,26027,33,22,44,FR,France\n200038,3,7417,3193,11641,13,6,20,FR,France\n200037,3,2243,0,4722,4,0,8,FR,France\n200036,3,2990,0,6416,5,0,11,FR,France\n200035,3,5590,0,12003,10,0,21,FR,France\n200034,3,5188,0,12418,9,0,21,FR,France\n200033,3,1690,0,3859,3,0,7,FR,France\n200032,3,1405,0,4239,2,0,7,FR,France\n200031,3,2159,0,4744,4,0,8,FR,France\n200030,3,218,0,783,0,0,1,FR,France\n200029,3,1532,0,3751,3,0,7,FR,France\n200028,3,1071,0,2881,2,0,5,FR,France\n200027,3,2427,150,4704,4,0,8,FR,France\n200026,3,1997,0,4996,3,0,8,FR,France\n200025,3,4239,221,8257,7,0,14,FR,France\n200024,3,5411,1122,9700,9,2,16,FR,France\n200023,3,8757,4101,13413,15,7,23,FR,France\n200022,3,4966,1694,8238,8,2,14,FR,France\n200021,3,4271,1389,7153,7,2,12,FR,France\n200020,3,4520,1478,7562,8,3,13,FR,France\n200019,3,13867,8548,19186,24,15,33,FR,France\n200018,3,5386,2261,8511,9,4,14,FR,France\n200017,3,7018,1581,12455,12,3,21,FR,France\n200016,3,5328,1433,9223,9,2,16,FR,France\n200015,3,12020,6436,17604,20,11,29,FR,France\n200014,3,10942,5691,16193,19,10,28,FR,France\n200013,3,8572,3443,13701,15,6,24,FR,France\n200012,3,7081,3097,11065,12,5,19,FR,France\n200011,3,12172,7447,16897,21,13,29,FR,France\n200010,3,9091,5450,12732,15,9,21,FR,France\n200009,3,14631,9200,20062,25,16,34,FR,France\n200008,3,23647,17172,30122,40,29,51,FR,France\n200007,3,59173,48440,69906,101,83,119,FR,France\n200006,3,146517,129961,163073,249,221,277,FR,France\n200005,3,261687,239983,283391,445,408,482,FR,France\n200004,3,374822,349785,399859,637,594,680,FR,France\n200003,3,484233,456706,511760,824,777,871,FR,France\n200002,3,521069,492185,549953,886,837,935,FR,France\n200001,3,541945,511326,572564,922,870,974,FR,France\n199952,3,387655,360652,414658,663,617,709,FR,France\n199951,3,272075,250906,293244,465,429,501,FR,France\n199950,3,181113,164571,197655,310,282,338,FR,France\n199949,3,112328,99058,125598,192,169,215,FR,France\n199948,3,58710,48651,68769,100,83,117,FR,France\n199947,3,35912,23462,48362,61,40,82,FR,France\n199946,3,8601,1503,15699,15,3,27,FR,France\n199945,3,17781,10817,24745,30,18,42,FR,France\n199944,3,18238,12870,23606,31,22,40,FR,France\n199943,3,18135,12601,23669,31,22,40,FR,France\n199942,3,19183,13258,25108,33,23,43,FR,France\n199941,3,25171,18689,31653,43,32,54,FR,France\n199940,3,24185,16184,32186,41,27,55,FR,France\n199939,3,28553,20776,36330,49,36,62,FR,France\n199938,3,12430,7759,17101,21,13,29,FR,France\n199937,3,7543,4283,10803,13,7,19,FR,France\n199936,3,8191,2827,13555,14,5,23,FR,France\n199935,3,3334,1188,5480,6,2,10,FR,France\n199934,3,7600,0,27730,13,0,47,FR,France\n199933,3,9757,354,19160,17,1,33,FR,France\n199932,3,7149,0,15077,12,0,26,FR,France\n199931,3,2640,0,5463,5,0,10,FR,France\n199930,3,1478,0,3153,3,0,6,FR,France\n199929,3,3983,498,7468,7,1,13,FR,France\n199928,3,3731,712,6750,6,1,11,FR,France\n199927,3,5004,1597,8411,9,3,15,FR,France\n199926,3,3459,699,6219,6,1,11,FR,France\n199925,3,5302,2057,8547,9,3,15,FR,France\n199924,3,4327,1646,7008,7,2,12,FR,France\n199923,3,5370,2374,8366,9,4,14,FR,France\n199922,3,4404,1643,7165,8,3,13,FR,France\n199921,3,4180,1485,6875,7,2,12,FR,France\n199920,3,6073,2775,9371,10,4,16,FR,France\n199919,3,6241,3220,9262,11,6,16,FR,France\n199918,3,3057,678,5436,5,1,9,FR,France\n199917,3,2904,701,5107,5,1,9,FR,France\n199916,3,7539,3360,11718,13,6,20,FR,France\n199915,3,11535,6814,16256,20,12,28,FR,France\n199914,3,18730,13131,24329,32,22,42,FR,France\n199913,3,38453,29560,47346,66,51,81,FR,France\n199912,3,58090,48072,68108,99,82,116,FR,France\n199911,3,91329,78686,103972,156,134,178,FR,France\n199910,3,147976,131058,164894,253,224,282,FR,France\n199909,3,207450,188710,226190,355,323,387,FR,France\n199908,3,313293,292280,334306,536,500,572,FR,France\n199907,3,524136,496702,551570,896,849,943,FR,France\n199906,3,493908,466605,521211,844,797,891,FR,France\n199905,3,476884,449696,504072,815,769,861,FR,France\n199904,3,368514,345131,391897,630,590,670,FR,France\n199903,3,242388,224208,260568,414,383,445,FR,France\n199902,3,160657,145209,176105,275,249,301,FR,France\n199901,3,130133,115125,145141,222,196,248,FR,France\n199853,3,107611,92301,122921,185,159,211,FR,France\n199852,3,72373,61032,83714,124,105,143,FR,France\n199851,3,78179,67156,89202,134,115,153,FR,France\n199850,3,54775,45478,64072,94,78,110,FR,France\n199849,3,33385,26332,40438,57,45,69,FR,France\n199848,3,22636,16668,28604,39,29,49,FR,France\n199847,3,14505,9746,19264,25,17,33,FR,France\n199846,3,13804,9049,18559,24,16,32,FR,France\n199845,3,13021,8113,17929,22,14,30,FR,France\n199844,3,12631,7410,17852,22,13,31,FR,France\n199843,3,12180,7125,17235,21,12,30,FR,France\n199842,3,18885,12726,25044,32,21,43,FR,France\n199841,3,24196,17506,30886,42,31,53,FR,France\n199840,3,20235,14114,26356,35,25,45,FR,France\n199839,3,17075,11538,22612,29,20,38,FR,France\n199838,3,10837,6336,15338,19,11,27,FR,France\n199837,3,6968,3227,10709,12,6,18,FR,France\n199836,3,3033,580,5486,5,1,9,FR,France\n199835,3,2491,0,5022,4,0,8,FR,France\n199834,3,3853,589,7117,7,1,13,FR,France\n199833,3,2934,0,6598,5,0,11,FR,France\n199832,3,1308,0,2894,2,0,5,FR,France\n199831,3,12147,0,29237,21,0,50,FR,France\n199830,3,5309,1628,8990,9,3,15,FR,France\n199829,3,6486,2465,10507,11,4,18,FR,France\n199828,3,9577,4464,14690,16,7,25,FR,France\n199827,3,12358,7158,17558,21,12,30,FR,France\n199826,3,10415,6547,14283,18,11,25,FR,France\n199825,3,18246,13050,23442,31,22,40,FR,France\n199824,3,16263,11126,21400,28,19,37,FR,France\n199823,3,8553,4911,12195,15,9,21,FR,France\n199822,3,5181,2669,7693,9,5,13,FR,France\n199821,3,4751,2416,7086,8,4,12,FR,France\n199820,3,12129,8099,16159,21,14,28,FR,France\n199819,3,24118,17906,30330,41,30,52,FR,France\n199818,3,31612,24512,38712,54,42,66,FR,France\n199817,3,61148,51894,70402,105,89,121,FR,France\n199816,3,123195,109878,136512,211,188,234,FR,France\n199815,3,171603,156715,186491,294,268,320,FR,France\n199814,3,319092,298398,339786,547,512,582,FR,France\n199813,3,298212,278513,317911,512,478,546,FR,France\n199812,3,263585,246356,280814,452,422,482,FR,France\n199811,3,220578,204894,236262,378,351,405,FR,France\n199810,3,202354,186304,218404,347,319,375,FR,France\n199809,3,227553,209970,245136,390,360,420,FR,France\n199808,3,271362,252005,290719,465,432,498,FR,France\n199807,3,190187,173694,206680,326,298,354,FR,France\n199806,3,88217,76829,99605,151,131,171,FR,France\n199805,3,45180,36970,53390,77,63,91,FR,France\n199804,3,30005,23272,36738,51,39,63,FR,France\n199803,3,23900,18221,29579,41,31,51,FR,France\n199802,3,31143,23994,38292,53,41,65,FR,France\n199801,3,24809,17786,31832,43,31,55,FR,France\n199752,3,29039,21984,36094,50,38,62,FR,France\n199751,3,34924,27737,42111,60,48,72,FR,France\n199750,3,33527,26388,40666,58,46,70,FR,France\n199749,3,15978,11147,20809,27,19,35,FR,France\n199748,3,11507,7744,15270,20,14,26,FR,France\n199747,3,11059,7151,14967,19,12,26,FR,France\n199746,3,8073,4613,11533,14,8,20,FR,France\n199745,3,18202,13113,23291,31,22,40,FR,France\n199744,3,19770,14405,25135,34,25,43,FR,France\n199743,3,16707,11945,21469,29,21,37,FR,France\n199742,3,15340,10351,20329,26,17,35,FR,France\n199741,3,16933,11941,21925,29,20,38,FR,France\n199740,3,13292,8709,17875,23,15,31,FR,France\n199739,3,10189,6279,14099,18,11,25,FR,France\n199738,3,3231,1061,5401,6,2,10,FR,France\n199737,3,4542,1949,7135,8,4,12,FR,France\n199736,3,5131,2205,8057,9,4,14,FR,France\n199735,3,1842,0,3740,3,0,6,FR,France\n199734,3,3226,0,6717,6,0,12,FR,France\n199733,3,1799,0,4368,3,0,7,FR,France\n199732,3,2086,0,4411,4,0,8,FR,France\n199731,3,1386,0,3332,2,0,5,FR,France\n199730,3,2116,0,4919,4,0,9,FR,France\n199729,3,1973,0,4347,3,0,7,FR,France\n199728,3,1560,216,2904,3,1,5,FR,France\n199727,3,2540,754,4326,4,1,7,FR,France\n199726,3,5582,2699,8465,10,5,15,FR,France\n199725,3,4012,1090,6934,7,2,12,FR,France\n199724,3,4696,1824,7568,8,3,13,FR,France\n199723,3,4709,2136,7282,8,4,12,FR,France\n199722,3,2283,665,3901,4,1,7,FR,France\n199721,3,2108,664,3552,4,2,6,FR,France\n199720,3,3257,1519,4995,6,3,9,FR,France\n199719,3,4646,2436,6856,8,4,12,FR,France\n199718,3,5246,2764,7728,9,5,13,FR,France\n199717,3,14236,9906,18566,24,17,31,FR,France\n199716,3,12169,8111,16227,21,14,28,FR,France\n199715,3,9516,6192,12840,16,10,22,FR,France\n199714,3,13602,9659,17545,23,16,30,FR,France\n199713,3,18032,13345,22719,31,23,39,FR,France\n199712,3,17199,12707,21691,30,22,38,FR,France\n199711,3,19988,15419,24557,34,26,42,FR,France\n199710,3,21903,17338,26468,38,30,46,FR,France\n199709,3,29860,24261,35459,51,41,61,FR,France\n199708,3,55445,47857,63033,95,82,108,FR,France\n199707,3,70876,62518,79234,122,108,136,FR,France\n199706,3,76906,68152,85660,132,117,147,FR,France\n199705,3,95900,86095,105705,165,148,182,FR,France\n199704,3,96896,87079,106713,167,150,184,FR,France\n199703,3,143844,131917,155771,248,227,269,FR,France\n199702,3,211578,197395,225761,364,340,388,FR,France\n199701,3,280440,263783,297097,483,454,512,FR,France\n199652,3,388201,369211,407191,670,637,703,FR,France\n199651,3,640627,617388,663866,1106,1066,1146,FR,France\n199650,3,535205,514568,555842,924,888,960,FR,France\n199649,3,411498,393335,429661,710,679,741,FR,France\n199648,3,195568,182563,208573,338,316,360,FR,France\n199647,3,71980,63619,80341,124,110,138,FR,France\n199646,3,32138,26358,37918,55,45,65,FR,France\n199645,3,25551,20136,30966,44,35,53,FR,France\n199644,3,10753,7230,14276,19,13,25,FR,France\n199643,3,12971,9311,16631,22,16,28,FR,France\n199642,3,11929,8472,15386,21,15,27,FR,France\n199641,3,9918,6674,13162,17,11,23,FR,France\n199640,3,10765,7067,14463,19,13,25,FR,France\n199639,3,8377,5183,11571,14,8,20,FR,France\n199638,3,9470,5965,12975,16,10,22,FR,France\n199637,3,2925,829,5021,5,1,9,FR,France\n199636,3,1122,23,2221,2,0,4,FR,France\n199635,3,1674,93,3255,3,0,6,FR,France\n199634,3,1273,122,2424,2,0,4,FR,France\n199633,3,540,0,1246,1,0,2,FR,France\n199632,3,1453,176,2730,3,1,5,FR,France\n199631,3,3010,752,5268,5,1,9,FR,France\n199630,3,2992,706,5278,5,1,9,FR,France\n199629,3,1559,144,2974,3,1,5,FR,France\n199628,3,3109,541,5677,5,1,9,FR,France\n199627,3,4456,1595,7317,8,3,13,FR,France\n199626,3,2871,1138,4604,5,2,8,FR,France\n199625,3,2308,856,3760,4,1,7,FR,France\n199624,3,2490,1067,3913,4,2,6,FR,France\n199623,3,2819,1262,4376,5,2,8,FR,France\n199622,3,4005,1984,6026,7,4,10,FR,France\n199621,3,7042,4291,9793,12,7,17,FR,France\n199620,3,10619,7365,13873,18,12,24,FR,France\n199619,3,11898,8065,15731,21,14,28,FR,France\n199618,3,18338,13352,23324,32,23,41,FR,France\n199617,3,24954,19100,30808,43,33,53,FR,France\n199616,3,29313,23868,34758,51,42,60,FR,France\n199615,3,51703,43644,59762,89,75,103,FR,France\n199614,3,44414,36774,52054,77,64,90,FR,France\n199613,3,30622,25062,36182,53,43,63,FR,France\n199612,3,31818,25852,37784,55,45,65,FR,France\n199611,3,24427,19499,29355,42,33,51,FR,France\n199610,3,20910,16198,25622,36,28,44,FR,France\n199609,3,19594,15228,23960,34,26,42,FR,France\n199608,3,19046,14850,23242,33,26,40,FR,France\n199607,3,23041,18338,27744,40,32,48,FR,France\n199606,3,21810,17153,26467,38,30,46,FR,France\n199605,3,25275,20410,30140,44,36,52,FR,France\n199604,3,43359,36948,49770,75,64,86,FR,France\n199603,3,54691,48016,61366,94,82,106,FR,France\n199602,3,105606,96106,115106,182,166,198,FR,France\n199601,3,223830,209274,238386,386,361,411,FR,France\n199552,3,397122,378252,415992,688,655,721,FR,France\n199551,3,749988,725434,774542,1299,1256,1342,FR,France\n199550,3,604926,583100,626752,1047,1009,1085,FR,France\n199549,3,375500,358200,392800,650,620,680,FR,France\n199548,3,206446,193457,219435,357,335,379,FR,France\n199547,3,120472,110526,130418,209,192,226,FR,France\n199546,3,62380,55042,69718,108,95,121,FR,France\n199545,3,29791,24523,35059,52,43,61,FR,France\n199544,3,13168,9820,16516,23,17,29,FR,France\n199543,3,16188,12389,19987,28,21,35,FR,France\n199542,3,15178,11387,18969,26,19,33,FR,France\n199541,3,14980,10851,19109,26,19,33,FR,France\n199540,3,16245,11610,20880,28,20,36,FR,France\n199539,3,18499,13844,23154,32,24,40,FR,France\n199538,3,13123,9410,16836,23,17,29,FR,France\n199537,3,4895,2666,7124,8,4,12,FR,France\n199536,3,3659,1574,5744,6,2,10,FR,France\n199535,3,2496,644,4348,4,1,7,FR,France\n199534,3,1887,214,3560,3,0,6,FR,France\n199533,3,905,0,2007,2,0,4,FR,France\n199532,3,700,0,1699,1,0,3,FR,France\n199531,3,1946,92,3800,3,0,6,FR,France\n199530,3,1898,46,3750,3,0,6,FR,France\n199529,3,2148,687,3609,4,1,7,FR,France\n199528,3,3312,1430,5194,6,3,9,FR,France\n199527,3,4853,2683,7023,8,4,12,FR,France\n199526,3,4986,2911,7061,9,5,13,FR,France\n199525,3,4571,2520,6622,8,4,12,FR,France\n199524,3,8058,5054,11062,14,9,19,FR,France\n199523,3,13820,9801,17839,24,17,31,FR,France\n199522,3,14124,9999,18249,24,17,31,FR,France\n199521,3,11931,8655,15207,21,15,27,FR,France\n199520,3,18846,14311,23381,33,25,41,FR,France\n199519,3,26261,21488,31034,45,37,53,FR,France\n199518,3,39231,33258,45204,68,58,78,FR,France\n199517,3,88640,79343,97937,153,137,169,FR,France\n199516,3,140488,129439,151537,243,224,262,FR,France\n199515,3,181007,169110,192904,313,292,334,FR,France\n199514,3,248704,235144,262264,431,408,454,FR,France\n199513,3,209839,197191,222487,363,341,385,FR,France\n199512,3,122434,112497,132371,212,195,229,FR,France\n199511,3,81730,73346,90114,142,127,157,FR,France\n199510,3,49387,42703,56071,86,74,98,FR,France\n199509,3,39696,33259,46133,69,58,80,FR,France\n199508,3,38008,32225,43791,66,56,76,FR,France\n199507,3,30550,25479,35621,53,44,62,FR,France\n199506,3,37351,32007,42695,65,56,74,FR,France\n199505,3,27876,23218,32534,48,40,56,FR,France\n199504,3,27643,22818,32468,48,40,56,FR,France\n199503,3,24844,20391,29297,43,35,51,FR,France\n199502,3,23480,19249,27711,41,34,48,FR,France\n199501,3,26556,21916,31196,46,38,54,FR,France\n199452,3,22036,17495,26577,38,30,46,FR,France\n199451,3,26912,21750,32074,47,38,56,FR,France\n199450,3,28831,23470,34192,50,41,59,FR,France\n199449,3,21161,16559,25763,37,29,45,FR,France\n199448,3,18487,14456,22518,32,25,39,FR,France\n199447,3,15206,11578,18834,26,20,32,FR,France\n199446,3,14252,10525,17979,25,19,31,FR,France\n199445,3,12152,8448,15856,21,15,27,FR,France\n199444,3,11307,7688,14926,20,14,26,FR,France\n199443,3,11254,8002,14506,20,14,26,FR,France\n199442,3,14406,10653,18159,25,18,32,FR,France\n199441,3,14073,10341,17805,24,18,30,FR,France\n199440,3,15962,11850,20074,28,21,35,FR,France\n199439,3,15878,11643,20113,28,21,35,FR,France\n199438,3,15366,11100,19632,27,20,34,FR,France\n199437,3,5949,3561,8337,10,6,14,FR,France\n199436,3,2806,1133,4479,5,2,8,FR,France\n199435,3,4556,2358,6754,8,4,12,FR,France\n199434,3,3459,1444,5474,6,2,10,FR,France\n199433,3,4272,977,7567,7,1,13,FR,France\n199432,3,4786,1613,7959,8,2,14,FR,France\n199431,3,5027,1580,8474,9,3,15,FR,France\n199430,3,2100,520,3680,4,1,7,FR,France\n199429,3,1188,0,2384,2,0,4,FR,France\n199428,3,1581,316,2846,3,1,5,FR,France\n199427,3,713,0,1459,1,0,2,FR,France\n199426,3,990,80,1900,2,0,4,FR,France\n199425,3,5431,3222,7640,9,5,13,FR,France\n199424,3,6288,3723,8853,11,7,15,FR,France\n199423,3,6440,1052,11828,11,2,20,FR,France\n199422,3,845,0,2449,1,0,4,FR,France\n199421,3,2197,395,3999,4,1,7,FR,France\n199420,3,2217,852,3582,4,2,6,FR,France\n199419,3,1483,406,2560,3,1,5,FR,France\n199418,3,3705,1940,5470,6,3,9,FR,France\n199417,3,2288,1064,3512,4,2,6,FR,France\n199416,3,5156,3176,7136,9,6,12,FR,France\n199415,3,6952,4678,9226,12,8,16,FR,France\n199414,3,4671,2784,6558,8,5,11,FR,France\n199413,3,3343,1641,5045,6,3,9,FR,France\n199412,3,4305,2412,6198,7,4,10,FR,France\n199411,3,5399,3327,7471,9,5,13,FR,France\n199410,3,4548,2529,6567,8,4,12,FR,France\n199409,3,5635,3251,8019,10,6,14,FR,France\n199408,3,9539,6652,12426,17,12,22,FR,France\n199407,3,14639,11188,18090,25,19,31,FR,France\n199406,3,17308,13395,21221,30,23,37,FR,France\n199405,3,18489,14290,22688,32,25,39,FR,France\n199404,3,23712,19048,28376,41,33,49,FR,France\n199403,3,29882,24817,34947,52,43,61,FR,France\n199402,3,47402,41415,53389,82,72,92,FR,France\n199401,3,118119,108182,128056,205,188,222,FR,France\n199352,3,233137,218608,247666,406,381,431,FR,France\n199351,3,377472,359792,395152,658,627,689,FR,France\n199350,3,627639,607097,648181,1094,1058,1130,FR,France\n199349,3,898045,873419,922671,1565,1522,1608,FR,France\n199348,3,527582,507752,547412,920,885,955,FR,France\n199347,3,241371,226769,255973,421,396,446,FR,France\n199346,3,76034,68003,84065,133,119,147,FR,France\n199345,3,32289,27022,37556,56,47,65,FR,France\n199344,3,17832,14015,21649,31,24,38,FR,France\n199343,3,15098,11333,18863,26,19,33,FR,France\n199342,3,19187,14893,23481,33,26,40,FR,France\n199341,3,18285,14384,22186,32,25,39,FR,France\n199340,3,13805,10348,17262,24,18,30,FR,France\n199339,3,14783,11173,18393,26,20,32,FR,France\n199338,3,10492,7329,13655,18,12,24,FR,France\n199337,3,7023,4503,9543,12,8,16,FR,France\n199336,3,4361,2445,6277,8,5,11,FR,France\n199335,3,5589,3066,8112,10,6,14,FR,France\n199334,3,2984,1209,4759,5,2,8,FR,France\n199333,3,3217,758,5676,6,2,10,FR,France\n199332,3,3755,1051,6459,7,2,12,FR,France\n199331,3,4163,1768,6558,7,3,11,FR,France\n199330,3,4055,1907,6203,7,3,11,FR,France\n199329,3,3714,1668,5760,6,2,10,FR,France\n199328,3,1774,484,3064,3,1,5,FR,France\n199327,3,2574,918,4230,4,1,7,FR,France\n199326,3,3048,1450,4646,5,2,8,FR,France\n199325,3,8348,5260,11436,15,10,20,FR,France\n199324,3,6624,3747,9501,12,7,17,FR,France\n199323,3,7424,4302,10546,13,8,18,FR,France\n199322,3,3432,1849,5015,6,3,9,FR,France\n199321,3,5942,3670,8214,10,6,14,FR,France\n199320,3,5137,3157,7117,9,6,12,FR,France\n199319,3,4593,2725,6461,8,5,11,FR,France\n199318,3,5027,3075,6979,9,6,12,FR,France\n199317,3,8111,5138,11084,14,9,19,FR,France\n199316,3,24932,19468,30396,43,33,53,FR,France\n199315,3,22181,17147,27215,39,30,48,FR,France\n199314,3,38266,30865,45667,67,54,80,FR,France\n199313,3,62987,54506,71468,110,95,125,FR,France\n199312,3,63493,55956,71030,111,98,124,FR,France\n199311,3,80548,72628,88468,140,126,154,FR,France\n199310,3,127910,117688,138132,223,205,241,FR,France\n199309,3,184150,171378,196922,321,299,343,FR,France\n199308,3,222932,209051,236813,389,365,413,FR,France\n199307,3,248494,234936,262052,433,409,457,FR,France\n199306,3,286939,271830,302048,500,474,526,FR,France\n199305,3,255890,241516,270264,446,421,471,FR,France\n199304,3,193107,181261,204953,337,316,358,FR,France\n199303,3,147854,137256,158452,258,240,276,FR,France\n199302,3,90269,82164,98374,157,143,171,FR,France\n199301,3,75288,67244,83332,131,117,145,FR,France\n199253,3,56622,49107,64137,99,86,112,FR,France\n199252,3,49588,42568,56608,87,75,99,FR,France\n199251,3,41156,35024,47288,72,61,83,FR,France\n199250,3,40100,34699,45501,70,61,79,FR,France\n199249,3,39146,33847,44445,69,60,78,FR,France\n199248,3,32392,27499,37285,57,48,66,FR,France\n199247,3,26276,21797,30755,46,38,54,FR,France\n199246,3,22758,18462,27054,40,32,48,FR,France\n199245,3,22023,17804,26242,39,32,46,FR,France\n199244,3,27619,22945,32293,48,40,56,FR,France\n199243,3,24969,20704,29234,44,37,51,FR,France\n199242,3,29980,25261,34699,52,44,60,FR,France\n199241,3,24091,19953,28229,42,35,49,FR,France\n199240,3,17593,13885,21301,31,25,37,FR,France\n199239,3,13535,10301,16769,24,18,30,FR,France\n199238,3,9837,7106,12568,17,12,22,FR,France\n199237,3,7480,5130,9830,13,9,17,FR,France\n199236,3,5155,2958,7352,9,5,13,FR,France\n199235,3,6383,3687,9079,11,6,16,FR,France\n199234,3,2953,922,4984,5,1,9,FR,France\n199233,3,4046,1549,6543,7,3,11,FR,France\n199232,3,4963,2215,7711,9,4,14,FR,France\n199231,3,4233,1733,6733,7,3,11,FR,France\n199230,3,3091,1145,5037,5,2,8,FR,France\n199229,3,3586,1583,5589,6,2,10,FR,France\n199228,3,4179,2133,6225,7,3,11,FR,France\n199227,3,5568,3134,8002,10,6,14,FR,France\n199226,3,5886,3229,8543,10,5,15,FR,France\n199225,3,5304,2805,7803,9,5,13,FR,France\n199224,3,5928,3482,8374,10,6,14,FR,France\n199223,3,3914,1855,5973,7,3,11,FR,France\n199222,3,4899,2641,7157,9,5,13,FR,France\n199221,3,5059,2889,7229,9,5,13,FR,France\n199220,3,4308,2226,6390,8,4,12,FR,France\n199219,3,2982,1181,4783,5,2,8,FR,France\n199218,3,3887,1777,5997,7,3,11,FR,France\n199217,3,3614,1216,6012,6,2,10,FR,France\n199216,3,5460,2934,7986,10,6,14,FR,France\n199215,3,8642,5029,12255,15,9,21,FR,France\n199214,3,11346,7536,15156,20,13,27,FR,France\n199213,3,11693,8096,15290,20,14,26,FR,France\n199212,3,11752,7834,15670,21,14,28,FR,France\n199211,3,11689,7575,15803,20,13,27,FR,France\n199210,3,19224,12971,25477,34,23,45,FR,France\n199209,3,26629,20275,32983,47,36,58,FR,France\n199208,3,37667,30887,44447,66,54,78,FR,France\n199207,3,57312,48777,65847,100,85,115,FR,France\n199206,3,112450,99989,124911,197,175,219,FR,France\n199205,3,165474,151342,179606,290,265,315,FR,France\n199204,3,147959,133595,162323,259,234,284,FR,France\n199203,3,137893,122944,152842,241,215,267,FR,France\n199202,3,185852,166558,205146,325,291,359,FR,France\n199201,3,247688,222574,272802,434,390,478,FR,France\n199152,3,349815,325499,374131,615,572,658,FR,France\n199151,3,378413,355928,400898,666,626,706,FR,France\n199150,3,198721,182878,214564,350,322,378,FR,France\n199149,3,93903,82992,104814,165,146,184,FR,France\n199148,3,45173,37384,52962,79,65,93,FR,France\n199147,3,35691,28224,43158,63,50,76,FR,France\n199146,3,23685,17531,29839,42,31,53,FR,France\n199145,3,19565,13551,25579,34,23,45,FR,France\n199144,3,21571,15477,27665,38,27,49,FR,France\n199143,3,28842,21958,35726,51,39,63,FR,France\n199142,3,27483,20385,34581,48,36,60,FR,France\n199141,3,28185,20655,35715,50,37,63,FR,France\n199140,3,26740,16049,37431,47,28,66,FR,France\n199139,3,14373,8734,20012,25,15,35,FR,France\n199138,3,7460,3700,11220,13,6,20,FR,France\n199137,3,2429,434,4424,4,0,8,FR,France\n199136,3,2380,0,4882,4,0,8,FR,France\n199135,3,2372,0,5025,4,0,9,FR,France\n199134,3,2099,0,5104,4,0,9,FR,France\n199133,3,1654,0,4102,3,0,7,FR,France\n199132,3,625,0,2190,1,0,4,FR,France\n199131,3,2464,0,5830,4,0,10,FR,France\n199130,3,2382,0,6857,4,0,12,FR,France\n199129,3,3837,40,7634,7,0,14,FR,France\n199128,3,3297,152,6442,6,0,12,FR,France\n199127,3,3164,934,5394,6,2,10,FR,France\n199126,3,6376,3324,9428,11,6,16,FR,France\n199125,3,8218,4776,11660,14,8,20,FR,France\n199124,3,8223,4660,11786,14,8,20,FR,France\n199123,3,6801,3596,10006,12,6,18,FR,France\n199122,3,6050,2682,9418,11,5,17,FR,France\n199121,3,6391,3385,9397,11,6,16,FR,France\n199120,3,8633,4683,12583,15,8,22,FR,France\n199119,3,7785,3986,11584,14,7,21,FR,France\n199118,3,10856,6457,15255,19,11,27,FR,France\n199117,3,15603,10950,20256,27,19,35,FR,France\n199116,3,15665,11184,20146,28,20,36,FR,France\n199115,3,15062,10715,19409,26,18,34,FR,France\n199114,3,27862,21583,34141,49,38,60,FR,France\n199113,3,32179,25829,38529,57,46,68,FR,France\n199112,3,27873,22312,33434,49,39,59,FR,France\n199111,3,46186,38876,53496,81,68,94,FR,France\n199110,3,88750,77784,99716,156,137,175,FR,France\n199109,3,139093,124326,153860,245,219,271,FR,France\n199108,3,216369,198630,234108,381,350,412,FR,France\n199107,3,208836,191789,225883,367,337,397,FR,France\n199106,3,134737,121280,148194,237,213,261,FR,France\n199105,3,73564,62716,84412,129,110,148,FR,France\n199104,3,48253,39031,57475,85,69,101,FR,France\n199103,3,29382,22258,36506,52,39,65,FR,France\n199102,3,29759,22044,37474,52,38,66,FR,France\n199101,3,42927,33706,52148,76,60,92,FR,France\n199052,3,41262,31607,50917,73,56,90,FR,France\n199051,3,46924,37544,56304,83,66,100,FR,France\n199050,3,44125,36137,52113,78,64,92,FR,France\n199049,3,38379,30603,46155,68,54,82,FR,France\n199048,3,29571,22315,36827,52,39,65,FR,France\n199047,3,23358,15890,30826,41,28,54,FR,France\n199046,3,20246,7930,32562,36,14,58,FR,France\n199045,3,17571,11591,23551,31,20,42,FR,France\n199044,3,16182,10305,22059,29,19,39,FR,France\n199043,3,17579,11588,23570,31,20,42,FR,France\n199042,3,13011,7875,18147,23,14,32,FR,France\n199041,3,19723,13330,26116,35,24,46,FR,France\n199040,3,20433,14614,26252,36,26,46,FR,France\n199039,3,15618,10315,20921,28,19,37,FR,France\n199038,3,11146,6197,16095,20,11,29,FR,France\n199037,3,4051,1022,7080,7,2,12,FR,France\n199036,3,2542,124,4960,4,0,8,FR,France\n199035,3,934,0,2681,2,0,5,FR,France\n199034,3,201,0,595,0,0,1,FR,France\n199033,3,0,0,0,0,0,0,FR,France\n199032,3,1399,0,3849,2,0,6,FR,France\n199031,3,881,0,2206,2,0,4,FR,France\n199030,3,425,0,1262,1,0,2,FR,France\n199029,3,1077,0,2643,2,0,5,FR,France\n199028,3,959,0,2252,2,0,4,FR,France\n199027,3,2948,793,5103,5,1,9,FR,France\n199026,3,7236,2651,11821,13,5,21,FR,France\n199025,3,7879,3136,12622,14,6,22,FR,France\n199024,3,5727,2460,8994,10,4,16,FR,France\n199023,3,3655,1043,6267,6,1,11,FR,France\n199022,3,4196,1292,7100,7,2,12,FR,France\n199021,3,1004,0,2367,2,0,4,FR,France\n199020,3,4506,1771,7241,8,3,13,FR,France\n199019,3,5897,2440,9354,10,4,16,FR,France\n199018,3,1738,141,3335,3,0,6,FR,France\n199017,3,5278,2197,8359,9,4,14,FR,France\n199016,3,8129,3754,12504,14,6,22,FR,France\n199015,3,11707,5831,17583,21,11,31,FR,France\n199014,3,12862,8177,17547,23,15,31,FR,France\n199013,3,21879,15088,28670,39,27,51,FR,France\n199012,3,17035,11135,22935,30,20,40,FR,France\n199011,3,20018,14311,25725,35,25,45,FR,France\n199010,3,16294,11045,21543,29,20,38,FR,France\n199009,3,21793,15460,28126,39,28,50,FR,France\n199008,3,26110,19342,32878,46,34,58,FR,France\n199007,3,61742,49720,73764,109,88,130,FR,France\n199006,3,399984,353345,446623,707,625,789,FR,France\n199005,3,161765,146354,177176,286,259,313,FR,France\n199004,3,287771,267698,307844,509,474,544,FR,France\n199003,3,315466,296550,334382,558,525,591,FR,France\n199002,3,345060,326087,364033,610,576,644,FR,France\n199001,3,483600,460913,506287,855,815,895,FR,France\n198952,3,581149,556023,606275,1035,990,1080,FR,France\n198951,3,821540,793846,849234,1463,1414,1512,FR,France\n198950,3,749283,723633,774933,1334,1288,1380,FR,France\n198949,3,358043,340053,376033,638,606,670,FR,France\n198948,3,119087,108253,129921,212,193,231,FR,France\n198947,3,40963,33897,48029,73,60,86,FR,France\n198946,3,23547,17952,29142,42,32,52,FR,France\n198945,3,22711,16999,28423,40,30,50,FR,France\n198944,3,23405,17475,29335,42,31,53,FR,France\n198943,3,29549,23287,35811,53,42,64,FR,France\n198942,3,39410,32172,46648,70,57,83,FR,France\n198941,3,43763,35245,52281,78,63,93,FR,France\n198940,3,31453,24288,38618,56,43,69,FR,France\n198939,3,24622,18425,30819,44,33,55,FR,France\n198938,3,18296,13483,23109,33,24,42,FR,France\n198937,3,12022,8082,15962,21,14,28,FR,France\n198936,3,4769,2299,7239,8,4,12,FR,France\n198935,3,4661,1696,7626,8,3,13,FR,France\n198934,3,6039,2185,9893,11,4,18,FR,France\n198933,3,7940,3858,12022,14,7,21,FR,France\n198932,3,7114,2361,11867,13,5,21,FR,France\n198931,3,2721,0,5478,5,0,10,FR,France\n198930,3,3168,561,5775,6,1,11,FR,France\n198929,3,3909,1504,6314,7,3,11,FR,France\n198928,3,1284,105,2463,2,0,4,FR,France\n198927,3,3641,1350,5932,6,2,10,FR,France\n198926,3,5753,2885,8621,10,5,15,FR,France\n198925,3,6299,3454,9144,11,6,16,FR,France\n198924,3,6337,3537,9137,11,6,16,FR,France\n198923,3,11779,7984,15574,21,14,28,FR,France\n198922,3,9104,4764,13444,16,8,24,FR,France\n198921,3,9554,4316,14792,17,8,26,FR,France\n198920,3,6093,1023,11163,11,2,20,FR,France\n198919,3,0,,,0,,,FR,France\n198918,3,13452,1365,25539,24,2,46,FR,France\n198917,3,10949,7147,14751,19,12,26,FR,France\n198916,3,10908,7494,14322,19,13,25,FR,France\n198915,3,9667,6209,13125,17,11,23,FR,France\n198914,3,15230,10469,19991,27,19,35,FR,France\n198913,3,10564,6767,14361,19,12,26,FR,France\n198912,3,13419,9542,17296,24,17,31,FR,France\n198911,3,16633,12140,21126,30,22,38,FR,France\n198910,3,12387,8750,16024,22,16,28,FR,France\n198909,3,12895,9183,16607,23,16,30,FR,France\n198908,3,19746,15258,24234,35,27,43,FR,France\n198907,3,27277,21760,32794,49,39,59,FR,France\n198906,3,47844,40320,55368,85,72,98,FR,France\n198905,3,52840,45665,60015,94,81,107,FR,France\n198904,3,54942,47750,62134,98,85,111,FR,France\n198903,3,66010,58065,73955,118,104,132,FR,France\n198902,3,112284,102003,122565,200,182,218,FR,France\n198901,3,202266,188305,216227,360,335,385,FR,France\n198852,3,467971,447033,488909,837,800,874,FR,France\n198851,3,872748,846468,899028,1562,1515,1609,FR,France\n198850,3,1001824,974799,1028849,1793,1745,1841,FR,France\n198849,3,966523,940068,992978,1729,1682,1776,FR,France\n198848,3,637811,614785,660837,1141,1100,1182,FR,France\n198847,3,246062,231234,260890,440,413,467,FR,France\n198846,3,92484,83160,101808,165,148,182,FR,France\n198845,3,53940,46148,61732,97,83,111,FR,France\n198844,3,42106,35336,48876,75,63,87,FR,France\n198843,3,38252,31909,44595,68,57,79,FR,France\n198842,3,45495,38467,52523,81,68,94,FR,France\n198841,3,46336,39344,53328,83,70,96,FR,France\n198840,3,39882,33507,46257,71,60,82,FR,France\n198839,3,43730,36755,50705,78,66,90,FR,France\n198838,3,35243,29367,41119,63,52,74,FR,France\n198837,3,15537,11911,19163,28,22,34,FR,France\n198836,3,7539,4840,10238,13,8,18,FR,France\n198835,3,7797,4762,10832,14,9,19,FR,France\n198834,3,4950,2005,7895,9,4,14,FR,France\n198833,3,7937,3861,12013,14,7,21,FR,France\n198832,3,7033,2595,11471,13,5,21,FR,France\n198831,3,8758,3591,13925,16,7,25,FR,France\n198830,3,4205,1224,7186,8,3,13,FR,France\n198829,3,6103,1013,11193,11,2,20,FR,France\n198828,3,8562,3483,13641,15,6,24,FR,France\n198827,3,4690,2196,7184,8,4,12,FR,France\n198826,3,7065,3905,10225,13,7,19,FR,France\n198825,3,7657,4664,10650,14,9,19,FR,France\n198824,3,6676,3978,9374,12,7,17,FR,France\n198823,3,8695,5755,11635,16,11,21,FR,France\n198822,3,11566,8282,14850,21,15,27,FR,France\n198821,3,11107,7742,14472,20,14,26,FR,France\n198820,3,14118,10223,18013,25,18,32,FR,France\n198819,3,18260,13847,22673,33,25,41,FR,France\n198818,3,20415,16281,24549,37,30,44,FR,France\n198817,3,21750,17436,26064,39,31,47,FR,France\n198816,3,33730,27496,39964,60,49,71,FR,France\n198815,3,70616,61754,79478,126,110,142,FR,France\n198814,3,123868,113211,134525,222,203,241,FR,France\n198813,3,193710,181519,205901,347,325,369,FR,France\n198812,3,283445,268834,298056,507,481,533,FR,France\n198811,3,316175,300858,331492,566,539,593,FR,France\n198810,3,235142,222004,248280,421,397,445,FR,France\n198809,3,135564,125263,145865,243,225,261,FR,France\n198808,3,87753,78449,97057,157,140,174,FR,France\n198807,3,77099,68423,85775,138,122,154,FR,France\n198806,3,69349,61502,77196,124,110,138,FR,France\n198805,3,72705,64952,80458,130,116,144,FR,France\n198804,3,72818,64944,80692,130,116,144,FR,France\n198803,3,68869,60922,76816,123,109,137,FR,France\n198802,3,59743,51907,67579,107,93,121,FR,France\n198801,3,60929,52573,69285,109,94,124,FR,France\n198753,3,47257,38170,56344,85,69,101,FR,France\n198752,3,11935,2353,21517,21,4,38,FR,France\n198751,3,47744,34266,61222,86,62,110,FR,France\n198750,3,57767,50181,65353,104,90,118,FR,France\n198749,3,49380,42461,56299,89,77,101,FR,France\n198748,3,41871,35115,48627,75,63,87,FR,France\n198747,3,29688,23465,35911,53,42,64,FR,France\n198746,3,37216,30199,44233,67,54,80,FR,France\n198745,3,35456,29024,41888,64,52,76,FR,France\n198744,3,41024,33829,48219,74,61,87,FR,France\n198743,3,46356,38370,54342,83,69,97,FR,France\n198742,3,38021,30236,45806,68,54,82,FR,France\n198741,3,42021,32016,52026,76,58,94,FR,France\n198740,3,24641,15930,33352,44,28,60,FR,France\n198739,3,32328,23548,41108,58,42,74,FR,France\n198738,3,16782,11870,21694,30,21,39,FR,France\n198737,3,11208,6542,15874,20,12,28,FR,France\n198736,3,7906,4014,11798,14,7,21,FR,France\n198735,3,6149,2970,9328,11,5,17,FR,France\n198734,3,6631,2734,10528,12,5,19,FR,France\n198733,3,6404,1834,10974,12,4,20,FR,France\n198732,3,7215,2353,12077,13,4,22,FR,France\n198731,3,8233,3655,12811,15,7,23,FR,France\n198730,3,4642,1301,7983,8,2,14,FR,France\n198729,3,4389,913,7865,8,2,14,FR,France\n198728,3,2702,138,5266,5,0,10,FR,France\n198727,3,10171,5904,14438,18,10,26,FR,France\n198726,3,12341,7824,16858,22,14,30,FR,France\n198725,3,23413,15490,31336,42,28,56,FR,France\n198724,3,11289,7282,15296,20,13,27,FR,France\n198723,3,15857,10943,20771,29,20,38,FR,France\n198722,3,14887,9743,20031,27,18,36,FR,France\n198721,3,17619,12649,22589,32,23,41,FR,France\n198720,3,10344,6454,14234,19,12,26,FR,France\n198719,3,12539,7943,17135,23,15,31,FR,France\n198718,3,16095,10330,21860,29,19,39,FR,France\n198717,3,21256,14850,27662,38,26,50,FR,France\n198716,3,32416,25100,39732,58,45,71,FR,France\n198715,3,44292,36456,52128,80,66,94,FR,France\n198714,3,50642,41866,59418,91,75,107,FR,France\n198713,3,62246,52749,71743,112,95,129,FR,France\n198712,3,59625,50653,68597,107,91,123,FR,France\n198711,3,53561,45035,62087,96,81,111,FR,France\n198710,3,93067,80519,105615,167,144,190,FR,France\n198709,3,147006,133519,160493,264,240,288,FR,France\n198708,3,217779,202179,233379,391,363,419,FR,France\n198707,3,288180,270718,305642,518,487,549,FR,France\n198706,3,296702,279051,314353,533,501,565,FR,France\n198705,3,236046,219483,252609,424,394,454,FR,France\n198704,3,158333,143625,173041,285,259,311,FR,France\n198703,3,103841,91699,115983,187,165,209,FR,France\n198702,3,74213,64014,84412,133,115,151,FR,France\n198701,3,69745,59207,80283,125,106,144,FR,France\n198652,3,76263,64958,87568,138,118,158,FR,France\n198651,3,72920,63047,82793,132,114,150,FR,France\n198650,3,73413,64019,82807,133,116,150,FR,France\n198649,3,56296,48229,64363,102,87,117,FR,France\n198648,3,46031,38578,53484,83,70,96,FR,France\n198647,3,36740,29710,43770,66,53,79,FR,France\n198646,3,32134,25327,38941,58,46,70,FR,France\n198645,3,38964,31382,46546,70,56,84,FR,France\n198644,3,28646,22048,35244,52,40,64,FR,France\n198643,3,27532,20842,34222,50,38,62,FR,France\n198642,3,31815,25124,38506,57,45,69,FR,France\n198641,3,32864,25939,39789,59,47,71,FR,France\n198640,3,33516,26776,40256,60,48,72,FR,France\n198639,3,28665,22477,34853,52,41,63,FR,France\n198638,3,26615,20479,32751,48,37,59,FR,France\n198637,3,15998,10802,21194,29,20,38,FR,France\n198636,3,9182,4982,13382,17,9,25,FR,France\n198635,3,10587,4470,16704,19,8,30,FR,France\n198634,3,5762,858,10666,10,1,19,FR,France\n198633,3,3115,554,5676,6,1,11,FR,France\n198632,3,1027,0,2311,2,0,4,FR,France\n198631,3,2247,0,4574,4,0,8,FR,France\n198630,3,2346,141,4551,4,0,8,FR,France\n198629,3,3654,931,6377,7,2,12,FR,France\n198628,3,2327,0,5318,4,0,9,FR,France\n198627,3,7529,3353,11705,14,6,22,FR,France\n198626,3,8778,5106,12450,16,9,23,FR,France\n198625,3,11075,6804,15346,20,12,28,FR,France\n198624,3,11160,7252,15068,20,13,27,FR,France\n198623,3,14372,9896,18848,26,18,34,FR,France\n198622,3,9717,5594,13840,18,11,25,FR,France\n198621,3,14460,9575,19345,26,17,35,FR,France\n198620,3,17133,12106,22160,31,22,40,FR,France\n198619,3,22177,16008,28346,40,29,51,FR,France\n198618,3,31736,24115,39357,57,43,71,FR,France\n198617,3,34874,27440,42308,63,50,76,FR,France\n198616,3,41196,32894,49498,74,59,89,FR,France\n198615,3,42659,33537,51781,77,61,93,FR,France\n198614,3,49792,39728,59856,90,72,108,FR,France\n198613,3,87249,63562,110936,157,114,200,FR,France\n198612,3,124777,97237,152317,225,175,275,FR,France\n198611,3,168146,151035,185257,303,272,334,FR,France\n198610,3,257305,231225,283385,464,417,511,FR,France\n198609,3,321140,296644,345636,580,536,624,FR,France\n198608,3,448786,419219,478353,810,757,863,FR,France\n198607,3,490723,460150,521296,886,831,941,FR,France\n198606,3,439300,411764,466836,793,743,843,FR,France\n198605,3,364727,339868,389586,658,613,703,FR,France\n198604,3,348509,322464,374554,629,582,676,FR,France\n198603,3,271539,248654,294424,490,449,531,FR,France\n198602,3,178138,159344,196932,322,288,356,FR,France\n198601,3,112614,96539,128689,203,174,232,FR,France\n198552,3,86452,72250,100654,157,131,183,FR,France\n198551,3,114666,99538,129794,208,181,235,FR,France\n198550,3,86031,73604,98458,156,133,179,FR,France\n198549,3,65931,55326,76536,120,101,139,FR,France\n198548,3,68291,57581,79001,124,105,143,FR,France\n198547,3,66177,55221,77133,120,100,140,FR,France\n198546,3,70534,58788,82280,128,107,149,FR,France\n198545,3,57514,47167,67861,104,85,123,FR,France\n198544,3,67356,55744,78968,122,101,143,FR,France\n198543,3,87402,74208,100596,158,134,182,FR,France\n198542,3,76218,64604,87832,138,117,159,FR,France\n198541,3,45712,36755,54669,83,67,99,FR,France\n198540,3,49739,40335,59143,90,73,107,FR,France\n198539,3,39819,31234,48404,72,56,88,FR,France\n198538,3,27605,20614,34596,50,37,63,FR,France\n198537,3,22219,15626,28812,40,28,52,FR,France\n198536,3,27986,18992,36980,51,35,67,FR,France\n198535,3,30215,18546,41884,55,34,76,FR,France\n198534,3,40389,24786,55992,73,45,101,FR,France\n198533,3,22611,8819,36403,41,16,66,FR,France\n198532,3,7488,1851,13125,14,4,24,FR,France\n198531,3,16958,8479,25437,31,16,46,FR,France\n198530,3,11598,5507,17689,21,10,32,FR,France\n198529,3,13054,6474,19634,24,12,36,FR,France\n198528,3,14588,7659,21517,26,13,39,FR,France\n198527,3,19670,11761,27579,36,22,50,FR,France\n198526,3,18609,12637,24581,34,23,45,FR,France\n198525,3,19362,12454,26270,35,22,48,FR,France\n198524,3,19855,13577,26133,36,25,47,FR,France\n198523,3,19373,10010,28736,35,18,52,FR,France\n198522,3,24099,17190,31008,44,31,57,FR,France\n198521,3,26096,19621,32571,47,35,59,FR,France\n198520,3,27896,20885,34907,51,38,64,FR,France\n198519,3,43154,32821,53487,78,59,97,FR,France\n198518,3,40555,29935,51175,74,55,93,FR,France\n198517,3,34053,24366,43740,62,44,80,FR,France\n198516,3,50362,36451,64273,91,66,116,FR,France\n198515,3,63881,45538,82224,116,83,149,FR,France\n198514,3,134545,114400,154690,244,207,281,FR,France\n198513,3,197206,176080,218332,357,319,395,FR,France\n198512,3,245240,223304,267176,445,405,485,FR,France\n198511,3,276205,252399,300011,501,458,544,FR,France\n198510,3,353231,326279,380183,640,591,689,FR,France\n198509,3,369895,341109,398681,670,618,722,FR,France\n198508,3,389886,359529,420243,707,652,762,FR,France\n198507,3,471852,432599,511105,855,784,926,FR,France\n198506,3,565825,518011,613639,1026,939,1113,FR,France\n198505,3,637302,592795,681809,1155,1074,1236,FR,France\n198504,3,424937,390794,459080,770,708,832,FR,France\n198503,3,213901,174689,253113,388,317,459,FR,France\n198502,3,97586,80949,114223,177,147,207,FR,France\n198501,3,85489,65918,105060,155,120,190,FR,France\n198452,3,84830,60602,109058,154,110,198,FR,France\n198451,3,101726,80242,123210,185,146,224,FR,France\n198450,3,123680,101401,145959,225,184,266,FR,France\n198449,3,101073,81684,120462,184,149,219,FR,France\n198448,3,78620,60634,96606,143,110,176,FR,France\n198447,3,72029,54274,89784,131,99,163,FR,France\n198446,3,87330,67686,106974,159,123,195,FR,France\n198445,3,135223,101414,169032,246,184,308,FR,France\n198444,3,68422,20056,116788,125,37,213,FR,France\n' \ No newline at end of file diff --git a/module3/data_7.csv b/module3/data_7.csv new file mode 100644 index 0000000000000000000000000000000000000000..c0201761a330c8a457b40ceca779ebc2badd85a5 --- /dev/null +++ b/module3/data_7.csv @@ -0,0 +1 @@ +b'# @source="r\xe9seau Sentinelles, INSERM, Sorbonne Universit\xe9, http://www.sentiweb.fr", @meta={"period":[198444,202221],"geo":["PAY","1"],"geo_ref":"insee","indicator":"3","type":"all","conf_int":true,"compact":false}, @date=2022-06-04T12:28:03+02:00\nweek,indicator,inc,inc_low,inc_up,inc100,inc100_low,inc100_up,geo_insee,geo_name\n202221,3,17538,12255,22821,26,18,34,FR,France\n202220,3,20413,16271,24555,31,25,37,FR,France\n202219,3,17874,14068,21680,27,21,33,FR,France\n202218,3,30353,25089,35617,46,38,54,FR,France\n202217,3,36006,30373,41639,54,46,62,FR,France\n202216,3,49949,42836,57062,75,64,86,FR,France\n202215,3,100806,90824,110788,152,137,167,FR,France\n202214,3,155441,143891,166991,234,217,251,FR,France\n202213,3,191914,179558,204270,289,270,308,FR,France\n202212,3,166224,155035,177413,251,234,268,FR,France\n202211,3,122849,113306,132392,185,171,199,FR,France\n202210,3,87904,79741,96067,133,121,145,FR,France\n202209,3,50182,43958,56406,76,67,85,FR,France\n202208,3,30963,25942,35984,47,39,55,FR,France\n202207,3,34882,29446,40318,53,45,61,FR,France\n202206,3,46623,40398,52848,70,61,79,FR,France\n202205,3,62970,56043,69897,95,85,105,FR,France\n202204,3,72209,64804,79614,109,98,120,FR,France\n202203,3,74613,67144,82082,113,102,124,FR,France\n202202,3,55920,49511,62329,84,74,94,FR,France\n202201,3,57629,50699,64559,87,77,97,FR,France\n202152,3,54349,47029,61669,82,71,93,FR,France\n202151,3,41698,35359,48037,63,53,73,FR,France\n202150,3,38117,32497,43737,58,49,67,FR,France\n202149,3,40168,34716,45620,61,53,69,FR,France\n202148,3,41842,36364,47320,63,55,71,FR,France\n202147,3,36598,31338,41858,55,47,63,FR,France\n202146,3,30059,25302,34816,46,39,53,FR,France\n202145,3,20364,16564,24164,31,25,37,FR,France\n202144,3,18999,15042,22956,29,23,35,FR,France\n202143,3,27040,21935,32145,41,33,49,FR,France\n202142,3,28343,23382,33304,43,35,51,FR,France\n202141,3,25043,20586,29500,38,31,45,FR,France\n202140,3,26286,21842,30730,40,33,47,FR,France\n202139,3,22155,18014,26296,34,28,40,FR,France\n202138,3,15614,12310,18918,24,19,29,FR,France\n202137,3,13673,10404,16942,21,16,26,FR,France\n202136,3,10289,7505,13073,16,12,20,FR,France\n202135,3,12609,9282,15936,19,14,24,FR,France\n202134,3,13081,9540,16622,20,15,25,FR,France\n202133,3,10392,7042,13742,16,11,21,FR,France\n202132,3,15586,11009,20163,24,17,31,FR,France\n202131,3,18855,13664,24046,29,21,37,FR,France\n202130,3,13991,9695,18287,21,14,28,FR,France\n202129,3,13626,9618,17634,21,15,27,FR,France\n202128,3,8636,5430,11842,13,8,18,FR,France\n202127,3,10693,6838,14548,16,10,22,FR,France\n202126,3,7086,4109,10063,11,6,16,FR,France\n202125,3,7942,5540,10344,12,8,16,FR,France\n202124,3,4855,3011,6699,7,4,10,FR,France\n202123,3,6710,4455,8965,10,7,13,FR,France\n202122,3,7879,5495,10263,12,8,16,FR,France\n202121,3,7827,5403,10251,12,8,16,FR,France\n202120,3,10278,7540,13016,16,12,20,FR,France\n202119,3,9539,6860,12218,14,10,18,FR,France\n202118,3,12135,9165,15105,18,14,22,FR,France\n202117,3,12058,8891,15225,18,13,23,FR,France\n202116,3,16505,12735,20275,25,19,31,FR,France\n202115,3,19306,15398,23214,29,23,35,FR,France\n202114,3,21073,17099,25047,32,26,38,FR,France\n202113,3,26413,22094,30732,40,33,47,FR,France\n202112,3,30658,25919,35397,46,39,53,FR,France\n202111,3,24988,20718,29258,38,32,44,FR,France\n202110,3,19539,15951,23127,30,25,35,FR,France\n202109,3,17572,13926,21218,27,21,33,FR,France\n202108,3,20882,16907,24857,32,26,38,FR,France\n202107,3,22393,18303,26483,34,28,40,FR,France\n202106,3,23183,19134,27232,35,29,41,FR,France\n202105,3,22426,18445,26407,34,28,40,FR,France\n202104,3,25804,21491,30117,39,32,46,FR,France\n202103,3,21810,17894,25726,33,27,39,FR,France\n202102,3,17320,13906,20734,26,21,31,FR,France\n202101,3,21799,17778,25820,33,27,39,FR,France\n202053,3,21220,16498,25942,32,25,39,FR,France\n202052,3,16428,12285,20571,25,19,31,FR,France\n202051,3,21619,17370,25868,33,27,39,FR,France\n202050,3,16845,13220,20470,26,20,32,FR,France\n202049,3,12939,9923,15955,20,15,25,FR,France\n202048,3,13804,10641,16967,21,16,26,FR,France\n202047,3,19085,15285,22885,29,23,35,FR,France\n202046,3,24801,20503,29099,38,31,45,FR,France\n202045,3,42516,36857,48175,65,56,74,FR,France\n202044,3,44567,38521,50613,68,59,77,FR,France\n202043,3,43799,37581,50017,67,58,76,FR,France\n202042,3,35183,29847,40519,53,45,61,FR,France\n202041,3,27926,23251,32601,42,35,49,FR,France\n202040,3,20443,16381,24505,31,25,37,FR,France\n202039,3,19810,15900,23720,30,24,36,FR,France\n202038,3,25559,21141,29977,39,32,46,FR,France\n202037,3,18485,14649,22321,28,22,34,FR,France\n202036,3,10390,7646,13134,16,12,20,FR,France\n202035,3,9918,6842,12994,15,10,20,FR,France\n202034,3,6084,3090,9078,9,4,14,FR,France\n202033,3,6106,3411,8801,9,5,13,FR,France\n202032,3,5918,3330,8506,9,5,13,FR,France\n202031,3,4351,2269,6433,7,4,10,FR,France\n202030,3,8179,5442,10916,12,8,16,FR,France\n202029,3,8687,5860,11514,13,9,17,FR,France\n202028,3,8325,5688,10962,13,9,17,FR,France\n202027,3,4066,2406,5726,6,3,9,FR,France\n202026,3,4039,2389,5689,6,3,9,FR,France\n202025,3,2853,1488,4218,4,2,6,FR,France\n202024,3,3058,1690,4426,5,3,7,FR,France\n202023,3,4168,2468,5868,6,3,9,FR,France\n202022,3,3580,1947,5213,5,3,7,FR,France\n202021,3,6114,4026,8202,9,6,12,FR,France\n202020,3,9315,6775,11855,14,10,18,FR,France\n202019,3,11679,8722,14636,18,14,22,FR,France\n202018,3,16398,12851,19945,25,20,30,FR,France\n202017,3,18082,14454,21710,27,21,33,FR,France\n202016,3,24165,19893,28437,37,31,43,FR,France\n202015,3,41049,35377,46721,62,53,71,FR,France\n202014,3,71666,64531,78801,109,98,120,FR,France\n202013,3,107742,99187,116297,164,151,177,FR,France\n202012,3,107283,98610,115956,163,150,176,FR,France\n202011,3,112943,104468,121418,172,159,185,FR,France\n202010,3,105145,96812,113478,160,147,173,FR,France\n202009,3,110696,102066,119326,168,155,181,FR,France\n202008,3,143753,133984,153522,218,203,233,FR,France\n202007,3,183610,172812,194408,279,263,295,FR,France\n202006,3,206669,195481,217857,314,297,331,FR,France\n202005,3,187957,177445,198469,285,269,301,FR,France\n202004,3,122331,113492,131170,186,173,199,FR,France\n202003,3,78413,71330,85496,119,108,130,FR,France\n202002,3,53614,47654,59574,81,72,90,FR,France\n202001,3,36850,31608,42092,56,48,64,FR,France\n201952,3,28135,23220,33050,43,36,50,FR,France\n201951,3,29786,25042,34530,45,38,52,FR,France\n201950,3,34223,29156,39290,52,44,60,FR,France\n201949,3,25662,21414,29910,39,33,45,FR,France\n201948,3,22367,18055,26679,34,27,41,FR,France\n201947,3,18669,14759,22579,28,22,34,FR,France\n201946,3,16030,12567,19493,24,19,29,FR,France\n201945,3,10138,7160,13116,15,10,20,FR,France\n201944,3,7822,5010,10634,12,8,16,FR,France\n201943,3,9487,6448,12526,14,9,19,FR,France\n201942,3,7747,5243,10251,12,8,16,FR,France\n201941,3,7122,4720,9524,11,7,15,FR,France\n201940,3,8505,5784,11226,13,9,17,FR,France\n201939,3,7091,4462,9720,11,7,15,FR,France\n201938,3,4897,2891,6903,7,4,10,FR,France\n201937,3,3172,1367,4977,5,2,8,FR,France\n201936,3,2295,728,3862,3,1,5,FR,France\n201935,3,1010,2,2018,2,0,4,FR,France\n201934,3,1672,279,3065,3,1,5,FR,France\n201933,3,1593,68,3118,2,0,4,FR,France\n201932,3,1592,71,3113,2,0,4,FR,France\n201931,3,2337,695,3979,4,2,6,FR,France\n201930,3,1944,415,3473,3,1,5,FR,France\n201929,3,2096,420,3772,3,0,6,FR,France\n201928,3,1195,125,2265,2,0,4,FR,France\n201927,3,2466,848,4084,4,2,6,FR,France\n201926,3,1798,402,3194,3,1,5,FR,France\n201925,3,1544,389,2699,2,0,4,FR,France\n201924,3,876,17,1735,1,0,2,FR,France\n201923,3,2004,748,3260,3,1,5,FR,France\n201922,3,2181,602,3760,3,1,5,FR,France\n201921,3,2585,1102,4068,4,2,6,FR,France\n201920,3,2891,1202,4580,4,1,7,FR,France\n201919,3,3221,1509,4933,5,2,8,FR,France\n201918,3,1385,278,2492,2,0,4,FR,France\n201917,3,3166,1348,4984,5,2,8,FR,France\n201916,3,3842,1973,5711,6,3,9,FR,France\n201915,3,5932,3669,8195,9,6,12,FR,France\n201914,3,12675,9167,16183,19,14,24,FR,France\n201913,3,16513,12530,20496,25,19,31,FR,France\n201912,3,22184,17786,26582,34,27,41,FR,France\n201911,3,31553,26556,36550,48,40,56,FR,France\n201910,3,49742,43268,56216,76,66,86,FR,France\n201909,3,88354,79564,97144,134,121,147,FR,France\n201908,3,172604,160024,185184,262,243,281,FR,France\n201907,3,307338,291220,323456,467,443,491,FR,France\n201906,3,394286,376782,411790,599,572,626,FR,France\n201905,3,355785,339295,372275,540,515,565,FR,France\n201904,3,241090,227261,254919,366,345,387,FR,France\n201903,3,147063,135890,158236,223,206,240,FR,France\n201902,3,75548,67632,83464,115,103,127,FR,France\n201901,3,50295,43525,57065,76,66,86,FR,France\n201852,3,37903,31375,44431,58,48,68,FR,France\n201851,3,39259,32977,45541,60,50,70,FR,France\n201850,3,27781,22638,32924,42,34,50,FR,France\n201849,3,19738,15481,23995,30,24,36,FR,France\n201848,3,19501,15275,23727,30,24,36,FR,France\n201847,3,15949,12105,19793,24,18,30,FR,France\n201846,3,11278,7957,14599,17,12,22,FR,France\n201845,3,11065,7791,14339,17,12,22,FR,France\n201844,3,6586,3875,9297,10,6,14,FR,France\n201843,3,6550,3988,9112,10,6,14,FR,France\n201842,3,7787,5129,10445,12,8,16,FR,France\n201841,3,8048,5098,10998,12,8,16,FR,France\n201840,3,7409,4717,10101,11,7,15,FR,France\n201839,3,7174,4235,10113,11,7,15,FR,France\n201838,3,7349,4399,10299,11,7,15,FR,France\n201837,3,4915,2386,7444,7,3,11,FR,France\n201836,3,3215,1349,5081,5,2,8,FR,France\n201835,3,1506,239,2773,2,0,4,FR,France\n201834,3,1368,116,2620,2,0,4,FR,France\n201833,3,1962,5,3919,3,0,6,FR,France\n201832,3,1839,183,3495,3,0,6,FR,France\n201831,3,2048,242,3854,3,0,6,FR,France\n201830,3,1951,202,3700,3,0,6,FR,France\n201829,3,1951,252,3650,3,0,6,FR,France\n201828,3,1654,52,3256,3,1,5,FR,France\n201827,3,3266,1145,5387,5,2,8,FR,France\n201826,3,3758,1493,6023,6,3,9,FR,France\n201825,3,4580,2220,6940,7,3,11,FR,France\n201824,3,3223,1351,5095,5,2,8,FR,France\n201823,3,1207,136,2278,2,0,4,FR,France\n201822,3,3202,1330,5074,5,2,8,FR,France\n201821,3,2537,763,4311,4,1,7,FR,France\n201820,3,2694,967,4421,4,1,7,FR,France\n201819,3,1025,0,2098,2,0,4,FR,France\n201818,3,3541,1416,5666,5,2,8,FR,France\n201817,3,2573,1003,4143,4,2,6,FR,France\n201816,3,4818,2724,6912,7,4,10,FR,France\n201815,3,16311,12168,20454,25,19,31,FR,France\n201814,3,22666,18092,27240,35,28,42,FR,France\n201813,3,32680,25536,39824,50,39,61,FR,France\n201812,3,52040,44590,59490,79,68,90,FR,France\n201811,3,65159,56506,73812,99,86,112,FR,France\n201810,3,93512,83989,103035,142,128,156,FR,France\n201809,3,108545,98645,118445,165,150,180,FR,France\n201808,3,131870,120950,142790,201,184,218,FR,France\n201807,3,141138,130177,152099,215,198,232,FR,France\n201806,3,138810,128164,149456,211,195,227,FR,France\n201805,3,157839,146646,169032,240,223,257,FR,France\n201804,3,175483,163835,187131,267,249,285,FR,France\n201803,3,178329,166640,190018,271,253,289,FR,France\n201802,3,198079,185663,210495,302,283,321,FR,France\n201801,3,235493,220941,250045,358,336,380,FR,France\n201752,3,299114,279359,318869,459,429,489,FR,France\n201751,3,229448,214366,244530,352,329,375,FR,France\n201750,3,129535,118787,140283,199,183,215,FR,France\n201749,3,63789,56120,71458,98,86,110,FR,France\n201748,3,37568,31541,43595,58,49,67,FR,France\n201747,3,24972,19923,30021,38,30,46,FR,France\n201746,3,13398,9948,16848,21,16,26,FR,France\n201745,3,14035,8091,19979,22,13,31,FR,France\n201744,3,8544,5318,11770,13,8,18,FR,France\n201743,3,7300,4402,10198,11,7,15,FR,France\n201742,3,9966,6503,13429,15,10,20,FR,France\n201741,3,12434,8718,16150,19,13,25,FR,France\n201740,3,12725,8690,16760,20,14,26,FR,France\n201739,3,14949,10534,19364,23,16,30,FR,France\n201738,3,11463,7438,15488,18,12,24,FR,France\n201737,3,9716,6364,13068,15,10,20,FR,France\n201736,3,2815,917,4713,4,1,7,FR,France\n201735,3,2794,850,4738,4,1,7,FR,France\n201734,3,2497,879,4115,4,2,6,FR,France\n201733,3,2406,766,4046,4,1,7,FR,France\n201732,3,2667,879,4455,4,1,7,FR,France\n201731,3,3256,1158,5354,5,2,8,FR,France\n201730,3,3759,1299,6219,6,2,10,FR,France\n201729,3,5014,1989,8039,8,3,13,FR,France\n201728,3,5271,2576,7966,8,4,12,FR,France\n201727,3,3924,1432,6416,6,2,10,FR,France\n201726,3,3171,1166,5176,5,2,8,FR,France\n201725,3,837,0,1721,1,0,2,FR,France\n201724,3,1566,248,2884,2,0,4,FR,France\n201723,3,1664,203,3125,3,1,5,FR,France\n201722,3,1305,92,2518,2,0,4,FR,France\n201721,3,971,0,2046,1,0,3,FR,France\n201720,3,2686,793,4579,4,1,7,FR,France\n201719,3,3461,1490,5432,5,2,8,FR,France\n201718,3,2102,515,3689,3,1,5,FR,France\n201717,3,2071,428,3714,3,0,6,FR,France\n201716,3,1380,222,2538,2,0,4,FR,France\n201715,3,479,0,1242,1,0,2,FR,France\n201714,3,1110,0,2549,2,0,4,FR,France\n201713,3,7594,3808,11380,12,6,18,FR,France\n201712,3,8780,4834,12726,13,7,19,FR,France\n201711,3,7814,4329,11299,12,7,17,FR,France\n201710,3,11802,7964,15640,18,12,24,FR,France\n201709,3,13111,9099,17123,20,14,26,FR,France\n201708,3,29545,23136,35954,45,35,55,FR,France\n201707,3,59590,49764,69416,91,76,106,FR,France\n201706,3,93628,82560,104696,144,127,161,FR,France\n201705,3,193677,179255,208099,297,275,319,FR,France\n201704,3,256428,240618,272238,394,370,418,FR,France\n201703,3,267276,251345,283207,410,386,434,FR,France\n201702,3,260588,245070,276106,400,376,424,FR,France\n201701,3,255535,239743,271327,392,368,416,FR,France\n201652,3,224489,207799,241179,345,319,371,FR,France\n201651,3,187704,172655,202753,288,265,311,FR,France\n201650,3,126570,115081,138059,194,176,212,FR,France\n201649,3,76390,67374,85406,117,103,131,FR,France\n201648,3,40502,33949,47055,62,52,72,FR,France\n201647,3,22270,17612,26928,34,27,41,FR,France\n201646,3,20816,16125,25507,32,25,39,FR,France\n201645,3,15957,11448,20466,24,17,31,FR,France\n201644,3,15145,10357,19933,23,16,30,FR,France\n201643,3,9378,5830,12926,14,9,19,FR,France\n201642,3,12920,9044,16796,20,14,26,FR,France\n201641,3,13909,9709,18109,21,15,27,FR,France\n201640,3,13379,8969,17789,21,14,28,FR,France\n201639,3,10598,6814,14382,16,10,22,FR,France\n201638,3,5969,3073,8865,9,5,13,FR,France\n201637,3,4065,1538,6592,6,2,10,FR,France\n201636,3,2372,473,4271,4,1,7,FR,France\n201635,3,3420,1350,5490,5,2,8,FR,France\n201634,3,2233,0,4643,3,0,7,FR,France\n201633,3,1567,0,3938,2,0,6,FR,France\n201632,3,2100,93,4107,3,0,6,FR,France\n201631,3,3691,0,9120,6,0,14,FR,France\n201630,3,3209,644,5774,5,1,9,FR,France\n201629,3,1469,0,3073,2,0,4,FR,France\n201628,3,2725,357,5093,4,0,8,FR,France\n201627,3,5905,2343,9467,9,4,14,FR,France\n201626,3,4186,1636,6736,6,2,10,FR,France\n201625,3,4611,1560,7662,7,2,12,FR,France\n201624,3,4977,2404,7550,8,4,12,FR,France\n201623,3,4893,2416,7370,8,4,12,FR,France\n201622,3,5667,3015,8319,9,5,13,FR,France\n201621,3,5603,2475,8731,9,4,14,FR,France\n201620,3,3908,1679,6137,6,3,9,FR,France\n201619,3,4738,2308,7168,7,3,11,FR,France\n201618,3,8204,4394,12014,13,7,19,FR,France\n201617,3,13385,8822,17948,21,14,28,FR,France\n201616,3,25670,19632,31708,39,30,48,FR,France\n201615,3,48441,39824,57058,74,61,87,FR,France\n201614,3,92603,81261,103945,142,125,159,FR,France\n201613,3,170654,156387,184921,262,240,284,FR,France\n201612,3,272174,254338,290010,418,391,445,FR,France\n201611,3,304543,286453,322633,467,439,495,FR,France\n201610,3,261822,245799,277845,402,377,427,FR,France\n201609,3,229943,214533,245353,353,329,377,FR,France\n201608,3,195067,180874,209260,299,277,321,FR,France\n201607,3,207359,193223,221495,318,296,340,FR,France\n201606,3,196143,182672,209614,301,280,322,FR,France\n201605,3,178963,166296,191630,275,256,294,FR,France\n201604,3,148473,136591,160355,228,210,246,FR,France\n201603,3,75277,66630,83924,116,103,129,FR,France\n201602,3,44617,37821,51413,68,58,78,FR,France\n201601,3,42263,35556,48970,65,55,75,FR,France\n201553,3,24835,19106,30564,38,29,47,FR,France\n201552,3,19495,14319,24671,30,22,38,FR,France\n201551,3,29080,23014,35146,45,36,54,FR,France\n201550,3,25043,19812,30274,39,31,47,FR,France\n201549,3,21479,16686,26272,33,26,40,FR,France\n201548,3,16428,12273,20583,25,19,31,FR,France\n201547,3,14959,10856,19062,23,17,29,FR,France\n201546,3,12599,8237,16961,20,13,27,FR,France\n201545,3,13577,9192,17962,21,14,28,FR,France\n201544,3,14596,10025,19167,23,16,30,FR,France\n201543,3,16749,11745,21753,26,18,34,FR,France\n201542,3,18675,13613,23737,29,21,37,FR,France\n201541,3,13585,9830,17340,21,15,27,FR,France\n201540,3,13100,9349,16851,20,14,26,FR,France\n201539,3,8595,5671,11519,13,8,18,FR,France\n201538,3,8402,4929,11875,13,8,18,FR,France\n201537,3,8817,4089,13545,14,7,21,FR,France\n201536,3,1922,440,3404,3,1,5,FR,France\n201535,3,229,0,644,0,0,1,FR,France\n201534,3,760,0,1618,1,0,2,FR,France\n201533,3,1537,208,2866,2,0,4,FR,France\n201532,3,1594,66,3122,2,0,4,FR,France\n201531,3,2845,475,5215,4,0,8,FR,France\n201530,3,2447,353,4541,4,1,7,FR,France\n201529,3,2389,332,4446,4,1,7,FR,France\n201528,3,2089,105,4073,3,0,6,FR,France\n201527,3,2257,393,4121,3,0,6,FR,France\n201526,3,2536,774,4298,4,1,7,FR,France\n201525,3,2607,680,4534,4,1,7,FR,France\n201524,3,2849,1000,4698,4,1,7,FR,France\n201523,3,2702,857,4547,4,1,7,FR,France\n201522,3,4262,1989,6535,7,3,11,FR,France\n201521,3,5547,2875,8219,9,5,13,FR,France\n201520,3,4594,2040,7148,7,3,11,FR,France\n201519,3,6307,3256,9358,10,5,15,FR,France\n201518,3,3664,1544,5784,6,3,9,FR,France\n201517,3,6382,3523,9241,10,6,14,FR,France\n201516,3,12098,7913,16283,19,13,25,FR,France\n201515,3,19458,14192,24724,30,22,38,FR,France\n201514,3,30940,24617,37263,48,38,58,FR,France\n201513,3,49563,41986,57140,77,65,89,FR,France\n201512,3,70024,61079,78969,109,95,123,FR,France\n201511,3,99295,88838,109752,154,138,170,FR,France\n201510,3,143931,131682,156180,223,204,242,FR,France\n201509,3,238947,222902,254992,370,345,395,FR,France\n201508,3,409972,388670,431274,635,602,668,FR,France\n201507,3,517750,494301,541199,802,766,838,FR,France\n201506,3,533317,510627,556007,827,792,862,FR,France\n201505,3,457911,436964,478858,710,678,742,FR,France\n201504,3,292161,275491,308831,453,427,479,FR,France\n201503,3,153931,141290,166572,239,219,259,FR,France\n201502,3,104096,93358,114834,161,144,178,FR,France\n201501,3,70962,60505,81419,110,94,126,FR,France\n201452,3,63168,52705,73631,98,82,114,FR,France\n201451,3,45346,38002,52690,71,60,82,FR,France\n201450,3,42182,35049,49315,66,55,77,FR,France\n201449,3,33537,27281,39793,52,42,62,FR,France\n201448,3,28156,21896,34416,44,34,54,FR,France\n201447,3,18158,13186,23130,28,20,36,FR,France\n201446,3,14764,10174,19354,23,16,30,FR,France\n201445,3,16172,11449,20895,25,18,32,FR,France\n201444,3,15500,10464,20536,24,16,32,FR,France\n201443,3,16011,10653,21369,25,17,33,FR,France\n201442,3,21651,15828,27474,34,25,43,FR,France\n201441,3,22486,16295,28677,35,25,45,FR,France\n201440,3,16526,11583,21469,26,18,34,FR,France\n201439,3,8583,5054,12112,13,8,18,FR,France\n201438,3,10567,6496,14638,16,10,22,FR,France\n201437,3,7714,3780,11648,12,6,18,FR,France\n201436,3,5018,1949,8087,8,3,13,FR,France\n201435,3,2268,355,4181,4,1,7,FR,France\n201434,3,2367,250,4484,4,1,7,FR,France\n201433,3,2358,0,4875,4,0,8,FR,France\n201432,3,3229,447,6011,5,1,9,FR,France\n201431,3,4143,349,7937,6,0,12,FR,France\n201430,3,4631,902,8360,7,1,13,FR,France\n201429,3,5122,1258,8986,8,2,14,FR,France\n201428,3,4145,1200,7090,6,1,11,FR,France\n201427,3,4823,1997,7649,8,4,12,FR,France\n201426,3,3858,1235,6481,6,2,10,FR,France\n201425,3,4564,1276,7852,7,2,12,FR,France\n201424,3,2007,249,3765,3,0,6,FR,France\n201423,3,5164,1853,8475,8,3,13,FR,France\n201422,3,6907,1856,11958,11,3,19,FR,France\n201421,3,4523,1039,8007,7,2,12,FR,France\n201420,3,5881,2432,9330,9,4,14,FR,France\n201419,3,3588,1277,5899,6,2,10,FR,France\n201418,3,4708,1654,7762,7,2,12,FR,France\n201417,3,2989,625,5353,5,1,9,FR,France\n201416,3,7057,3381,10733,11,5,17,FR,France\n201415,3,10800,6762,14838,17,11,23,FR,France\n201414,3,19217,13490,24944,30,21,39,FR,France\n201413,3,21577,15435,27719,34,24,44,FR,France\n201412,3,23524,17260,29788,37,27,47,FR,France\n201411,3,44513,35939,53087,69,56,82,FR,France\n201410,3,86105,73497,98713,134,114,154,FR,France\n201409,3,147035,131889,162181,229,205,253,FR,France\n201408,3,188419,171950,204888,293,267,319,FR,France\n201407,3,208726,191283,226169,325,298,352,FR,France\n201406,3,160403,145280,175526,250,226,274,FR,France\n201405,3,120261,107176,133346,187,167,207,FR,France\n201404,3,85280,74414,96146,133,116,150,FR,France\n201403,3,64159,54089,74229,100,84,116,FR,France\n201402,3,46850,38202,55498,73,60,86,FR,France\n201401,3,35624,27451,43797,55,42,68,FR,France\n201352,3,30142,22721,37563,47,35,59,FR,France\n201351,3,29787,23215,36359,47,37,57,FR,France\n201350,3,24055,18214,29896,38,29,47,FR,France\n201349,3,18071,13058,23084,28,20,36,FR,France\n201348,3,17606,12195,23017,28,20,36,FR,France\n201347,3,22636,16343,28929,35,25,45,FR,France\n201346,3,13340,8367,18313,21,13,29,FR,France\n201345,3,10596,6057,15135,17,10,24,FR,France\n201344,3,10193,5622,14764,16,9,23,FR,France\n201343,3,15780,9497,22063,25,15,35,FR,France\n201342,3,14830,9545,20115,23,15,31,FR,France\n201341,3,12391,7265,17517,19,11,27,FR,France\n201340,3,9794,5140,14448,15,8,22,FR,France\n201339,3,5371,1704,9038,8,2,14,FR,France\n201338,3,9324,4198,14450,15,7,23,FR,France\n201337,3,5027,1752,8302,8,3,13,FR,France\n201336,3,4639,1425,7853,7,2,12,FR,France\n201335,3,1291,0,3112,2,0,5,FR,France\n201334,3,1889,0,4912,3,0,8,FR,France\n201333,3,4740,348,9132,7,0,14,FR,France\n201332,3,4709,549,8869,7,0,14,FR,France\n201331,3,2270,0,5811,4,0,10,FR,France\n201330,3,2169,0,4630,3,0,7,FR,France\n201329,3,1696,0,3558,3,0,6,FR,France\n201328,3,983,0,2168,2,0,4,FR,France\n201327,3,4278,1327,7229,7,2,12,FR,France\n201326,3,3488,839,6137,5,1,9,FR,France\n201325,3,2735,0,5826,4,0,9,FR,France\n201324,3,7245,2997,11493,11,4,18,FR,France\n201323,3,16094,8918,23270,25,14,36,FR,France\n201322,3,7245,2923,11567,11,4,18,FR,France\n201321,3,5974,2401,9547,9,3,15,FR,France\n201320,3,3831,1245,6417,6,2,10,FR,France\n201319,3,1166,0,2680,2,0,4,FR,France\n201318,3,3415,757,6073,5,1,9,FR,France\n201317,3,7941,2950,12932,12,4,20,FR,France\n201316,3,9520,4758,14282,15,8,22,FR,France\n201315,3,19357,13311,25403,30,21,39,FR,France\n201314,3,36855,27737,45973,58,44,72,FR,France\n201313,3,43236,34048,52424,68,54,82,FR,France\n201312,3,60822,50414,71230,95,79,111,FR,France\n201311,3,84308,72456,96160,132,113,151,FR,France\n201310,3,165558,148471,182645,259,232,286,FR,France\n201309,3,259984,239067,280901,407,374,440,FR,France\n201308,3,351626,327537,375715,550,512,588,FR,France\n201307,3,470076,443682,496470,736,695,777,FR,France\n201306,3,471647,445112,498182,738,696,780,FR,France\n201305,3,492026,464729,519323,770,727,813,FR,France\n201304,3,391525,367182,415868,613,575,651,FR,France\n201303,3,224661,207134,242188,352,325,379,FR,France\n201302,3,184159,168343,199975,288,263,313,FR,France\n201301,3,163491,147340,179642,256,231,281,FR,France\n201252,3,159290,141978,176602,251,224,278,FR,France\n201251,3,113901,99835,127967,179,157,201,FR,France\n201250,3,79918,68086,91750,126,107,145,FR,France\n201249,3,47537,38711,56363,75,61,89,FR,France\n201248,3,43006,32863,53149,68,52,84,FR,France\n201247,3,39223,29140,49306,62,46,78,FR,France\n201246,3,26436,18286,34586,42,29,55,FR,France\n201245,3,18893,12799,24987,30,20,40,FR,France\n201244,3,13106,8784,17428,21,14,28,FR,France\n201243,3,17791,11284,24298,28,18,38,FR,France\n201242,3,13096,8369,17823,21,14,28,FR,France\n201241,3,18675,12010,25340,29,19,39,FR,France\n201240,3,17873,11545,24201,28,18,38,FR,France\n201239,3,20257,14180,26334,32,22,42,FR,France\n201238,3,14715,9178,20252,23,14,32,FR,France\n201237,3,7775,3509,12041,12,5,19,FR,France\n201236,3,6384,2420,10348,10,4,16,FR,France\n201235,3,8277,2206,14348,13,3,23,FR,France\n201234,3,3858,0,8641,6,0,14,FR,France\n201233,3,6492,840,12144,10,1,19,FR,France\n201232,3,6381,0,14034,10,0,22,FR,France\n201231,3,2696,0,5763,4,0,9,FR,France\n201230,3,1834,0,4194,3,0,7,FR,France\n201229,3,6329,1424,11234,10,2,18,FR,France\n201228,3,4628,1091,8165,7,1,13,FR,France\n201227,3,4162,1487,6837,7,3,11,FR,France\n201226,3,4819,1097,8541,8,2,14,FR,France\n201225,3,2669,530,4808,4,1,7,FR,France\n201224,3,5977,2335,9619,9,3,15,FR,France\n201223,3,2361,576,4146,4,1,7,FR,France\n201222,3,5772,2435,9109,9,4,14,FR,France\n201221,3,3722,821,6623,6,1,11,FR,France\n201220,3,2731,897,4565,4,1,7,FR,France\n201219,3,3267,1317,5217,5,2,8,FR,France\n201218,3,2328,569,4087,4,1,7,FR,France\n201217,3,6982,2701,11263,11,4,18,FR,France\n201216,3,11455,6874,16036,18,11,25,FR,France\n201215,3,20437,13435,27439,32,21,43,FR,France\n201214,3,36740,27799,45681,58,44,72,FR,France\n201213,3,62917,50171,75663,99,79,119,FR,France\n201212,3,84738,71566,97910,133,112,154,FR,France\n201211,3,128945,113778,144112,203,179,227,FR,France\n201210,3,174704,157337,192071,275,248,302,FR,France\n201209,3,225648,206810,244486,355,325,385,FR,France\n201208,3,287293,264901,309685,452,417,487,FR,France\n201207,3,263557,242711,284403,415,382,448,FR,France\n201206,3,175123,158942,191304,276,251,301,FR,France\n201205,3,106110,92524,119696,167,146,188,FR,France\n201204,3,67778,56784,78772,107,90,124,FR,France\n201203,3,49440,40981,57899,78,65,91,FR,France\n201202,3,40507,32652,48362,64,52,76,FR,France\n201201,3,45104,35640,54568,71,56,86,FR,France\n201152,3,36532,28367,44697,58,45,71,FR,France\n201151,3,25835,19002,32668,41,30,52,FR,France\n201150,3,24155,18145,30165,38,28,48,FR,France\n201149,3,27209,20376,34042,43,32,54,FR,France\n201148,3,32358,24451,40265,51,38,64,FR,France\n201147,3,17627,11780,23474,28,19,37,FR,France\n201146,3,22368,15730,29006,35,24,46,FR,France\n201145,3,18104,11995,24213,29,19,39,FR,France\n201144,3,14050,8471,19629,22,13,31,FR,France\n201143,3,21522,14251,28793,34,22,46,FR,France\n201142,3,16932,11363,22501,27,18,36,FR,France\n201141,3,7486,4024,10948,12,7,17,FR,France\n201140,3,14053,8659,19447,22,13,31,FR,France\n201139,3,17021,11062,22980,27,18,36,FR,France\n201138,3,14007,8465,19549,22,13,31,FR,France\n201137,3,8365,4174,12556,13,6,20,FR,France\n201136,3,4606,1714,7498,7,2,12,FR,France\n201135,3,4178,1634,6722,7,3,11,FR,France\n201134,3,3312,683,5941,5,1,9,FR,France\n201133,3,2421,0,5277,4,0,9,FR,France\n201132,3,2590,119,5061,4,0,8,FR,France\n201131,3,2409,320,4498,4,1,7,FR,France\n201130,3,3972,1395,6549,6,2,10,FR,France\n201129,3,2265,717,3813,4,2,6,FR,France\n201128,3,1977,255,3699,3,0,6,FR,France\n201127,3,3524,551,6497,6,1,11,FR,France\n201126,3,1155,0,2685,2,0,4,FR,France\n201125,3,3791,1006,6576,6,2,10,FR,France\n201124,3,3507,1149,5865,6,2,10,FR,France\n201123,3,3406,1170,5642,5,1,9,FR,France\n201122,3,3122,1125,5119,5,2,8,FR,France\n201121,3,2694,769,4619,4,1,7,FR,France\n201120,3,3951,1443,6459,6,2,10,FR,France\n201119,3,5416,1995,8837,9,4,14,FR,France\n201118,3,5306,1815,8797,8,2,14,FR,France\n201117,3,2659,310,5008,4,0,8,FR,France\n201116,3,5061,1988,8134,8,3,13,FR,France\n201115,3,6557,3038,10076,10,4,16,FR,France\n201114,3,7352,3784,10920,12,6,18,FR,France\n201113,3,8749,5213,12285,14,8,20,FR,France\n201112,3,12491,7845,17137,20,13,27,FR,France\n201111,3,14619,10009,19229,23,16,30,FR,France\n201110,3,33628,26073,41183,53,41,65,FR,France\n201109,3,54522,46057,62987,86,73,99,FR,France\n201108,3,78392,67885,88899,124,107,141,FR,France\n201107,3,149219,134798,163640,236,213,259,FR,France\n201106,3,216579,200236,232922,343,317,369,FR,France\n201105,3,278192,260235,296149,440,412,468,FR,France\n201104,3,278218,259626,296810,440,411,469,FR,France\n201103,3,275882,257313,294451,437,408,466,FR,France\n201102,3,308949,288320,329578,489,456,522,FR,France\n201101,3,309933,288190,331676,490,456,524,FR,France\n201052,3,228105,208046,248164,363,331,395,FR,France\n201051,3,158957,142576,175338,253,227,279,FR,France\n201050,3,104874,91639,118109,167,146,188,FR,France\n201049,3,54971,46418,63524,88,74,102,FR,France\n201048,3,36982,29304,44660,59,47,71,FR,France\n201047,3,26598,20123,33073,42,32,52,FR,France\n201046,3,15465,10915,20015,25,18,32,FR,France\n201045,3,9040,5772,12308,14,9,19,FR,France\n201044,3,15833,10255,21411,25,16,34,FR,France\n201043,3,16002,11001,21003,25,17,33,FR,France\n201042,3,18709,13376,24042,30,22,38,FR,France\n201041,3,17352,12182,22522,28,20,36,FR,France\n201040,3,18331,12824,23838,29,20,38,FR,France\n201039,3,11978,7913,16043,19,13,25,FR,France\n201038,3,8936,4906,12966,14,8,20,FR,France\n201037,3,5318,2551,8085,8,4,12,FR,France\n201036,3,4954,2058,7850,8,3,13,FR,France\n201035,3,4279,1604,6954,7,3,11,FR,France\n201034,3,4926,566,9286,8,1,15,FR,France\n201033,3,2950,0,6507,5,0,11,FR,France\n201032,3,671,0,1522,1,0,2,FR,France\n201031,3,2732,509,4955,4,0,8,FR,France\n201030,3,3989,1068,6910,6,1,11,FR,France\n201029,3,4123,1531,6715,7,3,11,FR,France\n201028,3,1209,0,2640,2,0,4,FR,France\n201027,3,2494,433,4555,4,1,7,FR,France\n201026,3,5808,2454,9162,9,4,14,FR,France\n201025,3,8019,4395,11643,13,7,19,FR,France\n201024,3,3584,1657,5511,6,3,9,FR,France\n201023,3,4016,1905,6127,6,3,9,FR,France\n201022,3,6251,3664,8838,10,6,14,FR,France\n201021,3,3860,1636,6084,6,2,10,FR,France\n201020,3,2470,442,4498,4,1,7,FR,France\n201019,3,2273,636,3910,4,1,7,FR,France\n201018,3,4095,1639,6551,7,3,11,FR,France\n201017,3,2216,817,3615,4,2,6,FR,France\n201016,3,3471,1085,5857,6,2,10,FR,France\n201015,3,3990,1376,6604,6,2,10,FR,France\n201014,3,6188,3191,9185,10,5,15,FR,France\n201013,3,6705,3665,9745,11,6,16,FR,France\n201012,3,6727,3582,9872,11,6,16,FR,France\n201011,3,8692,5002,12382,14,8,20,FR,France\n201010,3,8844,5465,12223,14,9,19,FR,France\n201009,3,12081,7334,16828,19,11,27,FR,France\n201008,3,15433,10422,20444,25,17,33,FR,France\n201007,3,19690,11728,27652,31,18,44,FR,France\n201006,3,27858,18883,36833,44,30,58,FR,France\n201005,3,22197,17019,27375,35,27,43,FR,France\n201004,3,33817,26151,41483,54,42,66,FR,France\n201003,3,36236,27936,44536,58,45,71,FR,France\n201002,3,40691,32891,48491,65,53,77,FR,France\n201001,3,66574,56164,76984,106,89,123,FR,France\n200953,3,96141,81818,110464,153,130,176,FR,France\n200952,3,172872,153238,192506,275,244,306,FR,France\n200951,3,247809,229140,266478,395,365,425,FR,France\n200950,3,379424,355974,402874,604,567,641,FR,France\n200949,3,473718,447756,499680,754,713,795,FR,France\n200948,3,467551,441506,493596,744,703,785,FR,France\n200947,3,378924,355752,402096,603,566,640,FR,France\n200946,3,223847,203918,243776,356,324,388,FR,France\n200945,3,147046,131155,162937,234,209,259,FR,France\n200944,3,170231,151298,189164,271,241,301,FR,France\n200943,3,131408,114883,147933,209,183,235,FR,France\n200942,3,99387,84491,114283,158,134,182,FR,France\n200941,3,100802,86381,115223,160,137,183,FR,France\n200940,3,111587,97628,125546,178,156,200,FR,France\n200939,3,121267,106153,136381,193,169,217,FR,France\n200938,3,137924,121242,154606,220,193,247,FR,France\n200937,3,101332,87522,115142,161,139,183,FR,France\n200936,3,46024,36435,55613,73,58,88,FR,France\n200935,3,31660,23669,39651,50,37,63,FR,France\n200934,3,24985,17699,32271,40,28,52,FR,France\n200933,3,24435,16308,32562,39,26,52,FR,France\n200932,3,23151,14624,31678,37,23,51,FR,France\n200931,3,30255,9818,50692,48,15,81,FR,France\n200930,3,13868,7861,19875,22,12,32,FR,France\n200929,3,10704,5314,16094,17,8,26,FR,France\n200928,3,15516,273,30759,25,1,49,FR,France\n200927,3,10354,2760,17948,16,4,28,FR,France\n200926,3,9932,5257,14607,16,9,23,FR,France\n200925,3,7619,4026,11212,12,6,18,FR,France\n200924,3,7794,3409,12179,12,5,19,FR,France\n200923,3,4342,1975,6709,7,3,11,FR,France\n200922,3,6390,3020,9760,10,5,15,FR,France\n200921,3,7118,3704,10532,11,6,16,FR,France\n200920,3,9482,5804,13160,15,9,21,FR,France\n200919,3,7538,4299,10777,12,7,17,FR,France\n200918,3,9627,5121,14133,15,8,22,FR,France\n200917,3,9537,5267,13807,15,8,22,FR,France\n200916,3,14666,9218,20114,23,14,32,FR,France\n200915,3,17533,12137,22929,28,19,37,FR,France\n200914,3,26324,19150,33498,42,31,53,FR,France\n200913,3,27737,20781,34693,44,33,55,FR,France\n200912,3,38811,29935,47687,62,48,76,FR,France\n200911,3,40410,30705,50115,64,49,79,FR,France\n200910,3,53395,41943,64847,85,67,103,FR,France\n200909,3,70558,57400,83716,112,91,133,FR,France\n200908,3,109100,94840,123360,174,151,197,FR,France\n200907,3,141531,125101,157961,225,199,251,FR,France\n200906,3,276274,252759,299789,440,403,477,FR,France\n200905,3,401868,375032,428704,640,597,683,FR,France\n200904,3,545313,512892,577734,868,816,920,FR,France\n200903,3,520957,487271,554643,829,775,883,FR,France\n200902,3,287145,262869,311421,457,418,496,FR,France\n200901,3,200349,180878,219820,319,288,350,FR,France\n200852,3,198418,115769,281067,323,188,458,FR,France\n200851,3,112588,96656,128520,184,158,210,FR,France\n200850,3,51746,43319,60173,84,70,98,FR,France\n200849,3,34950,27527,42373,57,45,69,FR,France\n200848,3,25604,18563,32645,42,31,53,FR,France\n200847,3,18706,10838,26574,30,17,43,FR,France\n200846,3,10899,5461,16337,18,9,27,FR,France\n200845,3,12472,7082,17862,20,11,29,FR,France\n200844,3,9772,5661,13883,16,9,23,FR,France\n200843,3,9345,5541,13149,15,9,21,FR,France\n200842,3,9087,5572,12602,15,9,21,FR,France\n200841,3,9925,5637,14213,16,9,23,FR,France\n200840,3,7869,4535,11203,13,8,18,FR,France\n200839,3,2195,506,3884,4,1,7,FR,France\n200838,3,3679,1481,5877,6,2,10,FR,France\n200837,3,2429,561,4297,4,1,7,FR,France\n200836,3,2512,492,4532,4,1,7,FR,France\n200835,3,1901,0,4869,3,0,8,FR,France\n200834,3,2552,0,6509,4,0,10,FR,France\n200833,3,7229,0,16106,12,0,26,FR,France\n200832,3,4378,107,8649,7,0,14,FR,France\n200831,3,3972,621,7323,6,1,11,FR,France\n200830,3,3821,643,6999,6,1,11,FR,France\n200829,3,2055,0,4225,3,0,7,FR,France\n200828,3,3257,208,6306,5,0,10,FR,France\n200827,3,2862,474,5250,5,1,9,FR,France\n200826,3,897,0,2062,1,0,3,FR,France\n200825,3,2006,360,3652,3,0,6,FR,France\n200824,3,3217,823,5611,5,1,9,FR,France\n200823,3,2906,1006,4806,5,2,8,FR,France\n200822,3,1792,451,3133,3,1,5,FR,France\n200821,3,3642,925,6359,6,2,10,FR,France\n200820,3,6452,2790,10114,11,5,17,FR,France\n200819,3,5173,1485,8861,8,2,14,FR,France\n200818,3,5315,1770,8860,9,3,15,FR,France\n200817,3,10150,5835,14465,17,10,24,FR,France\n200816,3,11876,7054,16698,19,11,27,FR,France\n200815,3,22871,16253,29489,37,26,48,FR,France\n200814,3,45610,27907,63313,74,45,103,FR,France\n200813,3,38600,29300,47900,63,48,78,FR,France\n200812,3,53169,43299,63039,87,71,103,FR,France\n200811,3,62014,50430,73598,101,82,120,FR,France\n200810,3,90342,75729,104955,147,123,171,FR,France\n200809,3,119696,104205,135187,195,170,220,FR,France\n200808,3,198688,180749,216627,324,295,353,FR,France\n200807,3,286498,264535,308461,467,431,503,FR,France\n200806,3,377097,350714,403480,615,572,658,FR,France\n200805,3,344050,320436,367664,561,523,599,FR,France\n200804,3,290196,268193,312199,473,437,509,FR,France\n200803,3,260268,233385,287151,424,380,468,FR,France\n200802,3,160872,145311,176433,262,237,287,FR,France\n200801,3,102562,88547,116577,167,144,190,FR,France\n200752,3,86742,72295,101189,141,117,165,FR,France\n200751,3,61954,51764,72144,101,84,118,FR,France\n200750,3,45366,36923,53809,74,60,88,FR,France\n200749,3,38351,26177,50525,63,43,83,FR,France\n200748,3,48174,35418,60930,79,58,100,FR,France\n200747,3,30716,23351,38081,50,38,62,FR,France\n200746,3,18204,12267,24141,30,20,40,FR,France\n200745,3,15521,10195,20847,25,16,34,FR,France\n200744,3,13904,9072,18736,23,15,31,FR,France\n200743,3,16212,10778,21646,26,17,35,FR,France\n200742,3,20197,13955,26439,33,23,43,FR,France\n200741,3,12987,8464,17510,21,14,28,FR,France\n200740,3,13517,2983,24051,22,5,39,FR,France\n200739,3,15985,7519,24451,26,12,40,FR,France\n200738,3,4769,837,8701,8,2,14,FR,France\n200737,3,1449,300,2598,2,0,4,FR,France\n200736,3,1100,0,2424,2,0,4,FR,France\n200735,3,1177,0,2872,2,0,5,FR,France\n200734,3,3353,654,6052,5,1,9,FR,France\n200733,3,4189,360,8018,7,1,13,FR,France\n200732,3,132,0,688,0,0,1,FR,France\n200731,3,1965,0,4461,3,0,7,FR,France\n200730,3,2158,0,4583,4,0,8,FR,France\n200729,3,3406,240,6572,6,1,11,FR,France\n200728,3,1459,0,3467,2,0,5,FR,France\n200727,3,1453,0,3382,2,0,5,FR,France\n200726,3,157,0,513,0,0,1,FR,France\n200725,3,3699,0,7778,6,0,13,FR,France\n200724,3,2854,481,5227,5,1,9,FR,France\n200723,3,5343,2164,8522,9,4,14,FR,France\n200722,3,7689,4224,11154,13,7,19,FR,France\n200721,3,4319,1659,6979,7,3,11,FR,France\n200720,3,6400,2685,10115,10,4,16,FR,France\n200719,3,3012,703,5321,5,1,9,FR,France\n200718,3,2232,348,4116,4,1,7,FR,France\n200717,3,4705,1736,7674,8,3,13,FR,France\n200716,3,3817,1438,6196,6,2,10,FR,France\n200715,3,4757,717,8797,8,1,15,FR,France\n200714,3,11377,6957,15797,19,12,26,FR,France\n200713,3,21271,13093,29449,35,22,48,FR,France\n200712,3,25433,17717,33149,41,28,54,FR,France\n200711,3,30764,23356,38172,50,38,62,FR,France\n200710,3,49469,40368,58570,81,66,96,FR,France\n200709,3,138901,117018,160784,226,190,262,FR,France\n200708,3,316747,284988,348506,516,464,568,FR,France\n200707,3,417698,386505,448891,681,630,732,FR,France\n200706,3,500016,466668,533364,815,761,869,FR,France\n200705,3,375457,346822,404092,612,565,659,FR,France\n200704,3,209878,189332,230424,342,309,375,FR,France\n200703,3,126161,110596,141726,206,181,231,FR,France\n200702,3,82849,69493,96205,135,113,157,FR,France\n200701,3,70842,58613,83071,115,95,135,FR,France\n200652,3,78190,64191,92189,128,105,151,FR,France\n200651,3,62734,50210,75258,103,82,124,FR,France\n200650,3,35668,27280,44056,58,44,72,FR,France\n200649,3,18773,13164,24382,31,22,40,FR,France\n200648,3,16439,11225,21653,27,18,36,FR,France\n200647,3,16104,9343,22865,26,15,37,FR,France\n200646,3,14032,5590,22474,23,9,37,FR,France\n200645,3,12285,7745,16825,20,13,27,FR,France\n200644,3,8031,4172,11890,13,7,19,FR,France\n200643,3,21157,12483,29831,35,21,49,FR,France\n200642,3,16673,8249,25097,27,13,41,FR,France\n200641,3,13920,9081,18759,23,15,31,FR,France\n200640,3,11950,7132,16768,20,12,28,FR,France\n200639,3,8945,4333,13557,15,7,23,FR,France\n200638,3,2532,138,4926,4,0,8,FR,France\n200637,3,1786,233,3339,3,0,6,FR,France\n200636,3,1107,0,2346,2,0,4,FR,France\n200635,3,2170,0,4760,4,0,8,FR,France\n200634,3,1572,0,3756,3,0,7,FR,France\n200633,3,0,0,0,0,0,0,FR,France\n200632,3,0,0,0,0,0,0,FR,France\n200631,3,1773,0,3892,3,0,6,FR,France\n200630,3,665,0,1614,1,0,3,FR,France\n200629,3,1339,0,3260,2,0,5,FR,France\n200628,3,843,0,2245,1,0,3,FR,France\n200627,3,1351,0,3031,2,0,5,FR,France\n200626,3,4564,1506,7622,7,2,12,FR,France\n200625,3,6259,2072,10446,10,3,17,FR,France\n200624,3,4279,964,7594,7,2,12,FR,France\n200623,3,4532,1489,7575,7,2,12,FR,France\n200622,3,5807,2667,8947,10,5,15,FR,France\n200621,3,4661,1761,7561,8,3,13,FR,France\n200620,3,8859,4754,12964,15,8,22,FR,France\n200619,3,5083,2011,8155,8,3,13,FR,France\n200618,3,4454,1632,7276,7,2,12,FR,France\n200617,3,17762,11802,23722,29,19,39,FR,France\n200616,3,22096,15420,28772,36,25,47,FR,France\n200615,3,26969,19631,34307,44,32,56,FR,France\n200614,3,40321,31022,49620,66,51,81,FR,France\n200613,3,77053,63531,90575,126,104,148,FR,France\n200612,3,108004,93005,123003,177,152,202,FR,France\n200611,3,122437,106388,138486,201,175,227,FR,France\n200610,3,124749,109104,140394,204,178,230,FR,France\n200609,3,164150,146099,182201,269,239,299,FR,France\n200608,3,199088,178830,219346,326,293,359,FR,France\n200607,3,243908,221071,266745,400,363,437,FR,France\n200606,3,256758,235190,278326,421,386,456,FR,France\n200605,3,184928,166901,202955,303,273,333,FR,France\n200604,3,104620,90909,118331,171,149,193,FR,France\n200603,3,66255,55727,76783,109,92,126,FR,France\n200602,3,39211,31418,47004,64,51,77,FR,France\n200601,3,34603,26269,42937,57,43,71,FR,France\n200552,3,32132,24389,39875,53,40,66,FR,France\n200551,3,40344,28397,52291,67,47,87,FR,France\n200550,3,36880,28635,45125,61,47,75,FR,France\n200549,3,27589,20576,34602,46,34,58,FR,France\n200548,3,24860,17839,31881,41,29,53,FR,France\n200547,3,26884,19810,33958,44,32,56,FR,France\n200546,3,23967,17155,30779,40,29,51,FR,France\n200545,3,14609,8709,20509,24,14,34,FR,France\n200544,3,20481,13625,27337,34,23,45,FR,France\n200543,3,18045,11916,24174,30,20,40,FR,France\n200542,3,23653,15209,32097,39,25,53,FR,France\n200541,3,26466,18270,34662,44,30,58,FR,France\n200540,3,26647,18088,35206,44,30,58,FR,France\n200539,3,23994,15381,32607,40,26,54,FR,France\n200538,3,21881,13979,29783,36,23,49,FR,France\n200537,3,10347,5384,15310,17,9,25,FR,France\n200536,3,7082,2806,11358,12,5,19,FR,France\n200535,3,2448,0,4987,4,0,8,FR,France\n200534,3,5281,539,10023,9,1,17,FR,France\n200533,3,2815,0,6252,5,0,11,FR,France\n200532,3,1572,0,3690,3,0,6,FR,France\n200531,3,3767,0,10955,6,0,18,FR,France\n200530,3,2203,0,5072,4,0,9,FR,France\n200529,3,3965,739,7191,7,2,12,FR,France\n200528,3,1988,96,3880,3,0,6,FR,France\n200527,3,2305,0,4713,4,0,8,FR,France\n200526,3,4720,1385,8055,8,2,14,FR,France\n200525,3,2354,0,4747,4,0,8,FR,France\n200524,3,5892,2029,9755,10,4,16,FR,France\n200523,3,5246,1722,8770,9,3,15,FR,France\n200522,3,3935,1031,6839,6,1,11,FR,France\n200521,3,4284,474,8094,7,1,13,FR,France\n200520,3,7841,3611,12071,13,6,20,FR,France\n200519,3,7638,3346,11930,13,6,20,FR,France\n200518,3,2755,388,5122,5,1,9,FR,France\n200517,3,7166,3530,10802,12,6,18,FR,France\n200516,3,9741,5344,14138,16,9,23,FR,France\n200515,3,14881,9018,20744,25,15,35,FR,France\n200514,3,21988,14834,29142,36,24,48,FR,France\n200513,3,42971,33053,52889,71,55,87,FR,France\n200512,3,90040,75374,104706,149,125,173,FR,France\n200511,3,183032,161407,204657,302,266,338,FR,France\n200510,3,222526,199990,245062,367,330,404,FR,France\n200509,3,251784,229464,274104,416,379,453,FR,France\n200508,3,277423,254825,300021,458,421,495,FR,France\n200507,3,459444,430026,488862,759,710,808,FR,France\n200506,3,568610,536207,601013,939,885,993,FR,France\n200505,3,568285,534912,601658,938,883,993,FR,France\n200504,3,316856,292011,341701,523,482,564,FR,France\n200503,3,154208,137061,171355,255,227,283,FR,France\n200502,3,88853,75576,102130,147,125,169,FR,France\n200501,3,55801,45339,66263,92,75,109,FR,France\n200453,3,40695,31926,49464,68,53,83,FR,France\n200452,3,32687,24316,41058,54,40,68,FR,France\n200451,3,46209,36017,56401,77,60,94,FR,France\n200450,3,42358,31865,52851,70,53,87,FR,France\n200449,3,27092,17910,36274,45,30,60,FR,France\n200448,3,30522,21236,39808,51,36,66,FR,France\n200447,3,21148,13386,28910,35,22,48,FR,France\n200446,3,13934,8335,19533,23,14,32,FR,France\n200445,3,15658,9703,21613,26,16,36,FR,France\n200444,3,23166,14852,31480,38,24,52,FR,France\n200443,3,16780,10545,23015,28,18,38,FR,France\n200442,3,20480,13909,27051,34,23,45,FR,France\n200441,3,15852,9789,21915,26,16,36,FR,France\n200440,3,25639,17291,33987,43,29,57,FR,France\n200439,3,22680,13222,32138,38,22,54,FR,France\n200438,3,17483,9417,25549,29,16,42,FR,France\n200437,3,9103,4768,13438,15,8,22,FR,France\n200436,3,7753,3596,11910,13,6,20,FR,France\n200435,3,4408,775,8041,7,1,13,FR,France\n200434,3,4501,610,8392,7,1,13,FR,France\n200433,3,1697,0,4046,3,0,7,FR,France\n200432,3,3496,0,8181,6,0,14,FR,France\n200431,3,2949,20,5878,5,0,10,FR,France\n200430,3,3557,642,6472,6,1,11,FR,France\n200429,3,5164,1162,9166,9,2,16,FR,France\n200428,3,6358,2224,10492,11,4,18,FR,France\n200427,3,7486,3040,11932,12,5,19,FR,France\n200426,3,7113,0,14709,12,0,25,FR,France\n200425,3,3275,508,6042,5,0,10,FR,France\n200424,3,6737,2394,11080,11,4,18,FR,France\n200423,3,9792,807,18777,16,1,31,FR,France\n200422,3,8077,3482,12672,13,5,21,FR,France\n200421,3,8073,3588,12558,13,6,20,FR,France\n200420,3,7885,3454,12316,13,6,20,FR,France\n200419,3,7235,3101,11369,12,5,19,FR,France\n200418,3,5108,1830,8386,8,3,13,FR,France\n200417,3,3647,523,6771,6,1,11,FR,France\n200416,3,5265,1359,9171,9,3,15,FR,France\n200415,3,8272,3655,12889,14,6,22,FR,France\n200414,3,15657,8888,22426,26,15,37,FR,France\n200413,3,8316,4067,12565,14,7,21,FR,France\n200412,3,12482,6899,18065,21,12,30,FR,France\n200411,3,13964,7879,20049,23,13,33,FR,France\n200410,3,22531,14164,30898,37,23,51,FR,France\n200409,3,12618,7283,17953,21,12,30,FR,France\n200408,3,17738,11055,24421,29,18,40,FR,France\n200407,3,25484,17228,33740,42,28,56,FR,France\n200406,3,27452,19505,35399,46,33,59,FR,France\n200405,3,35110,25869,44351,58,43,73,FR,France\n200404,3,44571,35266,53876,74,59,89,FR,France\n200403,3,60482,50389,70575,100,83,117,FR,France\n200402,3,95234,81407,109061,158,135,181,FR,France\n200401,3,109116,84565,133667,181,140,222,FR,France\n200352,3,72239,5520,138958,121,10,232,FR,France\n200351,3,445464,389214,501714,744,650,838,FR,France\n200350,3,522427,491781,553073,873,822,924,FR,France\n200349,3,555492,524706,586278,928,877,979,FR,France\n200348,3,514668,485364,543972,860,811,909,FR,France\n200347,3,332927,305972,359882,556,511,601,FR,France\n200346,3,146101,126840,165362,244,212,276,FR,France\n200345,3,95565,80900,110230,160,135,185,FR,France\n200344,3,54703,43193,66213,91,72,110,FR,France\n200343,3,45834,36611,55057,77,62,92,FR,France\n200342,3,39010,28885,49135,65,48,82,FR,France\n200341,3,29579,21478,37680,49,35,63,FR,France\n200340,3,30862,19484,42240,52,33,71,FR,France\n200339,3,26592,18927,34257,44,31,57,FR,France\n200338,3,14811,8777,20845,25,15,35,FR,France\n200337,3,14735,7495,21975,25,13,37,FR,France\n200336,3,10951,3732,18170,18,6,30,FR,France\n200335,3,1504,0,3349,3,0,6,FR,France\n200334,3,2194,0,4889,4,0,9,FR,France\n200333,3,1504,0,3921,3,0,7,FR,France\n200332,3,1619,0,4072,3,0,7,FR,France\n200331,3,5164,0,10601,9,0,18,FR,France\n200330,3,3183,28,6338,5,0,10,FR,France\n200329,3,6801,450,13152,11,0,22,FR,France\n200328,3,3975,609,7341,7,1,13,FR,France\n200327,3,2293,0,4605,4,0,8,FR,France\n200326,3,5333,2138,8528,9,4,14,FR,France\n200325,3,2602,0,5228,4,0,8,FR,France\n200324,3,8429,0,19483,14,0,32,FR,France\n200323,3,4821,1479,8163,8,2,14,FR,France\n200322,3,2573,158,4988,4,0,8,FR,France\n200321,3,5563,2465,8661,9,4,14,FR,France\n200320,3,7554,3748,11360,13,7,19,FR,France\n200319,3,8325,3777,12873,14,6,22,FR,France\n200318,3,12268,6392,18144,20,10,30,FR,France\n200317,3,46253,36234,56272,77,60,94,FR,France\n200316,3,50759,39835,61683,85,67,103,FR,France\n200315,3,69269,55778,82760,116,93,139,FR,France\n200314,3,70084,55374,84794,117,92,142,FR,France\n200313,3,70335,56370,84300,118,95,141,FR,France\n200312,3,88582,73568,103596,148,123,173,FR,France\n200311,3,99729,83353,116105,167,140,194,FR,France\n200310,3,121516,104361,138671,203,174,232,FR,France\n200309,3,177255,151800,202710,296,253,339,FR,France\n200308,3,222638,194269,251007,372,325,419,FR,France\n200307,3,237104,207851,266357,396,347,445,FR,France\n200306,3,206955,177973,235937,346,298,394,FR,France\n200305,3,151864,125877,177851,254,211,297,FR,France\n200304,3,95356,76211,114501,159,127,191,FR,France\n200303,3,50983,38264,63702,85,64,106,FR,France\n200302,3,31447,21706,41188,53,37,69,FR,France\n200301,3,31228,19202,43254,52,32,72,FR,France\n200252,3,47016,33692,60340,79,57,101,FR,France\n200251,3,47629,36912,58346,80,62,98,FR,France\n200250,3,35221,26217,44225,59,44,74,FR,France\n200249,3,24656,16900,32412,41,28,54,FR,France\n200248,3,19799,12868,26730,33,21,45,FR,France\n200247,3,16449,9214,23684,28,16,40,FR,France\n200246,3,12753,5779,19727,21,9,33,FR,France\n200245,3,19304,8475,30133,32,14,50,FR,France\n200244,3,18082,10671,25493,30,18,42,FR,France\n200243,3,14326,7548,21104,24,13,35,FR,France\n200242,3,13774,7800,19748,23,13,33,FR,France\n200241,3,11036,5650,16422,19,10,28,FR,France\n200240,3,8137,3375,12899,14,6,22,FR,France\n200239,3,15989,9892,22086,27,17,37,FR,France\n200238,3,7067,3299,10835,12,6,18,FR,France\n200237,3,12409,4981,19837,21,9,33,FR,France\n200236,3,1679,0,4072,3,0,7,FR,France\n200235,3,2126,0,6301,4,0,11,FR,France\n200234,3,2843,0,7483,5,0,13,FR,France\n200233,3,2670,0,5462,4,0,9,FR,France\n200232,3,1087,0,3003,2,0,5,FR,France\n200231,3,5455,399,10511,9,1,17,FR,France\n200230,3,3601,0,7836,6,0,13,FR,France\n200229,3,5576,379,10773,9,0,18,FR,France\n200228,3,6602,0,14289,11,0,24,FR,France\n200227,3,1882,0,6151,3,0,10,FR,France\n200226,3,4523,0,12320,8,0,21,FR,France\n200225,3,4765,1076,8454,8,2,14,FR,France\n200224,3,12063,7174,16952,20,12,28,FR,France\n200223,3,15468,9806,21130,26,16,36,FR,France\n200222,3,4854,1696,8012,8,3,13,FR,France\n200221,3,5901,2212,9590,10,4,16,FR,France\n200220,3,3803,1215,6391,6,2,10,FR,France\n200219,3,6139,2598,9680,10,4,16,FR,France\n200218,3,6083,2646,9520,10,4,16,FR,France\n200217,3,7223,2678,11768,12,4,20,FR,France\n200216,3,17762,9887,25637,30,17,43,FR,France\n200215,3,21654,13662,29646,36,23,49,FR,France\n200214,3,23877,15709,32045,40,26,54,FR,France\n200213,3,27497,16289,38705,46,27,65,FR,France\n200212,3,33510,20938,46082,56,35,77,FR,France\n200211,3,40426,29171,51681,68,49,87,FR,France\n200210,3,42915,24537,61293,72,41,103,FR,France\n200209,3,63735,48368,79102,107,81,133,FR,France\n200208,3,117204,95548,138860,197,161,233,FR,France\n200207,3,170251,137065,203437,286,230,342,FR,France\n200206,3,325084,296111,354057,546,497,595,FR,France\n200205,3,456186,422559,489813,767,710,824,FR,France\n200204,3,504715,470859,538571,848,791,905,FR,France\n200203,3,383720,353019,414421,645,593,697,FR,France\n200202,3,244028,217752,270304,410,366,454,FR,France\n200201,3,115422,95696,135148,194,161,227,FR,France\n200152,3,57999,43225,72773,98,73,123,FR,France\n200151,3,45961,36017,55905,78,61,95,FR,France\n200150,3,31309,22878,39740,53,39,67,FR,France\n200149,3,34792,23268,46316,59,40,78,FR,France\n200148,3,43283,20164,66402,73,34,112,FR,France\n200147,3,27455,20021,34889,46,33,59,FR,France\n200146,3,21127,14294,27960,36,24,48,FR,France\n200145,3,20766,13979,27553,35,24,46,FR,France\n200144,3,11410,6593,16227,19,11,27,FR,France\n200143,3,23311,15652,30970,39,26,52,FR,France\n200142,3,18963,11652,26274,32,20,44,FR,France\n200141,3,20241,14032,26450,34,24,44,FR,France\n200140,3,18113,9971,26255,31,17,45,FR,France\n200139,3,25407,7785,43029,43,13,73,FR,France\n200138,3,9736,4985,14487,16,8,24,FR,France\n200137,3,8025,3527,12523,14,6,22,FR,France\n200136,3,4663,654,8672,8,1,15,FR,France\n200135,3,4399,0,9810,7,0,16,FR,France\n200134,3,2990,0,6419,5,0,11,FR,France\n200133,3,0,0,0,0,0,0,FR,France\n200132,3,0,0,0,0,0,0,FR,France\n200131,3,18999,4286,33712,32,7,57,FR,France\n200130,3,2144,0,5670,4,0,10,FR,France\n200129,3,2408,0,5215,4,0,9,FR,France\n200128,3,3555,553,6557,6,1,11,FR,France\n200127,3,4739,1122,8356,8,2,14,FR,France\n200126,3,3335,466,6204,6,1,11,FR,France\n200125,3,2643,527,4759,4,0,8,FR,France\n200124,3,4784,2158,7410,8,4,12,FR,France\n200123,3,6299,3161,9437,11,6,16,FR,France\n200122,3,4544,2006,7082,8,4,12,FR,France\n200121,3,8925,4094,13756,15,7,23,FR,France\n200120,3,15269,8883,21655,26,15,37,FR,France\n200119,3,17369,10575,24163,29,18,40,FR,France\n200118,3,21043,14262,27824,36,25,47,FR,France\n200117,3,25787,19109,32465,44,33,55,FR,France\n200116,3,24025,16833,31217,41,29,53,FR,France\n200115,3,24188,17340,31036,41,29,53,FR,France\n200114,3,40429,31774,49084,68,53,83,FR,France\n200113,3,48644,39517,57771,82,67,97,FR,France\n200112,3,45411,35780,55042,77,61,93,FR,France\n200111,3,49809,40534,59084,84,68,100,FR,France\n200110,3,46649,37240,56058,79,63,95,FR,France\n200109,3,58623,47346,69900,99,80,118,FR,France\n200108,3,77423,63237,91609,131,107,155,FR,France\n200107,3,126970,107898,146042,215,183,247,FR,France\n200106,3,225969,198142,253796,382,335,429,FR,France\n200105,3,278674,249486,307862,471,422,520,FR,France\n200104,3,209193,189129,229257,354,320,388,FR,France\n200103,3,139823,124243,155403,236,210,262,FR,France\n200102,3,105356,92392,118320,178,156,200,FR,France\n200101,3,98930,84599,113261,167,143,191,FR,France\n200052,3,143525,124203,162847,244,211,277,FR,France\n200051,3,125224,108719,141729,213,185,241,FR,France\n200050,3,99177,84857,113497,169,145,193,FR,France\n200049,3,74170,54196,94144,126,92,160,FR,France\n200048,3,43642,34064,53220,74,58,90,FR,France\n200047,3,64848,11322,118374,110,19,201,FR,France\n200046,3,20598,14053,27143,35,24,46,FR,France\n200045,3,25375,17229,33521,43,29,57,FR,France\n200044,3,16330,9762,22898,28,17,39,FR,France\n200043,3,36951,27693,46209,63,47,79,FR,France\n200042,3,41200,30772,51628,70,52,88,FR,France\n200041,3,40022,30939,49105,68,53,83,FR,France\n200040,3,27237,19986,34488,46,34,58,FR,France\n200039,3,19338,12649,26027,33,22,44,FR,France\n200038,3,7417,3193,11641,13,6,20,FR,France\n200037,3,2243,0,4722,4,0,8,FR,France\n200036,3,2990,0,6416,5,0,11,FR,France\n200035,3,5590,0,12003,10,0,21,FR,France\n200034,3,5188,0,12418,9,0,21,FR,France\n200033,3,1690,0,3859,3,0,7,FR,France\n200032,3,1405,0,4239,2,0,7,FR,France\n200031,3,2159,0,4744,4,0,8,FR,France\n200030,3,218,0,783,0,0,1,FR,France\n200029,3,1532,0,3751,3,0,7,FR,France\n200028,3,1071,0,2881,2,0,5,FR,France\n200027,3,2427,150,4704,4,0,8,FR,France\n200026,3,1997,0,4996,3,0,8,FR,France\n200025,3,4239,221,8257,7,0,14,FR,France\n200024,3,5411,1122,9700,9,2,16,FR,France\n200023,3,8757,4101,13413,15,7,23,FR,France\n200022,3,4966,1694,8238,8,2,14,FR,France\n200021,3,4271,1389,7153,7,2,12,FR,France\n200020,3,4520,1478,7562,8,3,13,FR,France\n200019,3,13867,8548,19186,24,15,33,FR,France\n200018,3,5386,2261,8511,9,4,14,FR,France\n200017,3,7018,1581,12455,12,3,21,FR,France\n200016,3,5328,1433,9223,9,2,16,FR,France\n200015,3,12020,6436,17604,20,11,29,FR,France\n200014,3,10942,5691,16193,19,10,28,FR,France\n200013,3,8572,3443,13701,15,6,24,FR,France\n200012,3,7081,3097,11065,12,5,19,FR,France\n200011,3,12172,7447,16897,21,13,29,FR,France\n200010,3,9091,5450,12732,15,9,21,FR,France\n200009,3,14631,9200,20062,25,16,34,FR,France\n200008,3,23647,17172,30122,40,29,51,FR,France\n200007,3,59173,48440,69906,101,83,119,FR,France\n200006,3,146517,129961,163073,249,221,277,FR,France\n200005,3,261687,239983,283391,445,408,482,FR,France\n200004,3,374822,349785,399859,637,594,680,FR,France\n200003,3,484233,456706,511760,824,777,871,FR,France\n200002,3,521069,492185,549953,886,837,935,FR,France\n200001,3,541945,511326,572564,922,870,974,FR,France\n199952,3,387655,360652,414658,663,617,709,FR,France\n199951,3,272075,250906,293244,465,429,501,FR,France\n199950,3,181113,164571,197655,310,282,338,FR,France\n199949,3,112328,99058,125598,192,169,215,FR,France\n199948,3,58710,48651,68769,100,83,117,FR,France\n199947,3,35912,23462,48362,61,40,82,FR,France\n199946,3,8601,1503,15699,15,3,27,FR,France\n199945,3,17781,10817,24745,30,18,42,FR,France\n199944,3,18238,12870,23606,31,22,40,FR,France\n199943,3,18135,12601,23669,31,22,40,FR,France\n199942,3,19183,13258,25108,33,23,43,FR,France\n199941,3,25171,18689,31653,43,32,54,FR,France\n199940,3,24185,16184,32186,41,27,55,FR,France\n199939,3,28553,20776,36330,49,36,62,FR,France\n199938,3,12430,7759,17101,21,13,29,FR,France\n199937,3,7543,4283,10803,13,7,19,FR,France\n199936,3,8191,2827,13555,14,5,23,FR,France\n199935,3,3334,1188,5480,6,2,10,FR,France\n199934,3,7600,0,27730,13,0,47,FR,France\n199933,3,9757,354,19160,17,1,33,FR,France\n199932,3,7149,0,15077,12,0,26,FR,France\n199931,3,2640,0,5463,5,0,10,FR,France\n199930,3,1478,0,3153,3,0,6,FR,France\n199929,3,3983,498,7468,7,1,13,FR,France\n199928,3,3731,712,6750,6,1,11,FR,France\n199927,3,5004,1597,8411,9,3,15,FR,France\n199926,3,3459,699,6219,6,1,11,FR,France\n199925,3,5302,2057,8547,9,3,15,FR,France\n199924,3,4327,1646,7008,7,2,12,FR,France\n199923,3,5370,2374,8366,9,4,14,FR,France\n199922,3,4404,1643,7165,8,3,13,FR,France\n199921,3,4180,1485,6875,7,2,12,FR,France\n199920,3,6073,2775,9371,10,4,16,FR,France\n199919,3,6241,3220,9262,11,6,16,FR,France\n199918,3,3057,678,5436,5,1,9,FR,France\n199917,3,2904,701,5107,5,1,9,FR,France\n199916,3,7539,3360,11718,13,6,20,FR,France\n199915,3,11535,6814,16256,20,12,28,FR,France\n199914,3,18730,13131,24329,32,22,42,FR,France\n199913,3,38453,29560,47346,66,51,81,FR,France\n199912,3,58090,48072,68108,99,82,116,FR,France\n199911,3,91329,78686,103972,156,134,178,FR,France\n199910,3,147976,131058,164894,253,224,282,FR,France\n199909,3,207450,188710,226190,355,323,387,FR,France\n199908,3,313293,292280,334306,536,500,572,FR,France\n199907,3,524136,496702,551570,896,849,943,FR,France\n199906,3,493908,466605,521211,844,797,891,FR,France\n199905,3,476884,449696,504072,815,769,861,FR,France\n199904,3,368514,345131,391897,630,590,670,FR,France\n199903,3,242388,224208,260568,414,383,445,FR,France\n199902,3,160657,145209,176105,275,249,301,FR,France\n199901,3,130133,115125,145141,222,196,248,FR,France\n199853,3,107611,92301,122921,185,159,211,FR,France\n199852,3,72373,61032,83714,124,105,143,FR,France\n199851,3,78179,67156,89202,134,115,153,FR,France\n199850,3,54775,45478,64072,94,78,110,FR,France\n199849,3,33385,26332,40438,57,45,69,FR,France\n199848,3,22636,16668,28604,39,29,49,FR,France\n199847,3,14505,9746,19264,25,17,33,FR,France\n199846,3,13804,9049,18559,24,16,32,FR,France\n199845,3,13021,8113,17929,22,14,30,FR,France\n199844,3,12631,7410,17852,22,13,31,FR,France\n199843,3,12180,7125,17235,21,12,30,FR,France\n199842,3,18885,12726,25044,32,21,43,FR,France\n199841,3,24196,17506,30886,42,31,53,FR,France\n199840,3,20235,14114,26356,35,25,45,FR,France\n199839,3,17075,11538,22612,29,20,38,FR,France\n199838,3,10837,6336,15338,19,11,27,FR,France\n199837,3,6968,3227,10709,12,6,18,FR,France\n199836,3,3033,580,5486,5,1,9,FR,France\n199835,3,2491,0,5022,4,0,8,FR,France\n199834,3,3853,589,7117,7,1,13,FR,France\n199833,3,2934,0,6598,5,0,11,FR,France\n199832,3,1308,0,2894,2,0,5,FR,France\n199831,3,12147,0,29237,21,0,50,FR,France\n199830,3,5309,1628,8990,9,3,15,FR,France\n199829,3,6486,2465,10507,11,4,18,FR,France\n199828,3,9577,4464,14690,16,7,25,FR,France\n199827,3,12358,7158,17558,21,12,30,FR,France\n199826,3,10415,6547,14283,18,11,25,FR,France\n199825,3,18246,13050,23442,31,22,40,FR,France\n199824,3,16263,11126,21400,28,19,37,FR,France\n199823,3,8553,4911,12195,15,9,21,FR,France\n199822,3,5181,2669,7693,9,5,13,FR,France\n199821,3,4751,2416,7086,8,4,12,FR,France\n199820,3,12129,8099,16159,21,14,28,FR,France\n199819,3,24118,17906,30330,41,30,52,FR,France\n199818,3,31612,24512,38712,54,42,66,FR,France\n199817,3,61148,51894,70402,105,89,121,FR,France\n199816,3,123195,109878,136512,211,188,234,FR,France\n199815,3,171603,156715,186491,294,268,320,FR,France\n199814,3,319092,298398,339786,547,512,582,FR,France\n199813,3,298212,278513,317911,512,478,546,FR,France\n199812,3,263585,246356,280814,452,422,482,FR,France\n199811,3,220578,204894,236262,378,351,405,FR,France\n199810,3,202354,186304,218404,347,319,375,FR,France\n199809,3,227553,209970,245136,390,360,420,FR,France\n199808,3,271362,252005,290719,465,432,498,FR,France\n199807,3,190187,173694,206680,326,298,354,FR,France\n199806,3,88217,76829,99605,151,131,171,FR,France\n199805,3,45180,36970,53390,77,63,91,FR,France\n199804,3,30005,23272,36738,51,39,63,FR,France\n199803,3,23900,18221,29579,41,31,51,FR,France\n199802,3,31143,23994,38292,53,41,65,FR,France\n199801,3,24809,17786,31832,43,31,55,FR,France\n199752,3,29039,21984,36094,50,38,62,FR,France\n199751,3,34924,27737,42111,60,48,72,FR,France\n199750,3,33527,26388,40666,58,46,70,FR,France\n199749,3,15978,11147,20809,27,19,35,FR,France\n199748,3,11507,7744,15270,20,14,26,FR,France\n199747,3,11059,7151,14967,19,12,26,FR,France\n199746,3,8073,4613,11533,14,8,20,FR,France\n199745,3,18202,13113,23291,31,22,40,FR,France\n199744,3,19770,14405,25135,34,25,43,FR,France\n199743,3,16707,11945,21469,29,21,37,FR,France\n199742,3,15340,10351,20329,26,17,35,FR,France\n199741,3,16933,11941,21925,29,20,38,FR,France\n199740,3,13292,8709,17875,23,15,31,FR,France\n199739,3,10189,6279,14099,18,11,25,FR,France\n199738,3,3231,1061,5401,6,2,10,FR,France\n199737,3,4542,1949,7135,8,4,12,FR,France\n199736,3,5131,2205,8057,9,4,14,FR,France\n199735,3,1842,0,3740,3,0,6,FR,France\n199734,3,3226,0,6717,6,0,12,FR,France\n199733,3,1799,0,4368,3,0,7,FR,France\n199732,3,2086,0,4411,4,0,8,FR,France\n199731,3,1386,0,3332,2,0,5,FR,France\n199730,3,2116,0,4919,4,0,9,FR,France\n199729,3,1973,0,4347,3,0,7,FR,France\n199728,3,1560,216,2904,3,1,5,FR,France\n199727,3,2540,754,4326,4,1,7,FR,France\n199726,3,5582,2699,8465,10,5,15,FR,France\n199725,3,4012,1090,6934,7,2,12,FR,France\n199724,3,4696,1824,7568,8,3,13,FR,France\n199723,3,4709,2136,7282,8,4,12,FR,France\n199722,3,2283,665,3901,4,1,7,FR,France\n199721,3,2108,664,3552,4,2,6,FR,France\n199720,3,3257,1519,4995,6,3,9,FR,France\n199719,3,4646,2436,6856,8,4,12,FR,France\n199718,3,5246,2764,7728,9,5,13,FR,France\n199717,3,14236,9906,18566,24,17,31,FR,France\n199716,3,12169,8111,16227,21,14,28,FR,France\n199715,3,9516,6192,12840,16,10,22,FR,France\n199714,3,13602,9659,17545,23,16,30,FR,France\n199713,3,18032,13345,22719,31,23,39,FR,France\n199712,3,17199,12707,21691,30,22,38,FR,France\n199711,3,19988,15419,24557,34,26,42,FR,France\n199710,3,21903,17338,26468,38,30,46,FR,France\n199709,3,29860,24261,35459,51,41,61,FR,France\n199708,3,55445,47857,63033,95,82,108,FR,France\n199707,3,70876,62518,79234,122,108,136,FR,France\n199706,3,76906,68152,85660,132,117,147,FR,France\n199705,3,95900,86095,105705,165,148,182,FR,France\n199704,3,96896,87079,106713,167,150,184,FR,France\n199703,3,143844,131917,155771,248,227,269,FR,France\n199702,3,211578,197395,225761,364,340,388,FR,France\n199701,3,280440,263783,297097,483,454,512,FR,France\n199652,3,388201,369211,407191,670,637,703,FR,France\n199651,3,640627,617388,663866,1106,1066,1146,FR,France\n199650,3,535205,514568,555842,924,888,960,FR,France\n199649,3,411498,393335,429661,710,679,741,FR,France\n199648,3,195568,182563,208573,338,316,360,FR,France\n199647,3,71980,63619,80341,124,110,138,FR,France\n199646,3,32138,26358,37918,55,45,65,FR,France\n199645,3,25551,20136,30966,44,35,53,FR,France\n199644,3,10753,7230,14276,19,13,25,FR,France\n199643,3,12971,9311,16631,22,16,28,FR,France\n199642,3,11929,8472,15386,21,15,27,FR,France\n199641,3,9918,6674,13162,17,11,23,FR,France\n199640,3,10765,7067,14463,19,13,25,FR,France\n199639,3,8377,5183,11571,14,8,20,FR,France\n199638,3,9470,5965,12975,16,10,22,FR,France\n199637,3,2925,829,5021,5,1,9,FR,France\n199636,3,1122,23,2221,2,0,4,FR,France\n199635,3,1674,93,3255,3,0,6,FR,France\n199634,3,1273,122,2424,2,0,4,FR,France\n199633,3,540,0,1246,1,0,2,FR,France\n199632,3,1453,176,2730,3,1,5,FR,France\n199631,3,3010,752,5268,5,1,9,FR,France\n199630,3,2992,706,5278,5,1,9,FR,France\n199629,3,1559,144,2974,3,1,5,FR,France\n199628,3,3109,541,5677,5,1,9,FR,France\n199627,3,4456,1595,7317,8,3,13,FR,France\n199626,3,2871,1138,4604,5,2,8,FR,France\n199625,3,2308,856,3760,4,1,7,FR,France\n199624,3,2490,1067,3913,4,2,6,FR,France\n199623,3,2819,1262,4376,5,2,8,FR,France\n199622,3,4005,1984,6026,7,4,10,FR,France\n199621,3,7042,4291,9793,12,7,17,FR,France\n199620,3,10619,7365,13873,18,12,24,FR,France\n199619,3,11898,8065,15731,21,14,28,FR,France\n199618,3,18338,13352,23324,32,23,41,FR,France\n199617,3,24954,19100,30808,43,33,53,FR,France\n199616,3,29313,23868,34758,51,42,60,FR,France\n199615,3,51703,43644,59762,89,75,103,FR,France\n199614,3,44414,36774,52054,77,64,90,FR,France\n199613,3,30622,25062,36182,53,43,63,FR,France\n199612,3,31818,25852,37784,55,45,65,FR,France\n199611,3,24427,19499,29355,42,33,51,FR,France\n199610,3,20910,16198,25622,36,28,44,FR,France\n199609,3,19594,15228,23960,34,26,42,FR,France\n199608,3,19046,14850,23242,33,26,40,FR,France\n199607,3,23041,18338,27744,40,32,48,FR,France\n199606,3,21810,17153,26467,38,30,46,FR,France\n199605,3,25275,20410,30140,44,36,52,FR,France\n199604,3,43359,36948,49770,75,64,86,FR,France\n199603,3,54691,48016,61366,94,82,106,FR,France\n199602,3,105606,96106,115106,182,166,198,FR,France\n199601,3,223830,209274,238386,386,361,411,FR,France\n199552,3,397122,378252,415992,688,655,721,FR,France\n199551,3,749988,725434,774542,1299,1256,1342,FR,France\n199550,3,604926,583100,626752,1047,1009,1085,FR,France\n199549,3,375500,358200,392800,650,620,680,FR,France\n199548,3,206446,193457,219435,357,335,379,FR,France\n199547,3,120472,110526,130418,209,192,226,FR,France\n199546,3,62380,55042,69718,108,95,121,FR,France\n199545,3,29791,24523,35059,52,43,61,FR,France\n199544,3,13168,9820,16516,23,17,29,FR,France\n199543,3,16188,12389,19987,28,21,35,FR,France\n199542,3,15178,11387,18969,26,19,33,FR,France\n199541,3,14980,10851,19109,26,19,33,FR,France\n199540,3,16245,11610,20880,28,20,36,FR,France\n199539,3,18499,13844,23154,32,24,40,FR,France\n199538,3,13123,9410,16836,23,17,29,FR,France\n199537,3,4895,2666,7124,8,4,12,FR,France\n199536,3,3659,1574,5744,6,2,10,FR,France\n199535,3,2496,644,4348,4,1,7,FR,France\n199534,3,1887,214,3560,3,0,6,FR,France\n199533,3,905,0,2007,2,0,4,FR,France\n199532,3,700,0,1699,1,0,3,FR,France\n199531,3,1946,92,3800,3,0,6,FR,France\n199530,3,1898,46,3750,3,0,6,FR,France\n199529,3,2148,687,3609,4,1,7,FR,France\n199528,3,3312,1430,5194,6,3,9,FR,France\n199527,3,4853,2683,7023,8,4,12,FR,France\n199526,3,4986,2911,7061,9,5,13,FR,France\n199525,3,4571,2520,6622,8,4,12,FR,France\n199524,3,8058,5054,11062,14,9,19,FR,France\n199523,3,13820,9801,17839,24,17,31,FR,France\n199522,3,14124,9999,18249,24,17,31,FR,France\n199521,3,11931,8655,15207,21,15,27,FR,France\n199520,3,18846,14311,23381,33,25,41,FR,France\n199519,3,26261,21488,31034,45,37,53,FR,France\n199518,3,39231,33258,45204,68,58,78,FR,France\n199517,3,88640,79343,97937,153,137,169,FR,France\n199516,3,140488,129439,151537,243,224,262,FR,France\n199515,3,181007,169110,192904,313,292,334,FR,France\n199514,3,248704,235144,262264,431,408,454,FR,France\n199513,3,209839,197191,222487,363,341,385,FR,France\n199512,3,122434,112497,132371,212,195,229,FR,France\n199511,3,81730,73346,90114,142,127,157,FR,France\n199510,3,49387,42703,56071,86,74,98,FR,France\n199509,3,39696,33259,46133,69,58,80,FR,France\n199508,3,38008,32225,43791,66,56,76,FR,France\n199507,3,30550,25479,35621,53,44,62,FR,France\n199506,3,37351,32007,42695,65,56,74,FR,France\n199505,3,27876,23218,32534,48,40,56,FR,France\n199504,3,27643,22818,32468,48,40,56,FR,France\n199503,3,24844,20391,29297,43,35,51,FR,France\n199502,3,23480,19249,27711,41,34,48,FR,France\n199501,3,26556,21916,31196,46,38,54,FR,France\n199452,3,22036,17495,26577,38,30,46,FR,France\n199451,3,26912,21750,32074,47,38,56,FR,France\n199450,3,28831,23470,34192,50,41,59,FR,France\n199449,3,21161,16559,25763,37,29,45,FR,France\n199448,3,18487,14456,22518,32,25,39,FR,France\n199447,3,15206,11578,18834,26,20,32,FR,France\n199446,3,14252,10525,17979,25,19,31,FR,France\n199445,3,12152,8448,15856,21,15,27,FR,France\n199444,3,11307,7688,14926,20,14,26,FR,France\n199443,3,11254,8002,14506,20,14,26,FR,France\n199442,3,14406,10653,18159,25,18,32,FR,France\n199441,3,14073,10341,17805,24,18,30,FR,France\n199440,3,15962,11850,20074,28,21,35,FR,France\n199439,3,15878,11643,20113,28,21,35,FR,France\n199438,3,15366,11100,19632,27,20,34,FR,France\n199437,3,5949,3561,8337,10,6,14,FR,France\n199436,3,2806,1133,4479,5,2,8,FR,France\n199435,3,4556,2358,6754,8,4,12,FR,France\n199434,3,3459,1444,5474,6,2,10,FR,France\n199433,3,4272,977,7567,7,1,13,FR,France\n199432,3,4786,1613,7959,8,2,14,FR,France\n199431,3,5027,1580,8474,9,3,15,FR,France\n199430,3,2100,520,3680,4,1,7,FR,France\n199429,3,1188,0,2384,2,0,4,FR,France\n199428,3,1581,316,2846,3,1,5,FR,France\n199427,3,713,0,1459,1,0,2,FR,France\n199426,3,990,80,1900,2,0,4,FR,France\n199425,3,5431,3222,7640,9,5,13,FR,France\n199424,3,6288,3723,8853,11,7,15,FR,France\n199423,3,6440,1052,11828,11,2,20,FR,France\n199422,3,845,0,2449,1,0,4,FR,France\n199421,3,2197,395,3999,4,1,7,FR,France\n199420,3,2217,852,3582,4,2,6,FR,France\n199419,3,1483,406,2560,3,1,5,FR,France\n199418,3,3705,1940,5470,6,3,9,FR,France\n199417,3,2288,1064,3512,4,2,6,FR,France\n199416,3,5156,3176,7136,9,6,12,FR,France\n199415,3,6952,4678,9226,12,8,16,FR,France\n199414,3,4671,2784,6558,8,5,11,FR,France\n199413,3,3343,1641,5045,6,3,9,FR,France\n199412,3,4305,2412,6198,7,4,10,FR,France\n199411,3,5399,3327,7471,9,5,13,FR,France\n199410,3,4548,2529,6567,8,4,12,FR,France\n199409,3,5635,3251,8019,10,6,14,FR,France\n199408,3,9539,6652,12426,17,12,22,FR,France\n199407,3,14639,11188,18090,25,19,31,FR,France\n199406,3,17308,13395,21221,30,23,37,FR,France\n199405,3,18489,14290,22688,32,25,39,FR,France\n199404,3,23712,19048,28376,41,33,49,FR,France\n199403,3,29882,24817,34947,52,43,61,FR,France\n199402,3,47402,41415,53389,82,72,92,FR,France\n199401,3,118119,108182,128056,205,188,222,FR,France\n199352,3,233137,218608,247666,406,381,431,FR,France\n199351,3,377472,359792,395152,658,627,689,FR,France\n199350,3,627639,607097,648181,1094,1058,1130,FR,France\n199349,3,898045,873419,922671,1565,1522,1608,FR,France\n199348,3,527582,507752,547412,920,885,955,FR,France\n199347,3,241371,226769,255973,421,396,446,FR,France\n199346,3,76034,68003,84065,133,119,147,FR,France\n199345,3,32289,27022,37556,56,47,65,FR,France\n199344,3,17832,14015,21649,31,24,38,FR,France\n199343,3,15098,11333,18863,26,19,33,FR,France\n199342,3,19187,14893,23481,33,26,40,FR,France\n199341,3,18285,14384,22186,32,25,39,FR,France\n199340,3,13805,10348,17262,24,18,30,FR,France\n199339,3,14783,11173,18393,26,20,32,FR,France\n199338,3,10492,7329,13655,18,12,24,FR,France\n199337,3,7023,4503,9543,12,8,16,FR,France\n199336,3,4361,2445,6277,8,5,11,FR,France\n199335,3,5589,3066,8112,10,6,14,FR,France\n199334,3,2984,1209,4759,5,2,8,FR,France\n199333,3,3217,758,5676,6,2,10,FR,France\n199332,3,3755,1051,6459,7,2,12,FR,France\n199331,3,4163,1768,6558,7,3,11,FR,France\n199330,3,4055,1907,6203,7,3,11,FR,France\n199329,3,3714,1668,5760,6,2,10,FR,France\n199328,3,1774,484,3064,3,1,5,FR,France\n199327,3,2574,918,4230,4,1,7,FR,France\n199326,3,3048,1450,4646,5,2,8,FR,France\n199325,3,8348,5260,11436,15,10,20,FR,France\n199324,3,6624,3747,9501,12,7,17,FR,France\n199323,3,7424,4302,10546,13,8,18,FR,France\n199322,3,3432,1849,5015,6,3,9,FR,France\n199321,3,5942,3670,8214,10,6,14,FR,France\n199320,3,5137,3157,7117,9,6,12,FR,France\n199319,3,4593,2725,6461,8,5,11,FR,France\n199318,3,5027,3075,6979,9,6,12,FR,France\n199317,3,8111,5138,11084,14,9,19,FR,France\n199316,3,24932,19468,30396,43,33,53,FR,France\n199315,3,22181,17147,27215,39,30,48,FR,France\n199314,3,38266,30865,45667,67,54,80,FR,France\n199313,3,62987,54506,71468,110,95,125,FR,France\n199312,3,63493,55956,71030,111,98,124,FR,France\n199311,3,80548,72628,88468,140,126,154,FR,France\n199310,3,127910,117688,138132,223,205,241,FR,France\n199309,3,184150,171378,196922,321,299,343,FR,France\n199308,3,222932,209051,236813,389,365,413,FR,France\n199307,3,248494,234936,262052,433,409,457,FR,France\n199306,3,286939,271830,302048,500,474,526,FR,France\n199305,3,255890,241516,270264,446,421,471,FR,France\n199304,3,193107,181261,204953,337,316,358,FR,France\n199303,3,147854,137256,158452,258,240,276,FR,France\n199302,3,90269,82164,98374,157,143,171,FR,France\n199301,3,75288,67244,83332,131,117,145,FR,France\n199253,3,56622,49107,64137,99,86,112,FR,France\n199252,3,49588,42568,56608,87,75,99,FR,France\n199251,3,41156,35024,47288,72,61,83,FR,France\n199250,3,40100,34699,45501,70,61,79,FR,France\n199249,3,39146,33847,44445,69,60,78,FR,France\n199248,3,32392,27499,37285,57,48,66,FR,France\n199247,3,26276,21797,30755,46,38,54,FR,France\n199246,3,22758,18462,27054,40,32,48,FR,France\n199245,3,22023,17804,26242,39,32,46,FR,France\n199244,3,27619,22945,32293,48,40,56,FR,France\n199243,3,24969,20704,29234,44,37,51,FR,France\n199242,3,29980,25261,34699,52,44,60,FR,France\n199241,3,24091,19953,28229,42,35,49,FR,France\n199240,3,17593,13885,21301,31,25,37,FR,France\n199239,3,13535,10301,16769,24,18,30,FR,France\n199238,3,9837,7106,12568,17,12,22,FR,France\n199237,3,7480,5130,9830,13,9,17,FR,France\n199236,3,5155,2958,7352,9,5,13,FR,France\n199235,3,6383,3687,9079,11,6,16,FR,France\n199234,3,2953,922,4984,5,1,9,FR,France\n199233,3,4046,1549,6543,7,3,11,FR,France\n199232,3,4963,2215,7711,9,4,14,FR,France\n199231,3,4233,1733,6733,7,3,11,FR,France\n199230,3,3091,1145,5037,5,2,8,FR,France\n199229,3,3586,1583,5589,6,2,10,FR,France\n199228,3,4179,2133,6225,7,3,11,FR,France\n199227,3,5568,3134,8002,10,6,14,FR,France\n199226,3,5886,3229,8543,10,5,15,FR,France\n199225,3,5304,2805,7803,9,5,13,FR,France\n199224,3,5928,3482,8374,10,6,14,FR,France\n199223,3,3914,1855,5973,7,3,11,FR,France\n199222,3,4899,2641,7157,9,5,13,FR,France\n199221,3,5059,2889,7229,9,5,13,FR,France\n199220,3,4308,2226,6390,8,4,12,FR,France\n199219,3,2982,1181,4783,5,2,8,FR,France\n199218,3,3887,1777,5997,7,3,11,FR,France\n199217,3,3614,1216,6012,6,2,10,FR,France\n199216,3,5460,2934,7986,10,6,14,FR,France\n199215,3,8642,5029,12255,15,9,21,FR,France\n199214,3,11346,7536,15156,20,13,27,FR,France\n199213,3,11693,8096,15290,20,14,26,FR,France\n199212,3,11752,7834,15670,21,14,28,FR,France\n199211,3,11689,7575,15803,20,13,27,FR,France\n199210,3,19224,12971,25477,34,23,45,FR,France\n199209,3,26629,20275,32983,47,36,58,FR,France\n199208,3,37667,30887,44447,66,54,78,FR,France\n199207,3,57312,48777,65847,100,85,115,FR,France\n199206,3,112450,99989,124911,197,175,219,FR,France\n199205,3,165474,151342,179606,290,265,315,FR,France\n199204,3,147959,133595,162323,259,234,284,FR,France\n199203,3,137893,122944,152842,241,215,267,FR,France\n199202,3,185852,166558,205146,325,291,359,FR,France\n199201,3,247688,222574,272802,434,390,478,FR,France\n199152,3,349815,325499,374131,615,572,658,FR,France\n199151,3,378413,355928,400898,666,626,706,FR,France\n199150,3,198721,182878,214564,350,322,378,FR,France\n199149,3,93903,82992,104814,165,146,184,FR,France\n199148,3,45173,37384,52962,79,65,93,FR,France\n199147,3,35691,28224,43158,63,50,76,FR,France\n199146,3,23685,17531,29839,42,31,53,FR,France\n199145,3,19565,13551,25579,34,23,45,FR,France\n199144,3,21571,15477,27665,38,27,49,FR,France\n199143,3,28842,21958,35726,51,39,63,FR,France\n199142,3,27483,20385,34581,48,36,60,FR,France\n199141,3,28185,20655,35715,50,37,63,FR,France\n199140,3,26740,16049,37431,47,28,66,FR,France\n199139,3,14373,8734,20012,25,15,35,FR,France\n199138,3,7460,3700,11220,13,6,20,FR,France\n199137,3,2429,434,4424,4,0,8,FR,France\n199136,3,2380,0,4882,4,0,8,FR,France\n199135,3,2372,0,5025,4,0,9,FR,France\n199134,3,2099,0,5104,4,0,9,FR,France\n199133,3,1654,0,4102,3,0,7,FR,France\n199132,3,625,0,2190,1,0,4,FR,France\n199131,3,2464,0,5830,4,0,10,FR,France\n199130,3,2382,0,6857,4,0,12,FR,France\n199129,3,3837,40,7634,7,0,14,FR,France\n199128,3,3297,152,6442,6,0,12,FR,France\n199127,3,3164,934,5394,6,2,10,FR,France\n199126,3,6376,3324,9428,11,6,16,FR,France\n199125,3,8218,4776,11660,14,8,20,FR,France\n199124,3,8223,4660,11786,14,8,20,FR,France\n199123,3,6801,3596,10006,12,6,18,FR,France\n199122,3,6050,2682,9418,11,5,17,FR,France\n199121,3,6391,3385,9397,11,6,16,FR,France\n199120,3,8633,4683,12583,15,8,22,FR,France\n199119,3,7785,3986,11584,14,7,21,FR,France\n199118,3,10856,6457,15255,19,11,27,FR,France\n199117,3,15603,10950,20256,27,19,35,FR,France\n199116,3,15665,11184,20146,28,20,36,FR,France\n199115,3,15062,10715,19409,26,18,34,FR,France\n199114,3,27862,21583,34141,49,38,60,FR,France\n199113,3,32179,25829,38529,57,46,68,FR,France\n199112,3,27873,22312,33434,49,39,59,FR,France\n199111,3,46186,38876,53496,81,68,94,FR,France\n199110,3,88750,77784,99716,156,137,175,FR,France\n199109,3,139093,124326,153860,245,219,271,FR,France\n199108,3,216369,198630,234108,381,350,412,FR,France\n199107,3,208836,191789,225883,367,337,397,FR,France\n199106,3,134737,121280,148194,237,213,261,FR,France\n199105,3,73564,62716,84412,129,110,148,FR,France\n199104,3,48253,39031,57475,85,69,101,FR,France\n199103,3,29382,22258,36506,52,39,65,FR,France\n199102,3,29759,22044,37474,52,38,66,FR,France\n199101,3,42927,33706,52148,76,60,92,FR,France\n199052,3,41262,31607,50917,73,56,90,FR,France\n199051,3,46924,37544,56304,83,66,100,FR,France\n199050,3,44125,36137,52113,78,64,92,FR,France\n199049,3,38379,30603,46155,68,54,82,FR,France\n199048,3,29571,22315,36827,52,39,65,FR,France\n199047,3,23358,15890,30826,41,28,54,FR,France\n199046,3,20246,7930,32562,36,14,58,FR,France\n199045,3,17571,11591,23551,31,20,42,FR,France\n199044,3,16182,10305,22059,29,19,39,FR,France\n199043,3,17579,11588,23570,31,20,42,FR,France\n199042,3,13011,7875,18147,23,14,32,FR,France\n199041,3,19723,13330,26116,35,24,46,FR,France\n199040,3,20433,14614,26252,36,26,46,FR,France\n199039,3,15618,10315,20921,28,19,37,FR,France\n199038,3,11146,6197,16095,20,11,29,FR,France\n199037,3,4051,1022,7080,7,2,12,FR,France\n199036,3,2542,124,4960,4,0,8,FR,France\n199035,3,934,0,2681,2,0,5,FR,France\n199034,3,201,0,595,0,0,1,FR,France\n199033,3,0,0,0,0,0,0,FR,France\n199032,3,1399,0,3849,2,0,6,FR,France\n199031,3,881,0,2206,2,0,4,FR,France\n199030,3,425,0,1262,1,0,2,FR,France\n199029,3,1077,0,2643,2,0,5,FR,France\n199028,3,959,0,2252,2,0,4,FR,France\n199027,3,2948,793,5103,5,1,9,FR,France\n199026,3,7236,2651,11821,13,5,21,FR,France\n199025,3,7879,3136,12622,14,6,22,FR,France\n199024,3,5727,2460,8994,10,4,16,FR,France\n199023,3,3655,1043,6267,6,1,11,FR,France\n199022,3,4196,1292,7100,7,2,12,FR,France\n199021,3,1004,0,2367,2,0,4,FR,France\n199020,3,4506,1771,7241,8,3,13,FR,France\n199019,3,5897,2440,9354,10,4,16,FR,France\n199018,3,1738,141,3335,3,0,6,FR,France\n199017,3,5278,2197,8359,9,4,14,FR,France\n199016,3,8129,3754,12504,14,6,22,FR,France\n199015,3,11707,5831,17583,21,11,31,FR,France\n199014,3,12862,8177,17547,23,15,31,FR,France\n199013,3,21879,15088,28670,39,27,51,FR,France\n199012,3,17035,11135,22935,30,20,40,FR,France\n199011,3,20018,14311,25725,35,25,45,FR,France\n199010,3,16294,11045,21543,29,20,38,FR,France\n199009,3,21793,15460,28126,39,28,50,FR,France\n199008,3,26110,19342,32878,46,34,58,FR,France\n199007,3,61742,49720,73764,109,88,130,FR,France\n199006,3,399984,353345,446623,707,625,789,FR,France\n199005,3,161765,146354,177176,286,259,313,FR,France\n199004,3,287771,267698,307844,509,474,544,FR,France\n199003,3,315466,296550,334382,558,525,591,FR,France\n199002,3,345060,326087,364033,610,576,644,FR,France\n199001,3,483600,460913,506287,855,815,895,FR,France\n198952,3,581149,556023,606275,1035,990,1080,FR,France\n198951,3,821540,793846,849234,1463,1414,1512,FR,France\n198950,3,749283,723633,774933,1334,1288,1380,FR,France\n198949,3,358043,340053,376033,638,606,670,FR,France\n198948,3,119087,108253,129921,212,193,231,FR,France\n198947,3,40963,33897,48029,73,60,86,FR,France\n198946,3,23547,17952,29142,42,32,52,FR,France\n198945,3,22711,16999,28423,40,30,50,FR,France\n198944,3,23405,17475,29335,42,31,53,FR,France\n198943,3,29549,23287,35811,53,42,64,FR,France\n198942,3,39410,32172,46648,70,57,83,FR,France\n198941,3,43763,35245,52281,78,63,93,FR,France\n198940,3,31453,24288,38618,56,43,69,FR,France\n198939,3,24622,18425,30819,44,33,55,FR,France\n198938,3,18296,13483,23109,33,24,42,FR,France\n198937,3,12022,8082,15962,21,14,28,FR,France\n198936,3,4769,2299,7239,8,4,12,FR,France\n198935,3,4661,1696,7626,8,3,13,FR,France\n198934,3,6039,2185,9893,11,4,18,FR,France\n198933,3,7940,3858,12022,14,7,21,FR,France\n198932,3,7114,2361,11867,13,5,21,FR,France\n198931,3,2721,0,5478,5,0,10,FR,France\n198930,3,3168,561,5775,6,1,11,FR,France\n198929,3,3909,1504,6314,7,3,11,FR,France\n198928,3,1284,105,2463,2,0,4,FR,France\n198927,3,3641,1350,5932,6,2,10,FR,France\n198926,3,5753,2885,8621,10,5,15,FR,France\n198925,3,6299,3454,9144,11,6,16,FR,France\n198924,3,6337,3537,9137,11,6,16,FR,France\n198923,3,11779,7984,15574,21,14,28,FR,France\n198922,3,9104,4764,13444,16,8,24,FR,France\n198921,3,9554,4316,14792,17,8,26,FR,France\n198920,3,6093,1023,11163,11,2,20,FR,France\n198919,3,0,,,0,,,FR,France\n198918,3,13452,1365,25539,24,2,46,FR,France\n198917,3,10949,7147,14751,19,12,26,FR,France\n198916,3,10908,7494,14322,19,13,25,FR,France\n198915,3,9667,6209,13125,17,11,23,FR,France\n198914,3,15230,10469,19991,27,19,35,FR,France\n198913,3,10564,6767,14361,19,12,26,FR,France\n198912,3,13419,9542,17296,24,17,31,FR,France\n198911,3,16633,12140,21126,30,22,38,FR,France\n198910,3,12387,8750,16024,22,16,28,FR,France\n198909,3,12895,9183,16607,23,16,30,FR,France\n198908,3,19746,15258,24234,35,27,43,FR,France\n198907,3,27277,21760,32794,49,39,59,FR,France\n198906,3,47844,40320,55368,85,72,98,FR,France\n198905,3,52840,45665,60015,94,81,107,FR,France\n198904,3,54942,47750,62134,98,85,111,FR,France\n198903,3,66010,58065,73955,118,104,132,FR,France\n198902,3,112284,102003,122565,200,182,218,FR,France\n198901,3,202266,188305,216227,360,335,385,FR,France\n198852,3,467971,447033,488909,837,800,874,FR,France\n198851,3,872748,846468,899028,1562,1515,1609,FR,France\n198850,3,1001824,974799,1028849,1793,1745,1841,FR,France\n198849,3,966523,940068,992978,1729,1682,1776,FR,France\n198848,3,637811,614785,660837,1141,1100,1182,FR,France\n198847,3,246062,231234,260890,440,413,467,FR,France\n198846,3,92484,83160,101808,165,148,182,FR,France\n198845,3,53940,46148,61732,97,83,111,FR,France\n198844,3,42106,35336,48876,75,63,87,FR,France\n198843,3,38252,31909,44595,68,57,79,FR,France\n198842,3,45495,38467,52523,81,68,94,FR,France\n198841,3,46336,39344,53328,83,70,96,FR,France\n198840,3,39882,33507,46257,71,60,82,FR,France\n198839,3,43730,36755,50705,78,66,90,FR,France\n198838,3,35243,29367,41119,63,52,74,FR,France\n198837,3,15537,11911,19163,28,22,34,FR,France\n198836,3,7539,4840,10238,13,8,18,FR,France\n198835,3,7797,4762,10832,14,9,19,FR,France\n198834,3,4950,2005,7895,9,4,14,FR,France\n198833,3,7937,3861,12013,14,7,21,FR,France\n198832,3,7033,2595,11471,13,5,21,FR,France\n198831,3,8758,3591,13925,16,7,25,FR,France\n198830,3,4205,1224,7186,8,3,13,FR,France\n198829,3,6103,1013,11193,11,2,20,FR,France\n198828,3,8562,3483,13641,15,6,24,FR,France\n198827,3,4690,2196,7184,8,4,12,FR,France\n198826,3,7065,3905,10225,13,7,19,FR,France\n198825,3,7657,4664,10650,14,9,19,FR,France\n198824,3,6676,3978,9374,12,7,17,FR,France\n198823,3,8695,5755,11635,16,11,21,FR,France\n198822,3,11566,8282,14850,21,15,27,FR,France\n198821,3,11107,7742,14472,20,14,26,FR,France\n198820,3,14118,10223,18013,25,18,32,FR,France\n198819,3,18260,13847,22673,33,25,41,FR,France\n198818,3,20415,16281,24549,37,30,44,FR,France\n198817,3,21750,17436,26064,39,31,47,FR,France\n198816,3,33730,27496,39964,60,49,71,FR,France\n198815,3,70616,61754,79478,126,110,142,FR,France\n198814,3,123868,113211,134525,222,203,241,FR,France\n198813,3,193710,181519,205901,347,325,369,FR,France\n198812,3,283445,268834,298056,507,481,533,FR,France\n198811,3,316175,300858,331492,566,539,593,FR,France\n198810,3,235142,222004,248280,421,397,445,FR,France\n198809,3,135564,125263,145865,243,225,261,FR,France\n198808,3,87753,78449,97057,157,140,174,FR,France\n198807,3,77099,68423,85775,138,122,154,FR,France\n198806,3,69349,61502,77196,124,110,138,FR,France\n198805,3,72705,64952,80458,130,116,144,FR,France\n198804,3,72818,64944,80692,130,116,144,FR,France\n198803,3,68869,60922,76816,123,109,137,FR,France\n198802,3,59743,51907,67579,107,93,121,FR,France\n198801,3,60929,52573,69285,109,94,124,FR,France\n198753,3,47257,38170,56344,85,69,101,FR,France\n198752,3,11935,2353,21517,21,4,38,FR,France\n198751,3,47744,34266,61222,86,62,110,FR,France\n198750,3,57767,50181,65353,104,90,118,FR,France\n198749,3,49380,42461,56299,89,77,101,FR,France\n198748,3,41871,35115,48627,75,63,87,FR,France\n198747,3,29688,23465,35911,53,42,64,FR,France\n198746,3,37216,30199,44233,67,54,80,FR,France\n198745,3,35456,29024,41888,64,52,76,FR,France\n198744,3,41024,33829,48219,74,61,87,FR,France\n198743,3,46356,38370,54342,83,69,97,FR,France\n198742,3,38021,30236,45806,68,54,82,FR,France\n198741,3,42021,32016,52026,76,58,94,FR,France\n198740,3,24641,15930,33352,44,28,60,FR,France\n198739,3,32328,23548,41108,58,42,74,FR,France\n198738,3,16782,11870,21694,30,21,39,FR,France\n198737,3,11208,6542,15874,20,12,28,FR,France\n198736,3,7906,4014,11798,14,7,21,FR,France\n198735,3,6149,2970,9328,11,5,17,FR,France\n198734,3,6631,2734,10528,12,5,19,FR,France\n198733,3,6404,1834,10974,12,4,20,FR,France\n198732,3,7215,2353,12077,13,4,22,FR,France\n198731,3,8233,3655,12811,15,7,23,FR,France\n198730,3,4642,1301,7983,8,2,14,FR,France\n198729,3,4389,913,7865,8,2,14,FR,France\n198728,3,2702,138,5266,5,0,10,FR,France\n198727,3,10171,5904,14438,18,10,26,FR,France\n198726,3,12341,7824,16858,22,14,30,FR,France\n198725,3,23413,15490,31336,42,28,56,FR,France\n198724,3,11289,7282,15296,20,13,27,FR,France\n198723,3,15857,10943,20771,29,20,38,FR,France\n198722,3,14887,9743,20031,27,18,36,FR,France\n198721,3,17619,12649,22589,32,23,41,FR,France\n198720,3,10344,6454,14234,19,12,26,FR,France\n198719,3,12539,7943,17135,23,15,31,FR,France\n198718,3,16095,10330,21860,29,19,39,FR,France\n198717,3,21256,14850,27662,38,26,50,FR,France\n198716,3,32416,25100,39732,58,45,71,FR,France\n198715,3,44292,36456,52128,80,66,94,FR,France\n198714,3,50642,41866,59418,91,75,107,FR,France\n198713,3,62246,52749,71743,112,95,129,FR,France\n198712,3,59625,50653,68597,107,91,123,FR,France\n198711,3,53561,45035,62087,96,81,111,FR,France\n198710,3,93067,80519,105615,167,144,190,FR,France\n198709,3,147006,133519,160493,264,240,288,FR,France\n198708,3,217779,202179,233379,391,363,419,FR,France\n198707,3,288180,270718,305642,518,487,549,FR,France\n198706,3,296702,279051,314353,533,501,565,FR,France\n198705,3,236046,219483,252609,424,394,454,FR,France\n198704,3,158333,143625,173041,285,259,311,FR,France\n198703,3,103841,91699,115983,187,165,209,FR,France\n198702,3,74213,64014,84412,133,115,151,FR,France\n198701,3,69745,59207,80283,125,106,144,FR,France\n198652,3,76263,64958,87568,138,118,158,FR,France\n198651,3,72920,63047,82793,132,114,150,FR,France\n198650,3,73413,64019,82807,133,116,150,FR,France\n198649,3,56296,48229,64363,102,87,117,FR,France\n198648,3,46031,38578,53484,83,70,96,FR,France\n198647,3,36740,29710,43770,66,53,79,FR,France\n198646,3,32134,25327,38941,58,46,70,FR,France\n198645,3,38964,31382,46546,70,56,84,FR,France\n198644,3,28646,22048,35244,52,40,64,FR,France\n198643,3,27532,20842,34222,50,38,62,FR,France\n198642,3,31815,25124,38506,57,45,69,FR,France\n198641,3,32864,25939,39789,59,47,71,FR,France\n198640,3,33516,26776,40256,60,48,72,FR,France\n198639,3,28665,22477,34853,52,41,63,FR,France\n198638,3,26615,20479,32751,48,37,59,FR,France\n198637,3,15998,10802,21194,29,20,38,FR,France\n198636,3,9182,4982,13382,17,9,25,FR,France\n198635,3,10587,4470,16704,19,8,30,FR,France\n198634,3,5762,858,10666,10,1,19,FR,France\n198633,3,3115,554,5676,6,1,11,FR,France\n198632,3,1027,0,2311,2,0,4,FR,France\n198631,3,2247,0,4574,4,0,8,FR,France\n198630,3,2346,141,4551,4,0,8,FR,France\n198629,3,3654,931,6377,7,2,12,FR,France\n198628,3,2327,0,5318,4,0,9,FR,France\n198627,3,7529,3353,11705,14,6,22,FR,France\n198626,3,8778,5106,12450,16,9,23,FR,France\n198625,3,11075,6804,15346,20,12,28,FR,France\n198624,3,11160,7252,15068,20,13,27,FR,France\n198623,3,14372,9896,18848,26,18,34,FR,France\n198622,3,9717,5594,13840,18,11,25,FR,France\n198621,3,14460,9575,19345,26,17,35,FR,France\n198620,3,17133,12106,22160,31,22,40,FR,France\n198619,3,22177,16008,28346,40,29,51,FR,France\n198618,3,31736,24115,39357,57,43,71,FR,France\n198617,3,34874,27440,42308,63,50,76,FR,France\n198616,3,41196,32894,49498,74,59,89,FR,France\n198615,3,42659,33537,51781,77,61,93,FR,France\n198614,3,49792,39728,59856,90,72,108,FR,France\n198613,3,87249,63562,110936,157,114,200,FR,France\n198612,3,124777,97237,152317,225,175,275,FR,France\n198611,3,168146,151035,185257,303,272,334,FR,France\n198610,3,257305,231225,283385,464,417,511,FR,France\n198609,3,321140,296644,345636,580,536,624,FR,France\n198608,3,448786,419219,478353,810,757,863,FR,France\n198607,3,490723,460150,521296,886,831,941,FR,France\n198606,3,439300,411764,466836,793,743,843,FR,France\n198605,3,364727,339868,389586,658,613,703,FR,France\n198604,3,348509,322464,374554,629,582,676,FR,France\n198603,3,271539,248654,294424,490,449,531,FR,France\n198602,3,178138,159344,196932,322,288,356,FR,France\n198601,3,112614,96539,128689,203,174,232,FR,France\n198552,3,86452,72250,100654,157,131,183,FR,France\n198551,3,114666,99538,129794,208,181,235,FR,France\n198550,3,86031,73604,98458,156,133,179,FR,France\n198549,3,65931,55326,76536,120,101,139,FR,France\n198548,3,68291,57581,79001,124,105,143,FR,France\n198547,3,66177,55221,77133,120,100,140,FR,France\n198546,3,70534,58788,82280,128,107,149,FR,France\n198545,3,57514,47167,67861,104,85,123,FR,France\n198544,3,67356,55744,78968,122,101,143,FR,France\n198543,3,87402,74208,100596,158,134,182,FR,France\n198542,3,76218,64604,87832,138,117,159,FR,France\n198541,3,45712,36755,54669,83,67,99,FR,France\n198540,3,49739,40335,59143,90,73,107,FR,France\n198539,3,39819,31234,48404,72,56,88,FR,France\n198538,3,27605,20614,34596,50,37,63,FR,France\n198537,3,22219,15626,28812,40,28,52,FR,France\n198536,3,27986,18992,36980,51,35,67,FR,France\n198535,3,30215,18546,41884,55,34,76,FR,France\n198534,3,40389,24786,55992,73,45,101,FR,France\n198533,3,22611,8819,36403,41,16,66,FR,France\n198532,3,7488,1851,13125,14,4,24,FR,France\n198531,3,16958,8479,25437,31,16,46,FR,France\n198530,3,11598,5507,17689,21,10,32,FR,France\n198529,3,13054,6474,19634,24,12,36,FR,France\n198528,3,14588,7659,21517,26,13,39,FR,France\n198527,3,19670,11761,27579,36,22,50,FR,France\n198526,3,18609,12637,24581,34,23,45,FR,France\n198525,3,19362,12454,26270,35,22,48,FR,France\n198524,3,19855,13577,26133,36,25,47,FR,France\n198523,3,19373,10010,28736,35,18,52,FR,France\n198522,3,24099,17190,31008,44,31,57,FR,France\n198521,3,26096,19621,32571,47,35,59,FR,France\n198520,3,27896,20885,34907,51,38,64,FR,France\n198519,3,43154,32821,53487,78,59,97,FR,France\n198518,3,40555,29935,51175,74,55,93,FR,France\n198517,3,34053,24366,43740,62,44,80,FR,France\n198516,3,50362,36451,64273,91,66,116,FR,France\n198515,3,63881,45538,82224,116,83,149,FR,France\n198514,3,134545,114400,154690,244,207,281,FR,France\n198513,3,197206,176080,218332,357,319,395,FR,France\n198512,3,245240,223304,267176,445,405,485,FR,France\n198511,3,276205,252399,300011,501,458,544,FR,France\n198510,3,353231,326279,380183,640,591,689,FR,France\n198509,3,369895,341109,398681,670,618,722,FR,France\n198508,3,389886,359529,420243,707,652,762,FR,France\n198507,3,471852,432599,511105,855,784,926,FR,France\n198506,3,565825,518011,613639,1026,939,1113,FR,France\n198505,3,637302,592795,681809,1155,1074,1236,FR,France\n198504,3,424937,390794,459080,770,708,832,FR,France\n198503,3,213901,174689,253113,388,317,459,FR,France\n198502,3,97586,80949,114223,177,147,207,FR,France\n198501,3,85489,65918,105060,155,120,190,FR,France\n198452,3,84830,60602,109058,154,110,198,FR,France\n198451,3,101726,80242,123210,185,146,224,FR,France\n198450,3,123680,101401,145959,225,184,266,FR,France\n198449,3,101073,81684,120462,184,149,219,FR,France\n198448,3,78620,60634,96606,143,110,176,FR,France\n198447,3,72029,54274,89784,131,99,163,FR,France\n198446,3,87330,67686,106974,159,123,195,FR,France\n198445,3,135223,101414,169032,246,184,308,FR,France\n198444,3,68422,20056,116788,125,37,213,FR,France\n' \ No newline at end of file diff --git a/module3/data_8.csv b/module3/data_8.csv new file mode 100644 index 0000000000000000000000000000000000000000..c0201761a330c8a457b40ceca779ebc2badd85a5 --- /dev/null +++ b/module3/data_8.csv @@ -0,0 +1 @@ +b'# @source="r\xe9seau Sentinelles, INSERM, Sorbonne Universit\xe9, http://www.sentiweb.fr", @meta={"period":[198444,202221],"geo":["PAY","1"],"geo_ref":"insee","indicator":"3","type":"all","conf_int":true,"compact":false}, @date=2022-06-04T12:28:03+02:00\nweek,indicator,inc,inc_low,inc_up,inc100,inc100_low,inc100_up,geo_insee,geo_name\n202221,3,17538,12255,22821,26,18,34,FR,France\n202220,3,20413,16271,24555,31,25,37,FR,France\n202219,3,17874,14068,21680,27,21,33,FR,France\n202218,3,30353,25089,35617,46,38,54,FR,France\n202217,3,36006,30373,41639,54,46,62,FR,France\n202216,3,49949,42836,57062,75,64,86,FR,France\n202215,3,100806,90824,110788,152,137,167,FR,France\n202214,3,155441,143891,166991,234,217,251,FR,France\n202213,3,191914,179558,204270,289,270,308,FR,France\n202212,3,166224,155035,177413,251,234,268,FR,France\n202211,3,122849,113306,132392,185,171,199,FR,France\n202210,3,87904,79741,96067,133,121,145,FR,France\n202209,3,50182,43958,56406,76,67,85,FR,France\n202208,3,30963,25942,35984,47,39,55,FR,France\n202207,3,34882,29446,40318,53,45,61,FR,France\n202206,3,46623,40398,52848,70,61,79,FR,France\n202205,3,62970,56043,69897,95,85,105,FR,France\n202204,3,72209,64804,79614,109,98,120,FR,France\n202203,3,74613,67144,82082,113,102,124,FR,France\n202202,3,55920,49511,62329,84,74,94,FR,France\n202201,3,57629,50699,64559,87,77,97,FR,France\n202152,3,54349,47029,61669,82,71,93,FR,France\n202151,3,41698,35359,48037,63,53,73,FR,France\n202150,3,38117,32497,43737,58,49,67,FR,France\n202149,3,40168,34716,45620,61,53,69,FR,France\n202148,3,41842,36364,47320,63,55,71,FR,France\n202147,3,36598,31338,41858,55,47,63,FR,France\n202146,3,30059,25302,34816,46,39,53,FR,France\n202145,3,20364,16564,24164,31,25,37,FR,France\n202144,3,18999,15042,22956,29,23,35,FR,France\n202143,3,27040,21935,32145,41,33,49,FR,France\n202142,3,28343,23382,33304,43,35,51,FR,France\n202141,3,25043,20586,29500,38,31,45,FR,France\n202140,3,26286,21842,30730,40,33,47,FR,France\n202139,3,22155,18014,26296,34,28,40,FR,France\n202138,3,15614,12310,18918,24,19,29,FR,France\n202137,3,13673,10404,16942,21,16,26,FR,France\n202136,3,10289,7505,13073,16,12,20,FR,France\n202135,3,12609,9282,15936,19,14,24,FR,France\n202134,3,13081,9540,16622,20,15,25,FR,France\n202133,3,10392,7042,13742,16,11,21,FR,France\n202132,3,15586,11009,20163,24,17,31,FR,France\n202131,3,18855,13664,24046,29,21,37,FR,France\n202130,3,13991,9695,18287,21,14,28,FR,France\n202129,3,13626,9618,17634,21,15,27,FR,France\n202128,3,8636,5430,11842,13,8,18,FR,France\n202127,3,10693,6838,14548,16,10,22,FR,France\n202126,3,7086,4109,10063,11,6,16,FR,France\n202125,3,7942,5540,10344,12,8,16,FR,France\n202124,3,4855,3011,6699,7,4,10,FR,France\n202123,3,6710,4455,8965,10,7,13,FR,France\n202122,3,7879,5495,10263,12,8,16,FR,France\n202121,3,7827,5403,10251,12,8,16,FR,France\n202120,3,10278,7540,13016,16,12,20,FR,France\n202119,3,9539,6860,12218,14,10,18,FR,France\n202118,3,12135,9165,15105,18,14,22,FR,France\n202117,3,12058,8891,15225,18,13,23,FR,France\n202116,3,16505,12735,20275,25,19,31,FR,France\n202115,3,19306,15398,23214,29,23,35,FR,France\n202114,3,21073,17099,25047,32,26,38,FR,France\n202113,3,26413,22094,30732,40,33,47,FR,France\n202112,3,30658,25919,35397,46,39,53,FR,France\n202111,3,24988,20718,29258,38,32,44,FR,France\n202110,3,19539,15951,23127,30,25,35,FR,France\n202109,3,17572,13926,21218,27,21,33,FR,France\n202108,3,20882,16907,24857,32,26,38,FR,France\n202107,3,22393,18303,26483,34,28,40,FR,France\n202106,3,23183,19134,27232,35,29,41,FR,France\n202105,3,22426,18445,26407,34,28,40,FR,France\n202104,3,25804,21491,30117,39,32,46,FR,France\n202103,3,21810,17894,25726,33,27,39,FR,France\n202102,3,17320,13906,20734,26,21,31,FR,France\n202101,3,21799,17778,25820,33,27,39,FR,France\n202053,3,21220,16498,25942,32,25,39,FR,France\n202052,3,16428,12285,20571,25,19,31,FR,France\n202051,3,21619,17370,25868,33,27,39,FR,France\n202050,3,16845,13220,20470,26,20,32,FR,France\n202049,3,12939,9923,15955,20,15,25,FR,France\n202048,3,13804,10641,16967,21,16,26,FR,France\n202047,3,19085,15285,22885,29,23,35,FR,France\n202046,3,24801,20503,29099,38,31,45,FR,France\n202045,3,42516,36857,48175,65,56,74,FR,France\n202044,3,44567,38521,50613,68,59,77,FR,France\n202043,3,43799,37581,50017,67,58,76,FR,France\n202042,3,35183,29847,40519,53,45,61,FR,France\n202041,3,27926,23251,32601,42,35,49,FR,France\n202040,3,20443,16381,24505,31,25,37,FR,France\n202039,3,19810,15900,23720,30,24,36,FR,France\n202038,3,25559,21141,29977,39,32,46,FR,France\n202037,3,18485,14649,22321,28,22,34,FR,France\n202036,3,10390,7646,13134,16,12,20,FR,France\n202035,3,9918,6842,12994,15,10,20,FR,France\n202034,3,6084,3090,9078,9,4,14,FR,France\n202033,3,6106,3411,8801,9,5,13,FR,France\n202032,3,5918,3330,8506,9,5,13,FR,France\n202031,3,4351,2269,6433,7,4,10,FR,France\n202030,3,8179,5442,10916,12,8,16,FR,France\n202029,3,8687,5860,11514,13,9,17,FR,France\n202028,3,8325,5688,10962,13,9,17,FR,France\n202027,3,4066,2406,5726,6,3,9,FR,France\n202026,3,4039,2389,5689,6,3,9,FR,France\n202025,3,2853,1488,4218,4,2,6,FR,France\n202024,3,3058,1690,4426,5,3,7,FR,France\n202023,3,4168,2468,5868,6,3,9,FR,France\n202022,3,3580,1947,5213,5,3,7,FR,France\n202021,3,6114,4026,8202,9,6,12,FR,France\n202020,3,9315,6775,11855,14,10,18,FR,France\n202019,3,11679,8722,14636,18,14,22,FR,France\n202018,3,16398,12851,19945,25,20,30,FR,France\n202017,3,18082,14454,21710,27,21,33,FR,France\n202016,3,24165,19893,28437,37,31,43,FR,France\n202015,3,41049,35377,46721,62,53,71,FR,France\n202014,3,71666,64531,78801,109,98,120,FR,France\n202013,3,107742,99187,116297,164,151,177,FR,France\n202012,3,107283,98610,115956,163,150,176,FR,France\n202011,3,112943,104468,121418,172,159,185,FR,France\n202010,3,105145,96812,113478,160,147,173,FR,France\n202009,3,110696,102066,119326,168,155,181,FR,France\n202008,3,143753,133984,153522,218,203,233,FR,France\n202007,3,183610,172812,194408,279,263,295,FR,France\n202006,3,206669,195481,217857,314,297,331,FR,France\n202005,3,187957,177445,198469,285,269,301,FR,France\n202004,3,122331,113492,131170,186,173,199,FR,France\n202003,3,78413,71330,85496,119,108,130,FR,France\n202002,3,53614,47654,59574,81,72,90,FR,France\n202001,3,36850,31608,42092,56,48,64,FR,France\n201952,3,28135,23220,33050,43,36,50,FR,France\n201951,3,29786,25042,34530,45,38,52,FR,France\n201950,3,34223,29156,39290,52,44,60,FR,France\n201949,3,25662,21414,29910,39,33,45,FR,France\n201948,3,22367,18055,26679,34,27,41,FR,France\n201947,3,18669,14759,22579,28,22,34,FR,France\n201946,3,16030,12567,19493,24,19,29,FR,France\n201945,3,10138,7160,13116,15,10,20,FR,France\n201944,3,7822,5010,10634,12,8,16,FR,France\n201943,3,9487,6448,12526,14,9,19,FR,France\n201942,3,7747,5243,10251,12,8,16,FR,France\n201941,3,7122,4720,9524,11,7,15,FR,France\n201940,3,8505,5784,11226,13,9,17,FR,France\n201939,3,7091,4462,9720,11,7,15,FR,France\n201938,3,4897,2891,6903,7,4,10,FR,France\n201937,3,3172,1367,4977,5,2,8,FR,France\n201936,3,2295,728,3862,3,1,5,FR,France\n201935,3,1010,2,2018,2,0,4,FR,France\n201934,3,1672,279,3065,3,1,5,FR,France\n201933,3,1593,68,3118,2,0,4,FR,France\n201932,3,1592,71,3113,2,0,4,FR,France\n201931,3,2337,695,3979,4,2,6,FR,France\n201930,3,1944,415,3473,3,1,5,FR,France\n201929,3,2096,420,3772,3,0,6,FR,France\n201928,3,1195,125,2265,2,0,4,FR,France\n201927,3,2466,848,4084,4,2,6,FR,France\n201926,3,1798,402,3194,3,1,5,FR,France\n201925,3,1544,389,2699,2,0,4,FR,France\n201924,3,876,17,1735,1,0,2,FR,France\n201923,3,2004,748,3260,3,1,5,FR,France\n201922,3,2181,602,3760,3,1,5,FR,France\n201921,3,2585,1102,4068,4,2,6,FR,France\n201920,3,2891,1202,4580,4,1,7,FR,France\n201919,3,3221,1509,4933,5,2,8,FR,France\n201918,3,1385,278,2492,2,0,4,FR,France\n201917,3,3166,1348,4984,5,2,8,FR,France\n201916,3,3842,1973,5711,6,3,9,FR,France\n201915,3,5932,3669,8195,9,6,12,FR,France\n201914,3,12675,9167,16183,19,14,24,FR,France\n201913,3,16513,12530,20496,25,19,31,FR,France\n201912,3,22184,17786,26582,34,27,41,FR,France\n201911,3,31553,26556,36550,48,40,56,FR,France\n201910,3,49742,43268,56216,76,66,86,FR,France\n201909,3,88354,79564,97144,134,121,147,FR,France\n201908,3,172604,160024,185184,262,243,281,FR,France\n201907,3,307338,291220,323456,467,443,491,FR,France\n201906,3,394286,376782,411790,599,572,626,FR,France\n201905,3,355785,339295,372275,540,515,565,FR,France\n201904,3,241090,227261,254919,366,345,387,FR,France\n201903,3,147063,135890,158236,223,206,240,FR,France\n201902,3,75548,67632,83464,115,103,127,FR,France\n201901,3,50295,43525,57065,76,66,86,FR,France\n201852,3,37903,31375,44431,58,48,68,FR,France\n201851,3,39259,32977,45541,60,50,70,FR,France\n201850,3,27781,22638,32924,42,34,50,FR,France\n201849,3,19738,15481,23995,30,24,36,FR,France\n201848,3,19501,15275,23727,30,24,36,FR,France\n201847,3,15949,12105,19793,24,18,30,FR,France\n201846,3,11278,7957,14599,17,12,22,FR,France\n201845,3,11065,7791,14339,17,12,22,FR,France\n201844,3,6586,3875,9297,10,6,14,FR,France\n201843,3,6550,3988,9112,10,6,14,FR,France\n201842,3,7787,5129,10445,12,8,16,FR,France\n201841,3,8048,5098,10998,12,8,16,FR,France\n201840,3,7409,4717,10101,11,7,15,FR,France\n201839,3,7174,4235,10113,11,7,15,FR,France\n201838,3,7349,4399,10299,11,7,15,FR,France\n201837,3,4915,2386,7444,7,3,11,FR,France\n201836,3,3215,1349,5081,5,2,8,FR,France\n201835,3,1506,239,2773,2,0,4,FR,France\n201834,3,1368,116,2620,2,0,4,FR,France\n201833,3,1962,5,3919,3,0,6,FR,France\n201832,3,1839,183,3495,3,0,6,FR,France\n201831,3,2048,242,3854,3,0,6,FR,France\n201830,3,1951,202,3700,3,0,6,FR,France\n201829,3,1951,252,3650,3,0,6,FR,France\n201828,3,1654,52,3256,3,1,5,FR,France\n201827,3,3266,1145,5387,5,2,8,FR,France\n201826,3,3758,1493,6023,6,3,9,FR,France\n201825,3,4580,2220,6940,7,3,11,FR,France\n201824,3,3223,1351,5095,5,2,8,FR,France\n201823,3,1207,136,2278,2,0,4,FR,France\n201822,3,3202,1330,5074,5,2,8,FR,France\n201821,3,2537,763,4311,4,1,7,FR,France\n201820,3,2694,967,4421,4,1,7,FR,France\n201819,3,1025,0,2098,2,0,4,FR,France\n201818,3,3541,1416,5666,5,2,8,FR,France\n201817,3,2573,1003,4143,4,2,6,FR,France\n201816,3,4818,2724,6912,7,4,10,FR,France\n201815,3,16311,12168,20454,25,19,31,FR,France\n201814,3,22666,18092,27240,35,28,42,FR,France\n201813,3,32680,25536,39824,50,39,61,FR,France\n201812,3,52040,44590,59490,79,68,90,FR,France\n201811,3,65159,56506,73812,99,86,112,FR,France\n201810,3,93512,83989,103035,142,128,156,FR,France\n201809,3,108545,98645,118445,165,150,180,FR,France\n201808,3,131870,120950,142790,201,184,218,FR,France\n201807,3,141138,130177,152099,215,198,232,FR,France\n201806,3,138810,128164,149456,211,195,227,FR,France\n201805,3,157839,146646,169032,240,223,257,FR,France\n201804,3,175483,163835,187131,267,249,285,FR,France\n201803,3,178329,166640,190018,271,253,289,FR,France\n201802,3,198079,185663,210495,302,283,321,FR,France\n201801,3,235493,220941,250045,358,336,380,FR,France\n201752,3,299114,279359,318869,459,429,489,FR,France\n201751,3,229448,214366,244530,352,329,375,FR,France\n201750,3,129535,118787,140283,199,183,215,FR,France\n201749,3,63789,56120,71458,98,86,110,FR,France\n201748,3,37568,31541,43595,58,49,67,FR,France\n201747,3,24972,19923,30021,38,30,46,FR,France\n201746,3,13398,9948,16848,21,16,26,FR,France\n201745,3,14035,8091,19979,22,13,31,FR,France\n201744,3,8544,5318,11770,13,8,18,FR,France\n201743,3,7300,4402,10198,11,7,15,FR,France\n201742,3,9966,6503,13429,15,10,20,FR,France\n201741,3,12434,8718,16150,19,13,25,FR,France\n201740,3,12725,8690,16760,20,14,26,FR,France\n201739,3,14949,10534,19364,23,16,30,FR,France\n201738,3,11463,7438,15488,18,12,24,FR,France\n201737,3,9716,6364,13068,15,10,20,FR,France\n201736,3,2815,917,4713,4,1,7,FR,France\n201735,3,2794,850,4738,4,1,7,FR,France\n201734,3,2497,879,4115,4,2,6,FR,France\n201733,3,2406,766,4046,4,1,7,FR,France\n201732,3,2667,879,4455,4,1,7,FR,France\n201731,3,3256,1158,5354,5,2,8,FR,France\n201730,3,3759,1299,6219,6,2,10,FR,France\n201729,3,5014,1989,8039,8,3,13,FR,France\n201728,3,5271,2576,7966,8,4,12,FR,France\n201727,3,3924,1432,6416,6,2,10,FR,France\n201726,3,3171,1166,5176,5,2,8,FR,France\n201725,3,837,0,1721,1,0,2,FR,France\n201724,3,1566,248,2884,2,0,4,FR,France\n201723,3,1664,203,3125,3,1,5,FR,France\n201722,3,1305,92,2518,2,0,4,FR,France\n201721,3,971,0,2046,1,0,3,FR,France\n201720,3,2686,793,4579,4,1,7,FR,France\n201719,3,3461,1490,5432,5,2,8,FR,France\n201718,3,2102,515,3689,3,1,5,FR,France\n201717,3,2071,428,3714,3,0,6,FR,France\n201716,3,1380,222,2538,2,0,4,FR,France\n201715,3,479,0,1242,1,0,2,FR,France\n201714,3,1110,0,2549,2,0,4,FR,France\n201713,3,7594,3808,11380,12,6,18,FR,France\n201712,3,8780,4834,12726,13,7,19,FR,France\n201711,3,7814,4329,11299,12,7,17,FR,France\n201710,3,11802,7964,15640,18,12,24,FR,France\n201709,3,13111,9099,17123,20,14,26,FR,France\n201708,3,29545,23136,35954,45,35,55,FR,France\n201707,3,59590,49764,69416,91,76,106,FR,France\n201706,3,93628,82560,104696,144,127,161,FR,France\n201705,3,193677,179255,208099,297,275,319,FR,France\n201704,3,256428,240618,272238,394,370,418,FR,France\n201703,3,267276,251345,283207,410,386,434,FR,France\n201702,3,260588,245070,276106,400,376,424,FR,France\n201701,3,255535,239743,271327,392,368,416,FR,France\n201652,3,224489,207799,241179,345,319,371,FR,France\n201651,3,187704,172655,202753,288,265,311,FR,France\n201650,3,126570,115081,138059,194,176,212,FR,France\n201649,3,76390,67374,85406,117,103,131,FR,France\n201648,3,40502,33949,47055,62,52,72,FR,France\n201647,3,22270,17612,26928,34,27,41,FR,France\n201646,3,20816,16125,25507,32,25,39,FR,France\n201645,3,15957,11448,20466,24,17,31,FR,France\n201644,3,15145,10357,19933,23,16,30,FR,France\n201643,3,9378,5830,12926,14,9,19,FR,France\n201642,3,12920,9044,16796,20,14,26,FR,France\n201641,3,13909,9709,18109,21,15,27,FR,France\n201640,3,13379,8969,17789,21,14,28,FR,France\n201639,3,10598,6814,14382,16,10,22,FR,France\n201638,3,5969,3073,8865,9,5,13,FR,France\n201637,3,4065,1538,6592,6,2,10,FR,France\n201636,3,2372,473,4271,4,1,7,FR,France\n201635,3,3420,1350,5490,5,2,8,FR,France\n201634,3,2233,0,4643,3,0,7,FR,France\n201633,3,1567,0,3938,2,0,6,FR,France\n201632,3,2100,93,4107,3,0,6,FR,France\n201631,3,3691,0,9120,6,0,14,FR,France\n201630,3,3209,644,5774,5,1,9,FR,France\n201629,3,1469,0,3073,2,0,4,FR,France\n201628,3,2725,357,5093,4,0,8,FR,France\n201627,3,5905,2343,9467,9,4,14,FR,France\n201626,3,4186,1636,6736,6,2,10,FR,France\n201625,3,4611,1560,7662,7,2,12,FR,France\n201624,3,4977,2404,7550,8,4,12,FR,France\n201623,3,4893,2416,7370,8,4,12,FR,France\n201622,3,5667,3015,8319,9,5,13,FR,France\n201621,3,5603,2475,8731,9,4,14,FR,France\n201620,3,3908,1679,6137,6,3,9,FR,France\n201619,3,4738,2308,7168,7,3,11,FR,France\n201618,3,8204,4394,12014,13,7,19,FR,France\n201617,3,13385,8822,17948,21,14,28,FR,France\n201616,3,25670,19632,31708,39,30,48,FR,France\n201615,3,48441,39824,57058,74,61,87,FR,France\n201614,3,92603,81261,103945,142,125,159,FR,France\n201613,3,170654,156387,184921,262,240,284,FR,France\n201612,3,272174,254338,290010,418,391,445,FR,France\n201611,3,304543,286453,322633,467,439,495,FR,France\n201610,3,261822,245799,277845,402,377,427,FR,France\n201609,3,229943,214533,245353,353,329,377,FR,France\n201608,3,195067,180874,209260,299,277,321,FR,France\n201607,3,207359,193223,221495,318,296,340,FR,France\n201606,3,196143,182672,209614,301,280,322,FR,France\n201605,3,178963,166296,191630,275,256,294,FR,France\n201604,3,148473,136591,160355,228,210,246,FR,France\n201603,3,75277,66630,83924,116,103,129,FR,France\n201602,3,44617,37821,51413,68,58,78,FR,France\n201601,3,42263,35556,48970,65,55,75,FR,France\n201553,3,24835,19106,30564,38,29,47,FR,France\n201552,3,19495,14319,24671,30,22,38,FR,France\n201551,3,29080,23014,35146,45,36,54,FR,France\n201550,3,25043,19812,30274,39,31,47,FR,France\n201549,3,21479,16686,26272,33,26,40,FR,France\n201548,3,16428,12273,20583,25,19,31,FR,France\n201547,3,14959,10856,19062,23,17,29,FR,France\n201546,3,12599,8237,16961,20,13,27,FR,France\n201545,3,13577,9192,17962,21,14,28,FR,France\n201544,3,14596,10025,19167,23,16,30,FR,France\n201543,3,16749,11745,21753,26,18,34,FR,France\n201542,3,18675,13613,23737,29,21,37,FR,France\n201541,3,13585,9830,17340,21,15,27,FR,France\n201540,3,13100,9349,16851,20,14,26,FR,France\n201539,3,8595,5671,11519,13,8,18,FR,France\n201538,3,8402,4929,11875,13,8,18,FR,France\n201537,3,8817,4089,13545,14,7,21,FR,France\n201536,3,1922,440,3404,3,1,5,FR,France\n201535,3,229,0,644,0,0,1,FR,France\n201534,3,760,0,1618,1,0,2,FR,France\n201533,3,1537,208,2866,2,0,4,FR,France\n201532,3,1594,66,3122,2,0,4,FR,France\n201531,3,2845,475,5215,4,0,8,FR,France\n201530,3,2447,353,4541,4,1,7,FR,France\n201529,3,2389,332,4446,4,1,7,FR,France\n201528,3,2089,105,4073,3,0,6,FR,France\n201527,3,2257,393,4121,3,0,6,FR,France\n201526,3,2536,774,4298,4,1,7,FR,France\n201525,3,2607,680,4534,4,1,7,FR,France\n201524,3,2849,1000,4698,4,1,7,FR,France\n201523,3,2702,857,4547,4,1,7,FR,France\n201522,3,4262,1989,6535,7,3,11,FR,France\n201521,3,5547,2875,8219,9,5,13,FR,France\n201520,3,4594,2040,7148,7,3,11,FR,France\n201519,3,6307,3256,9358,10,5,15,FR,France\n201518,3,3664,1544,5784,6,3,9,FR,France\n201517,3,6382,3523,9241,10,6,14,FR,France\n201516,3,12098,7913,16283,19,13,25,FR,France\n201515,3,19458,14192,24724,30,22,38,FR,France\n201514,3,30940,24617,37263,48,38,58,FR,France\n201513,3,49563,41986,57140,77,65,89,FR,France\n201512,3,70024,61079,78969,109,95,123,FR,France\n201511,3,99295,88838,109752,154,138,170,FR,France\n201510,3,143931,131682,156180,223,204,242,FR,France\n201509,3,238947,222902,254992,370,345,395,FR,France\n201508,3,409972,388670,431274,635,602,668,FR,France\n201507,3,517750,494301,541199,802,766,838,FR,France\n201506,3,533317,510627,556007,827,792,862,FR,France\n201505,3,457911,436964,478858,710,678,742,FR,France\n201504,3,292161,275491,308831,453,427,479,FR,France\n201503,3,153931,141290,166572,239,219,259,FR,France\n201502,3,104096,93358,114834,161,144,178,FR,France\n201501,3,70962,60505,81419,110,94,126,FR,France\n201452,3,63168,52705,73631,98,82,114,FR,France\n201451,3,45346,38002,52690,71,60,82,FR,France\n201450,3,42182,35049,49315,66,55,77,FR,France\n201449,3,33537,27281,39793,52,42,62,FR,France\n201448,3,28156,21896,34416,44,34,54,FR,France\n201447,3,18158,13186,23130,28,20,36,FR,France\n201446,3,14764,10174,19354,23,16,30,FR,France\n201445,3,16172,11449,20895,25,18,32,FR,France\n201444,3,15500,10464,20536,24,16,32,FR,France\n201443,3,16011,10653,21369,25,17,33,FR,France\n201442,3,21651,15828,27474,34,25,43,FR,France\n201441,3,22486,16295,28677,35,25,45,FR,France\n201440,3,16526,11583,21469,26,18,34,FR,France\n201439,3,8583,5054,12112,13,8,18,FR,France\n201438,3,10567,6496,14638,16,10,22,FR,France\n201437,3,7714,3780,11648,12,6,18,FR,France\n201436,3,5018,1949,8087,8,3,13,FR,France\n201435,3,2268,355,4181,4,1,7,FR,France\n201434,3,2367,250,4484,4,1,7,FR,France\n201433,3,2358,0,4875,4,0,8,FR,France\n201432,3,3229,447,6011,5,1,9,FR,France\n201431,3,4143,349,7937,6,0,12,FR,France\n201430,3,4631,902,8360,7,1,13,FR,France\n201429,3,5122,1258,8986,8,2,14,FR,France\n201428,3,4145,1200,7090,6,1,11,FR,France\n201427,3,4823,1997,7649,8,4,12,FR,France\n201426,3,3858,1235,6481,6,2,10,FR,France\n201425,3,4564,1276,7852,7,2,12,FR,France\n201424,3,2007,249,3765,3,0,6,FR,France\n201423,3,5164,1853,8475,8,3,13,FR,France\n201422,3,6907,1856,11958,11,3,19,FR,France\n201421,3,4523,1039,8007,7,2,12,FR,France\n201420,3,5881,2432,9330,9,4,14,FR,France\n201419,3,3588,1277,5899,6,2,10,FR,France\n201418,3,4708,1654,7762,7,2,12,FR,France\n201417,3,2989,625,5353,5,1,9,FR,France\n201416,3,7057,3381,10733,11,5,17,FR,France\n201415,3,10800,6762,14838,17,11,23,FR,France\n201414,3,19217,13490,24944,30,21,39,FR,France\n201413,3,21577,15435,27719,34,24,44,FR,France\n201412,3,23524,17260,29788,37,27,47,FR,France\n201411,3,44513,35939,53087,69,56,82,FR,France\n201410,3,86105,73497,98713,134,114,154,FR,France\n201409,3,147035,131889,162181,229,205,253,FR,France\n201408,3,188419,171950,204888,293,267,319,FR,France\n201407,3,208726,191283,226169,325,298,352,FR,France\n201406,3,160403,145280,175526,250,226,274,FR,France\n201405,3,120261,107176,133346,187,167,207,FR,France\n201404,3,85280,74414,96146,133,116,150,FR,France\n201403,3,64159,54089,74229,100,84,116,FR,France\n201402,3,46850,38202,55498,73,60,86,FR,France\n201401,3,35624,27451,43797,55,42,68,FR,France\n201352,3,30142,22721,37563,47,35,59,FR,France\n201351,3,29787,23215,36359,47,37,57,FR,France\n201350,3,24055,18214,29896,38,29,47,FR,France\n201349,3,18071,13058,23084,28,20,36,FR,France\n201348,3,17606,12195,23017,28,20,36,FR,France\n201347,3,22636,16343,28929,35,25,45,FR,France\n201346,3,13340,8367,18313,21,13,29,FR,France\n201345,3,10596,6057,15135,17,10,24,FR,France\n201344,3,10193,5622,14764,16,9,23,FR,France\n201343,3,15780,9497,22063,25,15,35,FR,France\n201342,3,14830,9545,20115,23,15,31,FR,France\n201341,3,12391,7265,17517,19,11,27,FR,France\n201340,3,9794,5140,14448,15,8,22,FR,France\n201339,3,5371,1704,9038,8,2,14,FR,France\n201338,3,9324,4198,14450,15,7,23,FR,France\n201337,3,5027,1752,8302,8,3,13,FR,France\n201336,3,4639,1425,7853,7,2,12,FR,France\n201335,3,1291,0,3112,2,0,5,FR,France\n201334,3,1889,0,4912,3,0,8,FR,France\n201333,3,4740,348,9132,7,0,14,FR,France\n201332,3,4709,549,8869,7,0,14,FR,France\n201331,3,2270,0,5811,4,0,10,FR,France\n201330,3,2169,0,4630,3,0,7,FR,France\n201329,3,1696,0,3558,3,0,6,FR,France\n201328,3,983,0,2168,2,0,4,FR,France\n201327,3,4278,1327,7229,7,2,12,FR,France\n201326,3,3488,839,6137,5,1,9,FR,France\n201325,3,2735,0,5826,4,0,9,FR,France\n201324,3,7245,2997,11493,11,4,18,FR,France\n201323,3,16094,8918,23270,25,14,36,FR,France\n201322,3,7245,2923,11567,11,4,18,FR,France\n201321,3,5974,2401,9547,9,3,15,FR,France\n201320,3,3831,1245,6417,6,2,10,FR,France\n201319,3,1166,0,2680,2,0,4,FR,France\n201318,3,3415,757,6073,5,1,9,FR,France\n201317,3,7941,2950,12932,12,4,20,FR,France\n201316,3,9520,4758,14282,15,8,22,FR,France\n201315,3,19357,13311,25403,30,21,39,FR,France\n201314,3,36855,27737,45973,58,44,72,FR,France\n201313,3,43236,34048,52424,68,54,82,FR,France\n201312,3,60822,50414,71230,95,79,111,FR,France\n201311,3,84308,72456,96160,132,113,151,FR,France\n201310,3,165558,148471,182645,259,232,286,FR,France\n201309,3,259984,239067,280901,407,374,440,FR,France\n201308,3,351626,327537,375715,550,512,588,FR,France\n201307,3,470076,443682,496470,736,695,777,FR,France\n201306,3,471647,445112,498182,738,696,780,FR,France\n201305,3,492026,464729,519323,770,727,813,FR,France\n201304,3,391525,367182,415868,613,575,651,FR,France\n201303,3,224661,207134,242188,352,325,379,FR,France\n201302,3,184159,168343,199975,288,263,313,FR,France\n201301,3,163491,147340,179642,256,231,281,FR,France\n201252,3,159290,141978,176602,251,224,278,FR,France\n201251,3,113901,99835,127967,179,157,201,FR,France\n201250,3,79918,68086,91750,126,107,145,FR,France\n201249,3,47537,38711,56363,75,61,89,FR,France\n201248,3,43006,32863,53149,68,52,84,FR,France\n201247,3,39223,29140,49306,62,46,78,FR,France\n201246,3,26436,18286,34586,42,29,55,FR,France\n201245,3,18893,12799,24987,30,20,40,FR,France\n201244,3,13106,8784,17428,21,14,28,FR,France\n201243,3,17791,11284,24298,28,18,38,FR,France\n201242,3,13096,8369,17823,21,14,28,FR,France\n201241,3,18675,12010,25340,29,19,39,FR,France\n201240,3,17873,11545,24201,28,18,38,FR,France\n201239,3,20257,14180,26334,32,22,42,FR,France\n201238,3,14715,9178,20252,23,14,32,FR,France\n201237,3,7775,3509,12041,12,5,19,FR,France\n201236,3,6384,2420,10348,10,4,16,FR,France\n201235,3,8277,2206,14348,13,3,23,FR,France\n201234,3,3858,0,8641,6,0,14,FR,France\n201233,3,6492,840,12144,10,1,19,FR,France\n201232,3,6381,0,14034,10,0,22,FR,France\n201231,3,2696,0,5763,4,0,9,FR,France\n201230,3,1834,0,4194,3,0,7,FR,France\n201229,3,6329,1424,11234,10,2,18,FR,France\n201228,3,4628,1091,8165,7,1,13,FR,France\n201227,3,4162,1487,6837,7,3,11,FR,France\n201226,3,4819,1097,8541,8,2,14,FR,France\n201225,3,2669,530,4808,4,1,7,FR,France\n201224,3,5977,2335,9619,9,3,15,FR,France\n201223,3,2361,576,4146,4,1,7,FR,France\n201222,3,5772,2435,9109,9,4,14,FR,France\n201221,3,3722,821,6623,6,1,11,FR,France\n201220,3,2731,897,4565,4,1,7,FR,France\n201219,3,3267,1317,5217,5,2,8,FR,France\n201218,3,2328,569,4087,4,1,7,FR,France\n201217,3,6982,2701,11263,11,4,18,FR,France\n201216,3,11455,6874,16036,18,11,25,FR,France\n201215,3,20437,13435,27439,32,21,43,FR,France\n201214,3,36740,27799,45681,58,44,72,FR,France\n201213,3,62917,50171,75663,99,79,119,FR,France\n201212,3,84738,71566,97910,133,112,154,FR,France\n201211,3,128945,113778,144112,203,179,227,FR,France\n201210,3,174704,157337,192071,275,248,302,FR,France\n201209,3,225648,206810,244486,355,325,385,FR,France\n201208,3,287293,264901,309685,452,417,487,FR,France\n201207,3,263557,242711,284403,415,382,448,FR,France\n201206,3,175123,158942,191304,276,251,301,FR,France\n201205,3,106110,92524,119696,167,146,188,FR,France\n201204,3,67778,56784,78772,107,90,124,FR,France\n201203,3,49440,40981,57899,78,65,91,FR,France\n201202,3,40507,32652,48362,64,52,76,FR,France\n201201,3,45104,35640,54568,71,56,86,FR,France\n201152,3,36532,28367,44697,58,45,71,FR,France\n201151,3,25835,19002,32668,41,30,52,FR,France\n201150,3,24155,18145,30165,38,28,48,FR,France\n201149,3,27209,20376,34042,43,32,54,FR,France\n201148,3,32358,24451,40265,51,38,64,FR,France\n201147,3,17627,11780,23474,28,19,37,FR,France\n201146,3,22368,15730,29006,35,24,46,FR,France\n201145,3,18104,11995,24213,29,19,39,FR,France\n201144,3,14050,8471,19629,22,13,31,FR,France\n201143,3,21522,14251,28793,34,22,46,FR,France\n201142,3,16932,11363,22501,27,18,36,FR,France\n201141,3,7486,4024,10948,12,7,17,FR,France\n201140,3,14053,8659,19447,22,13,31,FR,France\n201139,3,17021,11062,22980,27,18,36,FR,France\n201138,3,14007,8465,19549,22,13,31,FR,France\n201137,3,8365,4174,12556,13,6,20,FR,France\n201136,3,4606,1714,7498,7,2,12,FR,France\n201135,3,4178,1634,6722,7,3,11,FR,France\n201134,3,3312,683,5941,5,1,9,FR,France\n201133,3,2421,0,5277,4,0,9,FR,France\n201132,3,2590,119,5061,4,0,8,FR,France\n201131,3,2409,320,4498,4,1,7,FR,France\n201130,3,3972,1395,6549,6,2,10,FR,France\n201129,3,2265,717,3813,4,2,6,FR,France\n201128,3,1977,255,3699,3,0,6,FR,France\n201127,3,3524,551,6497,6,1,11,FR,France\n201126,3,1155,0,2685,2,0,4,FR,France\n201125,3,3791,1006,6576,6,2,10,FR,France\n201124,3,3507,1149,5865,6,2,10,FR,France\n201123,3,3406,1170,5642,5,1,9,FR,France\n201122,3,3122,1125,5119,5,2,8,FR,France\n201121,3,2694,769,4619,4,1,7,FR,France\n201120,3,3951,1443,6459,6,2,10,FR,France\n201119,3,5416,1995,8837,9,4,14,FR,France\n201118,3,5306,1815,8797,8,2,14,FR,France\n201117,3,2659,310,5008,4,0,8,FR,France\n201116,3,5061,1988,8134,8,3,13,FR,France\n201115,3,6557,3038,10076,10,4,16,FR,France\n201114,3,7352,3784,10920,12,6,18,FR,France\n201113,3,8749,5213,12285,14,8,20,FR,France\n201112,3,12491,7845,17137,20,13,27,FR,France\n201111,3,14619,10009,19229,23,16,30,FR,France\n201110,3,33628,26073,41183,53,41,65,FR,France\n201109,3,54522,46057,62987,86,73,99,FR,France\n201108,3,78392,67885,88899,124,107,141,FR,France\n201107,3,149219,134798,163640,236,213,259,FR,France\n201106,3,216579,200236,232922,343,317,369,FR,France\n201105,3,278192,260235,296149,440,412,468,FR,France\n201104,3,278218,259626,296810,440,411,469,FR,France\n201103,3,275882,257313,294451,437,408,466,FR,France\n201102,3,308949,288320,329578,489,456,522,FR,France\n201101,3,309933,288190,331676,490,456,524,FR,France\n201052,3,228105,208046,248164,363,331,395,FR,France\n201051,3,158957,142576,175338,253,227,279,FR,France\n201050,3,104874,91639,118109,167,146,188,FR,France\n201049,3,54971,46418,63524,88,74,102,FR,France\n201048,3,36982,29304,44660,59,47,71,FR,France\n201047,3,26598,20123,33073,42,32,52,FR,France\n201046,3,15465,10915,20015,25,18,32,FR,France\n201045,3,9040,5772,12308,14,9,19,FR,France\n201044,3,15833,10255,21411,25,16,34,FR,France\n201043,3,16002,11001,21003,25,17,33,FR,France\n201042,3,18709,13376,24042,30,22,38,FR,France\n201041,3,17352,12182,22522,28,20,36,FR,France\n201040,3,18331,12824,23838,29,20,38,FR,France\n201039,3,11978,7913,16043,19,13,25,FR,France\n201038,3,8936,4906,12966,14,8,20,FR,France\n201037,3,5318,2551,8085,8,4,12,FR,France\n201036,3,4954,2058,7850,8,3,13,FR,France\n201035,3,4279,1604,6954,7,3,11,FR,France\n201034,3,4926,566,9286,8,1,15,FR,France\n201033,3,2950,0,6507,5,0,11,FR,France\n201032,3,671,0,1522,1,0,2,FR,France\n201031,3,2732,509,4955,4,0,8,FR,France\n201030,3,3989,1068,6910,6,1,11,FR,France\n201029,3,4123,1531,6715,7,3,11,FR,France\n201028,3,1209,0,2640,2,0,4,FR,France\n201027,3,2494,433,4555,4,1,7,FR,France\n201026,3,5808,2454,9162,9,4,14,FR,France\n201025,3,8019,4395,11643,13,7,19,FR,France\n201024,3,3584,1657,5511,6,3,9,FR,France\n201023,3,4016,1905,6127,6,3,9,FR,France\n201022,3,6251,3664,8838,10,6,14,FR,France\n201021,3,3860,1636,6084,6,2,10,FR,France\n201020,3,2470,442,4498,4,1,7,FR,France\n201019,3,2273,636,3910,4,1,7,FR,France\n201018,3,4095,1639,6551,7,3,11,FR,France\n201017,3,2216,817,3615,4,2,6,FR,France\n201016,3,3471,1085,5857,6,2,10,FR,France\n201015,3,3990,1376,6604,6,2,10,FR,France\n201014,3,6188,3191,9185,10,5,15,FR,France\n201013,3,6705,3665,9745,11,6,16,FR,France\n201012,3,6727,3582,9872,11,6,16,FR,France\n201011,3,8692,5002,12382,14,8,20,FR,France\n201010,3,8844,5465,12223,14,9,19,FR,France\n201009,3,12081,7334,16828,19,11,27,FR,France\n201008,3,15433,10422,20444,25,17,33,FR,France\n201007,3,19690,11728,27652,31,18,44,FR,France\n201006,3,27858,18883,36833,44,30,58,FR,France\n201005,3,22197,17019,27375,35,27,43,FR,France\n201004,3,33817,26151,41483,54,42,66,FR,France\n201003,3,36236,27936,44536,58,45,71,FR,France\n201002,3,40691,32891,48491,65,53,77,FR,France\n201001,3,66574,56164,76984,106,89,123,FR,France\n200953,3,96141,81818,110464,153,130,176,FR,France\n200952,3,172872,153238,192506,275,244,306,FR,France\n200951,3,247809,229140,266478,395,365,425,FR,France\n200950,3,379424,355974,402874,604,567,641,FR,France\n200949,3,473718,447756,499680,754,713,795,FR,France\n200948,3,467551,441506,493596,744,703,785,FR,France\n200947,3,378924,355752,402096,603,566,640,FR,France\n200946,3,223847,203918,243776,356,324,388,FR,France\n200945,3,147046,131155,162937,234,209,259,FR,France\n200944,3,170231,151298,189164,271,241,301,FR,France\n200943,3,131408,114883,147933,209,183,235,FR,France\n200942,3,99387,84491,114283,158,134,182,FR,France\n200941,3,100802,86381,115223,160,137,183,FR,France\n200940,3,111587,97628,125546,178,156,200,FR,France\n200939,3,121267,106153,136381,193,169,217,FR,France\n200938,3,137924,121242,154606,220,193,247,FR,France\n200937,3,101332,87522,115142,161,139,183,FR,France\n200936,3,46024,36435,55613,73,58,88,FR,France\n200935,3,31660,23669,39651,50,37,63,FR,France\n200934,3,24985,17699,32271,40,28,52,FR,France\n200933,3,24435,16308,32562,39,26,52,FR,France\n200932,3,23151,14624,31678,37,23,51,FR,France\n200931,3,30255,9818,50692,48,15,81,FR,France\n200930,3,13868,7861,19875,22,12,32,FR,France\n200929,3,10704,5314,16094,17,8,26,FR,France\n200928,3,15516,273,30759,25,1,49,FR,France\n200927,3,10354,2760,17948,16,4,28,FR,France\n200926,3,9932,5257,14607,16,9,23,FR,France\n200925,3,7619,4026,11212,12,6,18,FR,France\n200924,3,7794,3409,12179,12,5,19,FR,France\n200923,3,4342,1975,6709,7,3,11,FR,France\n200922,3,6390,3020,9760,10,5,15,FR,France\n200921,3,7118,3704,10532,11,6,16,FR,France\n200920,3,9482,5804,13160,15,9,21,FR,France\n200919,3,7538,4299,10777,12,7,17,FR,France\n200918,3,9627,5121,14133,15,8,22,FR,France\n200917,3,9537,5267,13807,15,8,22,FR,France\n200916,3,14666,9218,20114,23,14,32,FR,France\n200915,3,17533,12137,22929,28,19,37,FR,France\n200914,3,26324,19150,33498,42,31,53,FR,France\n200913,3,27737,20781,34693,44,33,55,FR,France\n200912,3,38811,29935,47687,62,48,76,FR,France\n200911,3,40410,30705,50115,64,49,79,FR,France\n200910,3,53395,41943,64847,85,67,103,FR,France\n200909,3,70558,57400,83716,112,91,133,FR,France\n200908,3,109100,94840,123360,174,151,197,FR,France\n200907,3,141531,125101,157961,225,199,251,FR,France\n200906,3,276274,252759,299789,440,403,477,FR,France\n200905,3,401868,375032,428704,640,597,683,FR,France\n200904,3,545313,512892,577734,868,816,920,FR,France\n200903,3,520957,487271,554643,829,775,883,FR,France\n200902,3,287145,262869,311421,457,418,496,FR,France\n200901,3,200349,180878,219820,319,288,350,FR,France\n200852,3,198418,115769,281067,323,188,458,FR,France\n200851,3,112588,96656,128520,184,158,210,FR,France\n200850,3,51746,43319,60173,84,70,98,FR,France\n200849,3,34950,27527,42373,57,45,69,FR,France\n200848,3,25604,18563,32645,42,31,53,FR,France\n200847,3,18706,10838,26574,30,17,43,FR,France\n200846,3,10899,5461,16337,18,9,27,FR,France\n200845,3,12472,7082,17862,20,11,29,FR,France\n200844,3,9772,5661,13883,16,9,23,FR,France\n200843,3,9345,5541,13149,15,9,21,FR,France\n200842,3,9087,5572,12602,15,9,21,FR,France\n200841,3,9925,5637,14213,16,9,23,FR,France\n200840,3,7869,4535,11203,13,8,18,FR,France\n200839,3,2195,506,3884,4,1,7,FR,France\n200838,3,3679,1481,5877,6,2,10,FR,France\n200837,3,2429,561,4297,4,1,7,FR,France\n200836,3,2512,492,4532,4,1,7,FR,France\n200835,3,1901,0,4869,3,0,8,FR,France\n200834,3,2552,0,6509,4,0,10,FR,France\n200833,3,7229,0,16106,12,0,26,FR,France\n200832,3,4378,107,8649,7,0,14,FR,France\n200831,3,3972,621,7323,6,1,11,FR,France\n200830,3,3821,643,6999,6,1,11,FR,France\n200829,3,2055,0,4225,3,0,7,FR,France\n200828,3,3257,208,6306,5,0,10,FR,France\n200827,3,2862,474,5250,5,1,9,FR,France\n200826,3,897,0,2062,1,0,3,FR,France\n200825,3,2006,360,3652,3,0,6,FR,France\n200824,3,3217,823,5611,5,1,9,FR,France\n200823,3,2906,1006,4806,5,2,8,FR,France\n200822,3,1792,451,3133,3,1,5,FR,France\n200821,3,3642,925,6359,6,2,10,FR,France\n200820,3,6452,2790,10114,11,5,17,FR,France\n200819,3,5173,1485,8861,8,2,14,FR,France\n200818,3,5315,1770,8860,9,3,15,FR,France\n200817,3,10150,5835,14465,17,10,24,FR,France\n200816,3,11876,7054,16698,19,11,27,FR,France\n200815,3,22871,16253,29489,37,26,48,FR,France\n200814,3,45610,27907,63313,74,45,103,FR,France\n200813,3,38600,29300,47900,63,48,78,FR,France\n200812,3,53169,43299,63039,87,71,103,FR,France\n200811,3,62014,50430,73598,101,82,120,FR,France\n200810,3,90342,75729,104955,147,123,171,FR,France\n200809,3,119696,104205,135187,195,170,220,FR,France\n200808,3,198688,180749,216627,324,295,353,FR,France\n200807,3,286498,264535,308461,467,431,503,FR,France\n200806,3,377097,350714,403480,615,572,658,FR,France\n200805,3,344050,320436,367664,561,523,599,FR,France\n200804,3,290196,268193,312199,473,437,509,FR,France\n200803,3,260268,233385,287151,424,380,468,FR,France\n200802,3,160872,145311,176433,262,237,287,FR,France\n200801,3,102562,88547,116577,167,144,190,FR,France\n200752,3,86742,72295,101189,141,117,165,FR,France\n200751,3,61954,51764,72144,101,84,118,FR,France\n200750,3,45366,36923,53809,74,60,88,FR,France\n200749,3,38351,26177,50525,63,43,83,FR,France\n200748,3,48174,35418,60930,79,58,100,FR,France\n200747,3,30716,23351,38081,50,38,62,FR,France\n200746,3,18204,12267,24141,30,20,40,FR,France\n200745,3,15521,10195,20847,25,16,34,FR,France\n200744,3,13904,9072,18736,23,15,31,FR,France\n200743,3,16212,10778,21646,26,17,35,FR,France\n200742,3,20197,13955,26439,33,23,43,FR,France\n200741,3,12987,8464,17510,21,14,28,FR,France\n200740,3,13517,2983,24051,22,5,39,FR,France\n200739,3,15985,7519,24451,26,12,40,FR,France\n200738,3,4769,837,8701,8,2,14,FR,France\n200737,3,1449,300,2598,2,0,4,FR,France\n200736,3,1100,0,2424,2,0,4,FR,France\n200735,3,1177,0,2872,2,0,5,FR,France\n200734,3,3353,654,6052,5,1,9,FR,France\n200733,3,4189,360,8018,7,1,13,FR,France\n200732,3,132,0,688,0,0,1,FR,France\n200731,3,1965,0,4461,3,0,7,FR,France\n200730,3,2158,0,4583,4,0,8,FR,France\n200729,3,3406,240,6572,6,1,11,FR,France\n200728,3,1459,0,3467,2,0,5,FR,France\n200727,3,1453,0,3382,2,0,5,FR,France\n200726,3,157,0,513,0,0,1,FR,France\n200725,3,3699,0,7778,6,0,13,FR,France\n200724,3,2854,481,5227,5,1,9,FR,France\n200723,3,5343,2164,8522,9,4,14,FR,France\n200722,3,7689,4224,11154,13,7,19,FR,France\n200721,3,4319,1659,6979,7,3,11,FR,France\n200720,3,6400,2685,10115,10,4,16,FR,France\n200719,3,3012,703,5321,5,1,9,FR,France\n200718,3,2232,348,4116,4,1,7,FR,France\n200717,3,4705,1736,7674,8,3,13,FR,France\n200716,3,3817,1438,6196,6,2,10,FR,France\n200715,3,4757,717,8797,8,1,15,FR,France\n200714,3,11377,6957,15797,19,12,26,FR,France\n200713,3,21271,13093,29449,35,22,48,FR,France\n200712,3,25433,17717,33149,41,28,54,FR,France\n200711,3,30764,23356,38172,50,38,62,FR,France\n200710,3,49469,40368,58570,81,66,96,FR,France\n200709,3,138901,117018,160784,226,190,262,FR,France\n200708,3,316747,284988,348506,516,464,568,FR,France\n200707,3,417698,386505,448891,681,630,732,FR,France\n200706,3,500016,466668,533364,815,761,869,FR,France\n200705,3,375457,346822,404092,612,565,659,FR,France\n200704,3,209878,189332,230424,342,309,375,FR,France\n200703,3,126161,110596,141726,206,181,231,FR,France\n200702,3,82849,69493,96205,135,113,157,FR,France\n200701,3,70842,58613,83071,115,95,135,FR,France\n200652,3,78190,64191,92189,128,105,151,FR,France\n200651,3,62734,50210,75258,103,82,124,FR,France\n200650,3,35668,27280,44056,58,44,72,FR,France\n200649,3,18773,13164,24382,31,22,40,FR,France\n200648,3,16439,11225,21653,27,18,36,FR,France\n200647,3,16104,9343,22865,26,15,37,FR,France\n200646,3,14032,5590,22474,23,9,37,FR,France\n200645,3,12285,7745,16825,20,13,27,FR,France\n200644,3,8031,4172,11890,13,7,19,FR,France\n200643,3,21157,12483,29831,35,21,49,FR,France\n200642,3,16673,8249,25097,27,13,41,FR,France\n200641,3,13920,9081,18759,23,15,31,FR,France\n200640,3,11950,7132,16768,20,12,28,FR,France\n200639,3,8945,4333,13557,15,7,23,FR,France\n200638,3,2532,138,4926,4,0,8,FR,France\n200637,3,1786,233,3339,3,0,6,FR,France\n200636,3,1107,0,2346,2,0,4,FR,France\n200635,3,2170,0,4760,4,0,8,FR,France\n200634,3,1572,0,3756,3,0,7,FR,France\n200633,3,0,0,0,0,0,0,FR,France\n200632,3,0,0,0,0,0,0,FR,France\n200631,3,1773,0,3892,3,0,6,FR,France\n200630,3,665,0,1614,1,0,3,FR,France\n200629,3,1339,0,3260,2,0,5,FR,France\n200628,3,843,0,2245,1,0,3,FR,France\n200627,3,1351,0,3031,2,0,5,FR,France\n200626,3,4564,1506,7622,7,2,12,FR,France\n200625,3,6259,2072,10446,10,3,17,FR,France\n200624,3,4279,964,7594,7,2,12,FR,France\n200623,3,4532,1489,7575,7,2,12,FR,France\n200622,3,5807,2667,8947,10,5,15,FR,France\n200621,3,4661,1761,7561,8,3,13,FR,France\n200620,3,8859,4754,12964,15,8,22,FR,France\n200619,3,5083,2011,8155,8,3,13,FR,France\n200618,3,4454,1632,7276,7,2,12,FR,France\n200617,3,17762,11802,23722,29,19,39,FR,France\n200616,3,22096,15420,28772,36,25,47,FR,France\n200615,3,26969,19631,34307,44,32,56,FR,France\n200614,3,40321,31022,49620,66,51,81,FR,France\n200613,3,77053,63531,90575,126,104,148,FR,France\n200612,3,108004,93005,123003,177,152,202,FR,France\n200611,3,122437,106388,138486,201,175,227,FR,France\n200610,3,124749,109104,140394,204,178,230,FR,France\n200609,3,164150,146099,182201,269,239,299,FR,France\n200608,3,199088,178830,219346,326,293,359,FR,France\n200607,3,243908,221071,266745,400,363,437,FR,France\n200606,3,256758,235190,278326,421,386,456,FR,France\n200605,3,184928,166901,202955,303,273,333,FR,France\n200604,3,104620,90909,118331,171,149,193,FR,France\n200603,3,66255,55727,76783,109,92,126,FR,France\n200602,3,39211,31418,47004,64,51,77,FR,France\n200601,3,34603,26269,42937,57,43,71,FR,France\n200552,3,32132,24389,39875,53,40,66,FR,France\n200551,3,40344,28397,52291,67,47,87,FR,France\n200550,3,36880,28635,45125,61,47,75,FR,France\n200549,3,27589,20576,34602,46,34,58,FR,France\n200548,3,24860,17839,31881,41,29,53,FR,France\n200547,3,26884,19810,33958,44,32,56,FR,France\n200546,3,23967,17155,30779,40,29,51,FR,France\n200545,3,14609,8709,20509,24,14,34,FR,France\n200544,3,20481,13625,27337,34,23,45,FR,France\n200543,3,18045,11916,24174,30,20,40,FR,France\n200542,3,23653,15209,32097,39,25,53,FR,France\n200541,3,26466,18270,34662,44,30,58,FR,France\n200540,3,26647,18088,35206,44,30,58,FR,France\n200539,3,23994,15381,32607,40,26,54,FR,France\n200538,3,21881,13979,29783,36,23,49,FR,France\n200537,3,10347,5384,15310,17,9,25,FR,France\n200536,3,7082,2806,11358,12,5,19,FR,France\n200535,3,2448,0,4987,4,0,8,FR,France\n200534,3,5281,539,10023,9,1,17,FR,France\n200533,3,2815,0,6252,5,0,11,FR,France\n200532,3,1572,0,3690,3,0,6,FR,France\n200531,3,3767,0,10955,6,0,18,FR,France\n200530,3,2203,0,5072,4,0,9,FR,France\n200529,3,3965,739,7191,7,2,12,FR,France\n200528,3,1988,96,3880,3,0,6,FR,France\n200527,3,2305,0,4713,4,0,8,FR,France\n200526,3,4720,1385,8055,8,2,14,FR,France\n200525,3,2354,0,4747,4,0,8,FR,France\n200524,3,5892,2029,9755,10,4,16,FR,France\n200523,3,5246,1722,8770,9,3,15,FR,France\n200522,3,3935,1031,6839,6,1,11,FR,France\n200521,3,4284,474,8094,7,1,13,FR,France\n200520,3,7841,3611,12071,13,6,20,FR,France\n200519,3,7638,3346,11930,13,6,20,FR,France\n200518,3,2755,388,5122,5,1,9,FR,France\n200517,3,7166,3530,10802,12,6,18,FR,France\n200516,3,9741,5344,14138,16,9,23,FR,France\n200515,3,14881,9018,20744,25,15,35,FR,France\n200514,3,21988,14834,29142,36,24,48,FR,France\n200513,3,42971,33053,52889,71,55,87,FR,France\n200512,3,90040,75374,104706,149,125,173,FR,France\n200511,3,183032,161407,204657,302,266,338,FR,France\n200510,3,222526,199990,245062,367,330,404,FR,France\n200509,3,251784,229464,274104,416,379,453,FR,France\n200508,3,277423,254825,300021,458,421,495,FR,France\n200507,3,459444,430026,488862,759,710,808,FR,France\n200506,3,568610,536207,601013,939,885,993,FR,France\n200505,3,568285,534912,601658,938,883,993,FR,France\n200504,3,316856,292011,341701,523,482,564,FR,France\n200503,3,154208,137061,171355,255,227,283,FR,France\n200502,3,88853,75576,102130,147,125,169,FR,France\n200501,3,55801,45339,66263,92,75,109,FR,France\n200453,3,40695,31926,49464,68,53,83,FR,France\n200452,3,32687,24316,41058,54,40,68,FR,France\n200451,3,46209,36017,56401,77,60,94,FR,France\n200450,3,42358,31865,52851,70,53,87,FR,France\n200449,3,27092,17910,36274,45,30,60,FR,France\n200448,3,30522,21236,39808,51,36,66,FR,France\n200447,3,21148,13386,28910,35,22,48,FR,France\n200446,3,13934,8335,19533,23,14,32,FR,France\n200445,3,15658,9703,21613,26,16,36,FR,France\n200444,3,23166,14852,31480,38,24,52,FR,France\n200443,3,16780,10545,23015,28,18,38,FR,France\n200442,3,20480,13909,27051,34,23,45,FR,France\n200441,3,15852,9789,21915,26,16,36,FR,France\n200440,3,25639,17291,33987,43,29,57,FR,France\n200439,3,22680,13222,32138,38,22,54,FR,France\n200438,3,17483,9417,25549,29,16,42,FR,France\n200437,3,9103,4768,13438,15,8,22,FR,France\n200436,3,7753,3596,11910,13,6,20,FR,France\n200435,3,4408,775,8041,7,1,13,FR,France\n200434,3,4501,610,8392,7,1,13,FR,France\n200433,3,1697,0,4046,3,0,7,FR,France\n200432,3,3496,0,8181,6,0,14,FR,France\n200431,3,2949,20,5878,5,0,10,FR,France\n200430,3,3557,642,6472,6,1,11,FR,France\n200429,3,5164,1162,9166,9,2,16,FR,France\n200428,3,6358,2224,10492,11,4,18,FR,France\n200427,3,7486,3040,11932,12,5,19,FR,France\n200426,3,7113,0,14709,12,0,25,FR,France\n200425,3,3275,508,6042,5,0,10,FR,France\n200424,3,6737,2394,11080,11,4,18,FR,France\n200423,3,9792,807,18777,16,1,31,FR,France\n200422,3,8077,3482,12672,13,5,21,FR,France\n200421,3,8073,3588,12558,13,6,20,FR,France\n200420,3,7885,3454,12316,13,6,20,FR,France\n200419,3,7235,3101,11369,12,5,19,FR,France\n200418,3,5108,1830,8386,8,3,13,FR,France\n200417,3,3647,523,6771,6,1,11,FR,France\n200416,3,5265,1359,9171,9,3,15,FR,France\n200415,3,8272,3655,12889,14,6,22,FR,France\n200414,3,15657,8888,22426,26,15,37,FR,France\n200413,3,8316,4067,12565,14,7,21,FR,France\n200412,3,12482,6899,18065,21,12,30,FR,France\n200411,3,13964,7879,20049,23,13,33,FR,France\n200410,3,22531,14164,30898,37,23,51,FR,France\n200409,3,12618,7283,17953,21,12,30,FR,France\n200408,3,17738,11055,24421,29,18,40,FR,France\n200407,3,25484,17228,33740,42,28,56,FR,France\n200406,3,27452,19505,35399,46,33,59,FR,France\n200405,3,35110,25869,44351,58,43,73,FR,France\n200404,3,44571,35266,53876,74,59,89,FR,France\n200403,3,60482,50389,70575,100,83,117,FR,France\n200402,3,95234,81407,109061,158,135,181,FR,France\n200401,3,109116,84565,133667,181,140,222,FR,France\n200352,3,72239,5520,138958,121,10,232,FR,France\n200351,3,445464,389214,501714,744,650,838,FR,France\n200350,3,522427,491781,553073,873,822,924,FR,France\n200349,3,555492,524706,586278,928,877,979,FR,France\n200348,3,514668,485364,543972,860,811,909,FR,France\n200347,3,332927,305972,359882,556,511,601,FR,France\n200346,3,146101,126840,165362,244,212,276,FR,France\n200345,3,95565,80900,110230,160,135,185,FR,France\n200344,3,54703,43193,66213,91,72,110,FR,France\n200343,3,45834,36611,55057,77,62,92,FR,France\n200342,3,39010,28885,49135,65,48,82,FR,France\n200341,3,29579,21478,37680,49,35,63,FR,France\n200340,3,30862,19484,42240,52,33,71,FR,France\n200339,3,26592,18927,34257,44,31,57,FR,France\n200338,3,14811,8777,20845,25,15,35,FR,France\n200337,3,14735,7495,21975,25,13,37,FR,France\n200336,3,10951,3732,18170,18,6,30,FR,France\n200335,3,1504,0,3349,3,0,6,FR,France\n200334,3,2194,0,4889,4,0,9,FR,France\n200333,3,1504,0,3921,3,0,7,FR,France\n200332,3,1619,0,4072,3,0,7,FR,France\n200331,3,5164,0,10601,9,0,18,FR,France\n200330,3,3183,28,6338,5,0,10,FR,France\n200329,3,6801,450,13152,11,0,22,FR,France\n200328,3,3975,609,7341,7,1,13,FR,France\n200327,3,2293,0,4605,4,0,8,FR,France\n200326,3,5333,2138,8528,9,4,14,FR,France\n200325,3,2602,0,5228,4,0,8,FR,France\n200324,3,8429,0,19483,14,0,32,FR,France\n200323,3,4821,1479,8163,8,2,14,FR,France\n200322,3,2573,158,4988,4,0,8,FR,France\n200321,3,5563,2465,8661,9,4,14,FR,France\n200320,3,7554,3748,11360,13,7,19,FR,France\n200319,3,8325,3777,12873,14,6,22,FR,France\n200318,3,12268,6392,18144,20,10,30,FR,France\n200317,3,46253,36234,56272,77,60,94,FR,France\n200316,3,50759,39835,61683,85,67,103,FR,France\n200315,3,69269,55778,82760,116,93,139,FR,France\n200314,3,70084,55374,84794,117,92,142,FR,France\n200313,3,70335,56370,84300,118,95,141,FR,France\n200312,3,88582,73568,103596,148,123,173,FR,France\n200311,3,99729,83353,116105,167,140,194,FR,France\n200310,3,121516,104361,138671,203,174,232,FR,France\n200309,3,177255,151800,202710,296,253,339,FR,France\n200308,3,222638,194269,251007,372,325,419,FR,France\n200307,3,237104,207851,266357,396,347,445,FR,France\n200306,3,206955,177973,235937,346,298,394,FR,France\n200305,3,151864,125877,177851,254,211,297,FR,France\n200304,3,95356,76211,114501,159,127,191,FR,France\n200303,3,50983,38264,63702,85,64,106,FR,France\n200302,3,31447,21706,41188,53,37,69,FR,France\n200301,3,31228,19202,43254,52,32,72,FR,France\n200252,3,47016,33692,60340,79,57,101,FR,France\n200251,3,47629,36912,58346,80,62,98,FR,France\n200250,3,35221,26217,44225,59,44,74,FR,France\n200249,3,24656,16900,32412,41,28,54,FR,France\n200248,3,19799,12868,26730,33,21,45,FR,France\n200247,3,16449,9214,23684,28,16,40,FR,France\n200246,3,12753,5779,19727,21,9,33,FR,France\n200245,3,19304,8475,30133,32,14,50,FR,France\n200244,3,18082,10671,25493,30,18,42,FR,France\n200243,3,14326,7548,21104,24,13,35,FR,France\n200242,3,13774,7800,19748,23,13,33,FR,France\n200241,3,11036,5650,16422,19,10,28,FR,France\n200240,3,8137,3375,12899,14,6,22,FR,France\n200239,3,15989,9892,22086,27,17,37,FR,France\n200238,3,7067,3299,10835,12,6,18,FR,France\n200237,3,12409,4981,19837,21,9,33,FR,France\n200236,3,1679,0,4072,3,0,7,FR,France\n200235,3,2126,0,6301,4,0,11,FR,France\n200234,3,2843,0,7483,5,0,13,FR,France\n200233,3,2670,0,5462,4,0,9,FR,France\n200232,3,1087,0,3003,2,0,5,FR,France\n200231,3,5455,399,10511,9,1,17,FR,France\n200230,3,3601,0,7836,6,0,13,FR,France\n200229,3,5576,379,10773,9,0,18,FR,France\n200228,3,6602,0,14289,11,0,24,FR,France\n200227,3,1882,0,6151,3,0,10,FR,France\n200226,3,4523,0,12320,8,0,21,FR,France\n200225,3,4765,1076,8454,8,2,14,FR,France\n200224,3,12063,7174,16952,20,12,28,FR,France\n200223,3,15468,9806,21130,26,16,36,FR,France\n200222,3,4854,1696,8012,8,3,13,FR,France\n200221,3,5901,2212,9590,10,4,16,FR,France\n200220,3,3803,1215,6391,6,2,10,FR,France\n200219,3,6139,2598,9680,10,4,16,FR,France\n200218,3,6083,2646,9520,10,4,16,FR,France\n200217,3,7223,2678,11768,12,4,20,FR,France\n200216,3,17762,9887,25637,30,17,43,FR,France\n200215,3,21654,13662,29646,36,23,49,FR,France\n200214,3,23877,15709,32045,40,26,54,FR,France\n200213,3,27497,16289,38705,46,27,65,FR,France\n200212,3,33510,20938,46082,56,35,77,FR,France\n200211,3,40426,29171,51681,68,49,87,FR,France\n200210,3,42915,24537,61293,72,41,103,FR,France\n200209,3,63735,48368,79102,107,81,133,FR,France\n200208,3,117204,95548,138860,197,161,233,FR,France\n200207,3,170251,137065,203437,286,230,342,FR,France\n200206,3,325084,296111,354057,546,497,595,FR,France\n200205,3,456186,422559,489813,767,710,824,FR,France\n200204,3,504715,470859,538571,848,791,905,FR,France\n200203,3,383720,353019,414421,645,593,697,FR,France\n200202,3,244028,217752,270304,410,366,454,FR,France\n200201,3,115422,95696,135148,194,161,227,FR,France\n200152,3,57999,43225,72773,98,73,123,FR,France\n200151,3,45961,36017,55905,78,61,95,FR,France\n200150,3,31309,22878,39740,53,39,67,FR,France\n200149,3,34792,23268,46316,59,40,78,FR,France\n200148,3,43283,20164,66402,73,34,112,FR,France\n200147,3,27455,20021,34889,46,33,59,FR,France\n200146,3,21127,14294,27960,36,24,48,FR,France\n200145,3,20766,13979,27553,35,24,46,FR,France\n200144,3,11410,6593,16227,19,11,27,FR,France\n200143,3,23311,15652,30970,39,26,52,FR,France\n200142,3,18963,11652,26274,32,20,44,FR,France\n200141,3,20241,14032,26450,34,24,44,FR,France\n200140,3,18113,9971,26255,31,17,45,FR,France\n200139,3,25407,7785,43029,43,13,73,FR,France\n200138,3,9736,4985,14487,16,8,24,FR,France\n200137,3,8025,3527,12523,14,6,22,FR,France\n200136,3,4663,654,8672,8,1,15,FR,France\n200135,3,4399,0,9810,7,0,16,FR,France\n200134,3,2990,0,6419,5,0,11,FR,France\n200133,3,0,0,0,0,0,0,FR,France\n200132,3,0,0,0,0,0,0,FR,France\n200131,3,18999,4286,33712,32,7,57,FR,France\n200130,3,2144,0,5670,4,0,10,FR,France\n200129,3,2408,0,5215,4,0,9,FR,France\n200128,3,3555,553,6557,6,1,11,FR,France\n200127,3,4739,1122,8356,8,2,14,FR,France\n200126,3,3335,466,6204,6,1,11,FR,France\n200125,3,2643,527,4759,4,0,8,FR,France\n200124,3,4784,2158,7410,8,4,12,FR,France\n200123,3,6299,3161,9437,11,6,16,FR,France\n200122,3,4544,2006,7082,8,4,12,FR,France\n200121,3,8925,4094,13756,15,7,23,FR,France\n200120,3,15269,8883,21655,26,15,37,FR,France\n200119,3,17369,10575,24163,29,18,40,FR,France\n200118,3,21043,14262,27824,36,25,47,FR,France\n200117,3,25787,19109,32465,44,33,55,FR,France\n200116,3,24025,16833,31217,41,29,53,FR,France\n200115,3,24188,17340,31036,41,29,53,FR,France\n200114,3,40429,31774,49084,68,53,83,FR,France\n200113,3,48644,39517,57771,82,67,97,FR,France\n200112,3,45411,35780,55042,77,61,93,FR,France\n200111,3,49809,40534,59084,84,68,100,FR,France\n200110,3,46649,37240,56058,79,63,95,FR,France\n200109,3,58623,47346,69900,99,80,118,FR,France\n200108,3,77423,63237,91609,131,107,155,FR,France\n200107,3,126970,107898,146042,215,183,247,FR,France\n200106,3,225969,198142,253796,382,335,429,FR,France\n200105,3,278674,249486,307862,471,422,520,FR,France\n200104,3,209193,189129,229257,354,320,388,FR,France\n200103,3,139823,124243,155403,236,210,262,FR,France\n200102,3,105356,92392,118320,178,156,200,FR,France\n200101,3,98930,84599,113261,167,143,191,FR,France\n200052,3,143525,124203,162847,244,211,277,FR,France\n200051,3,125224,108719,141729,213,185,241,FR,France\n200050,3,99177,84857,113497,169,145,193,FR,France\n200049,3,74170,54196,94144,126,92,160,FR,France\n200048,3,43642,34064,53220,74,58,90,FR,France\n200047,3,64848,11322,118374,110,19,201,FR,France\n200046,3,20598,14053,27143,35,24,46,FR,France\n200045,3,25375,17229,33521,43,29,57,FR,France\n200044,3,16330,9762,22898,28,17,39,FR,France\n200043,3,36951,27693,46209,63,47,79,FR,France\n200042,3,41200,30772,51628,70,52,88,FR,France\n200041,3,40022,30939,49105,68,53,83,FR,France\n200040,3,27237,19986,34488,46,34,58,FR,France\n200039,3,19338,12649,26027,33,22,44,FR,France\n200038,3,7417,3193,11641,13,6,20,FR,France\n200037,3,2243,0,4722,4,0,8,FR,France\n200036,3,2990,0,6416,5,0,11,FR,France\n200035,3,5590,0,12003,10,0,21,FR,France\n200034,3,5188,0,12418,9,0,21,FR,France\n200033,3,1690,0,3859,3,0,7,FR,France\n200032,3,1405,0,4239,2,0,7,FR,France\n200031,3,2159,0,4744,4,0,8,FR,France\n200030,3,218,0,783,0,0,1,FR,France\n200029,3,1532,0,3751,3,0,7,FR,France\n200028,3,1071,0,2881,2,0,5,FR,France\n200027,3,2427,150,4704,4,0,8,FR,France\n200026,3,1997,0,4996,3,0,8,FR,France\n200025,3,4239,221,8257,7,0,14,FR,France\n200024,3,5411,1122,9700,9,2,16,FR,France\n200023,3,8757,4101,13413,15,7,23,FR,France\n200022,3,4966,1694,8238,8,2,14,FR,France\n200021,3,4271,1389,7153,7,2,12,FR,France\n200020,3,4520,1478,7562,8,3,13,FR,France\n200019,3,13867,8548,19186,24,15,33,FR,France\n200018,3,5386,2261,8511,9,4,14,FR,France\n200017,3,7018,1581,12455,12,3,21,FR,France\n200016,3,5328,1433,9223,9,2,16,FR,France\n200015,3,12020,6436,17604,20,11,29,FR,France\n200014,3,10942,5691,16193,19,10,28,FR,France\n200013,3,8572,3443,13701,15,6,24,FR,France\n200012,3,7081,3097,11065,12,5,19,FR,France\n200011,3,12172,7447,16897,21,13,29,FR,France\n200010,3,9091,5450,12732,15,9,21,FR,France\n200009,3,14631,9200,20062,25,16,34,FR,France\n200008,3,23647,17172,30122,40,29,51,FR,France\n200007,3,59173,48440,69906,101,83,119,FR,France\n200006,3,146517,129961,163073,249,221,277,FR,France\n200005,3,261687,239983,283391,445,408,482,FR,France\n200004,3,374822,349785,399859,637,594,680,FR,France\n200003,3,484233,456706,511760,824,777,871,FR,France\n200002,3,521069,492185,549953,886,837,935,FR,France\n200001,3,541945,511326,572564,922,870,974,FR,France\n199952,3,387655,360652,414658,663,617,709,FR,France\n199951,3,272075,250906,293244,465,429,501,FR,France\n199950,3,181113,164571,197655,310,282,338,FR,France\n199949,3,112328,99058,125598,192,169,215,FR,France\n199948,3,58710,48651,68769,100,83,117,FR,France\n199947,3,35912,23462,48362,61,40,82,FR,France\n199946,3,8601,1503,15699,15,3,27,FR,France\n199945,3,17781,10817,24745,30,18,42,FR,France\n199944,3,18238,12870,23606,31,22,40,FR,France\n199943,3,18135,12601,23669,31,22,40,FR,France\n199942,3,19183,13258,25108,33,23,43,FR,France\n199941,3,25171,18689,31653,43,32,54,FR,France\n199940,3,24185,16184,32186,41,27,55,FR,France\n199939,3,28553,20776,36330,49,36,62,FR,France\n199938,3,12430,7759,17101,21,13,29,FR,France\n199937,3,7543,4283,10803,13,7,19,FR,France\n199936,3,8191,2827,13555,14,5,23,FR,France\n199935,3,3334,1188,5480,6,2,10,FR,France\n199934,3,7600,0,27730,13,0,47,FR,France\n199933,3,9757,354,19160,17,1,33,FR,France\n199932,3,7149,0,15077,12,0,26,FR,France\n199931,3,2640,0,5463,5,0,10,FR,France\n199930,3,1478,0,3153,3,0,6,FR,France\n199929,3,3983,498,7468,7,1,13,FR,France\n199928,3,3731,712,6750,6,1,11,FR,France\n199927,3,5004,1597,8411,9,3,15,FR,France\n199926,3,3459,699,6219,6,1,11,FR,France\n199925,3,5302,2057,8547,9,3,15,FR,France\n199924,3,4327,1646,7008,7,2,12,FR,France\n199923,3,5370,2374,8366,9,4,14,FR,France\n199922,3,4404,1643,7165,8,3,13,FR,France\n199921,3,4180,1485,6875,7,2,12,FR,France\n199920,3,6073,2775,9371,10,4,16,FR,France\n199919,3,6241,3220,9262,11,6,16,FR,France\n199918,3,3057,678,5436,5,1,9,FR,France\n199917,3,2904,701,5107,5,1,9,FR,France\n199916,3,7539,3360,11718,13,6,20,FR,France\n199915,3,11535,6814,16256,20,12,28,FR,France\n199914,3,18730,13131,24329,32,22,42,FR,France\n199913,3,38453,29560,47346,66,51,81,FR,France\n199912,3,58090,48072,68108,99,82,116,FR,France\n199911,3,91329,78686,103972,156,134,178,FR,France\n199910,3,147976,131058,164894,253,224,282,FR,France\n199909,3,207450,188710,226190,355,323,387,FR,France\n199908,3,313293,292280,334306,536,500,572,FR,France\n199907,3,524136,496702,551570,896,849,943,FR,France\n199906,3,493908,466605,521211,844,797,891,FR,France\n199905,3,476884,449696,504072,815,769,861,FR,France\n199904,3,368514,345131,391897,630,590,670,FR,France\n199903,3,242388,224208,260568,414,383,445,FR,France\n199902,3,160657,145209,176105,275,249,301,FR,France\n199901,3,130133,115125,145141,222,196,248,FR,France\n199853,3,107611,92301,122921,185,159,211,FR,France\n199852,3,72373,61032,83714,124,105,143,FR,France\n199851,3,78179,67156,89202,134,115,153,FR,France\n199850,3,54775,45478,64072,94,78,110,FR,France\n199849,3,33385,26332,40438,57,45,69,FR,France\n199848,3,22636,16668,28604,39,29,49,FR,France\n199847,3,14505,9746,19264,25,17,33,FR,France\n199846,3,13804,9049,18559,24,16,32,FR,France\n199845,3,13021,8113,17929,22,14,30,FR,France\n199844,3,12631,7410,17852,22,13,31,FR,France\n199843,3,12180,7125,17235,21,12,30,FR,France\n199842,3,18885,12726,25044,32,21,43,FR,France\n199841,3,24196,17506,30886,42,31,53,FR,France\n199840,3,20235,14114,26356,35,25,45,FR,France\n199839,3,17075,11538,22612,29,20,38,FR,France\n199838,3,10837,6336,15338,19,11,27,FR,France\n199837,3,6968,3227,10709,12,6,18,FR,France\n199836,3,3033,580,5486,5,1,9,FR,France\n199835,3,2491,0,5022,4,0,8,FR,France\n199834,3,3853,589,7117,7,1,13,FR,France\n199833,3,2934,0,6598,5,0,11,FR,France\n199832,3,1308,0,2894,2,0,5,FR,France\n199831,3,12147,0,29237,21,0,50,FR,France\n199830,3,5309,1628,8990,9,3,15,FR,France\n199829,3,6486,2465,10507,11,4,18,FR,France\n199828,3,9577,4464,14690,16,7,25,FR,France\n199827,3,12358,7158,17558,21,12,30,FR,France\n199826,3,10415,6547,14283,18,11,25,FR,France\n199825,3,18246,13050,23442,31,22,40,FR,France\n199824,3,16263,11126,21400,28,19,37,FR,France\n199823,3,8553,4911,12195,15,9,21,FR,France\n199822,3,5181,2669,7693,9,5,13,FR,France\n199821,3,4751,2416,7086,8,4,12,FR,France\n199820,3,12129,8099,16159,21,14,28,FR,France\n199819,3,24118,17906,30330,41,30,52,FR,France\n199818,3,31612,24512,38712,54,42,66,FR,France\n199817,3,61148,51894,70402,105,89,121,FR,France\n199816,3,123195,109878,136512,211,188,234,FR,France\n199815,3,171603,156715,186491,294,268,320,FR,France\n199814,3,319092,298398,339786,547,512,582,FR,France\n199813,3,298212,278513,317911,512,478,546,FR,France\n199812,3,263585,246356,280814,452,422,482,FR,France\n199811,3,220578,204894,236262,378,351,405,FR,France\n199810,3,202354,186304,218404,347,319,375,FR,France\n199809,3,227553,209970,245136,390,360,420,FR,France\n199808,3,271362,252005,290719,465,432,498,FR,France\n199807,3,190187,173694,206680,326,298,354,FR,France\n199806,3,88217,76829,99605,151,131,171,FR,France\n199805,3,45180,36970,53390,77,63,91,FR,France\n199804,3,30005,23272,36738,51,39,63,FR,France\n199803,3,23900,18221,29579,41,31,51,FR,France\n199802,3,31143,23994,38292,53,41,65,FR,France\n199801,3,24809,17786,31832,43,31,55,FR,France\n199752,3,29039,21984,36094,50,38,62,FR,France\n199751,3,34924,27737,42111,60,48,72,FR,France\n199750,3,33527,26388,40666,58,46,70,FR,France\n199749,3,15978,11147,20809,27,19,35,FR,France\n199748,3,11507,7744,15270,20,14,26,FR,France\n199747,3,11059,7151,14967,19,12,26,FR,France\n199746,3,8073,4613,11533,14,8,20,FR,France\n199745,3,18202,13113,23291,31,22,40,FR,France\n199744,3,19770,14405,25135,34,25,43,FR,France\n199743,3,16707,11945,21469,29,21,37,FR,France\n199742,3,15340,10351,20329,26,17,35,FR,France\n199741,3,16933,11941,21925,29,20,38,FR,France\n199740,3,13292,8709,17875,23,15,31,FR,France\n199739,3,10189,6279,14099,18,11,25,FR,France\n199738,3,3231,1061,5401,6,2,10,FR,France\n199737,3,4542,1949,7135,8,4,12,FR,France\n199736,3,5131,2205,8057,9,4,14,FR,France\n199735,3,1842,0,3740,3,0,6,FR,France\n199734,3,3226,0,6717,6,0,12,FR,France\n199733,3,1799,0,4368,3,0,7,FR,France\n199732,3,2086,0,4411,4,0,8,FR,France\n199731,3,1386,0,3332,2,0,5,FR,France\n199730,3,2116,0,4919,4,0,9,FR,France\n199729,3,1973,0,4347,3,0,7,FR,France\n199728,3,1560,216,2904,3,1,5,FR,France\n199727,3,2540,754,4326,4,1,7,FR,France\n199726,3,5582,2699,8465,10,5,15,FR,France\n199725,3,4012,1090,6934,7,2,12,FR,France\n199724,3,4696,1824,7568,8,3,13,FR,France\n199723,3,4709,2136,7282,8,4,12,FR,France\n199722,3,2283,665,3901,4,1,7,FR,France\n199721,3,2108,664,3552,4,2,6,FR,France\n199720,3,3257,1519,4995,6,3,9,FR,France\n199719,3,4646,2436,6856,8,4,12,FR,France\n199718,3,5246,2764,7728,9,5,13,FR,France\n199717,3,14236,9906,18566,24,17,31,FR,France\n199716,3,12169,8111,16227,21,14,28,FR,France\n199715,3,9516,6192,12840,16,10,22,FR,France\n199714,3,13602,9659,17545,23,16,30,FR,France\n199713,3,18032,13345,22719,31,23,39,FR,France\n199712,3,17199,12707,21691,30,22,38,FR,France\n199711,3,19988,15419,24557,34,26,42,FR,France\n199710,3,21903,17338,26468,38,30,46,FR,France\n199709,3,29860,24261,35459,51,41,61,FR,France\n199708,3,55445,47857,63033,95,82,108,FR,France\n199707,3,70876,62518,79234,122,108,136,FR,France\n199706,3,76906,68152,85660,132,117,147,FR,France\n199705,3,95900,86095,105705,165,148,182,FR,France\n199704,3,96896,87079,106713,167,150,184,FR,France\n199703,3,143844,131917,155771,248,227,269,FR,France\n199702,3,211578,197395,225761,364,340,388,FR,France\n199701,3,280440,263783,297097,483,454,512,FR,France\n199652,3,388201,369211,407191,670,637,703,FR,France\n199651,3,640627,617388,663866,1106,1066,1146,FR,France\n199650,3,535205,514568,555842,924,888,960,FR,France\n199649,3,411498,393335,429661,710,679,741,FR,France\n199648,3,195568,182563,208573,338,316,360,FR,France\n199647,3,71980,63619,80341,124,110,138,FR,France\n199646,3,32138,26358,37918,55,45,65,FR,France\n199645,3,25551,20136,30966,44,35,53,FR,France\n199644,3,10753,7230,14276,19,13,25,FR,France\n199643,3,12971,9311,16631,22,16,28,FR,France\n199642,3,11929,8472,15386,21,15,27,FR,France\n199641,3,9918,6674,13162,17,11,23,FR,France\n199640,3,10765,7067,14463,19,13,25,FR,France\n199639,3,8377,5183,11571,14,8,20,FR,France\n199638,3,9470,5965,12975,16,10,22,FR,France\n199637,3,2925,829,5021,5,1,9,FR,France\n199636,3,1122,23,2221,2,0,4,FR,France\n199635,3,1674,93,3255,3,0,6,FR,France\n199634,3,1273,122,2424,2,0,4,FR,France\n199633,3,540,0,1246,1,0,2,FR,France\n199632,3,1453,176,2730,3,1,5,FR,France\n199631,3,3010,752,5268,5,1,9,FR,France\n199630,3,2992,706,5278,5,1,9,FR,France\n199629,3,1559,144,2974,3,1,5,FR,France\n199628,3,3109,541,5677,5,1,9,FR,France\n199627,3,4456,1595,7317,8,3,13,FR,France\n199626,3,2871,1138,4604,5,2,8,FR,France\n199625,3,2308,856,3760,4,1,7,FR,France\n199624,3,2490,1067,3913,4,2,6,FR,France\n199623,3,2819,1262,4376,5,2,8,FR,France\n199622,3,4005,1984,6026,7,4,10,FR,France\n199621,3,7042,4291,9793,12,7,17,FR,France\n199620,3,10619,7365,13873,18,12,24,FR,France\n199619,3,11898,8065,15731,21,14,28,FR,France\n199618,3,18338,13352,23324,32,23,41,FR,France\n199617,3,24954,19100,30808,43,33,53,FR,France\n199616,3,29313,23868,34758,51,42,60,FR,France\n199615,3,51703,43644,59762,89,75,103,FR,France\n199614,3,44414,36774,52054,77,64,90,FR,France\n199613,3,30622,25062,36182,53,43,63,FR,France\n199612,3,31818,25852,37784,55,45,65,FR,France\n199611,3,24427,19499,29355,42,33,51,FR,France\n199610,3,20910,16198,25622,36,28,44,FR,France\n199609,3,19594,15228,23960,34,26,42,FR,France\n199608,3,19046,14850,23242,33,26,40,FR,France\n199607,3,23041,18338,27744,40,32,48,FR,France\n199606,3,21810,17153,26467,38,30,46,FR,France\n199605,3,25275,20410,30140,44,36,52,FR,France\n199604,3,43359,36948,49770,75,64,86,FR,France\n199603,3,54691,48016,61366,94,82,106,FR,France\n199602,3,105606,96106,115106,182,166,198,FR,France\n199601,3,223830,209274,238386,386,361,411,FR,France\n199552,3,397122,378252,415992,688,655,721,FR,France\n199551,3,749988,725434,774542,1299,1256,1342,FR,France\n199550,3,604926,583100,626752,1047,1009,1085,FR,France\n199549,3,375500,358200,392800,650,620,680,FR,France\n199548,3,206446,193457,219435,357,335,379,FR,France\n199547,3,120472,110526,130418,209,192,226,FR,France\n199546,3,62380,55042,69718,108,95,121,FR,France\n199545,3,29791,24523,35059,52,43,61,FR,France\n199544,3,13168,9820,16516,23,17,29,FR,France\n199543,3,16188,12389,19987,28,21,35,FR,France\n199542,3,15178,11387,18969,26,19,33,FR,France\n199541,3,14980,10851,19109,26,19,33,FR,France\n199540,3,16245,11610,20880,28,20,36,FR,France\n199539,3,18499,13844,23154,32,24,40,FR,France\n199538,3,13123,9410,16836,23,17,29,FR,France\n199537,3,4895,2666,7124,8,4,12,FR,France\n199536,3,3659,1574,5744,6,2,10,FR,France\n199535,3,2496,644,4348,4,1,7,FR,France\n199534,3,1887,214,3560,3,0,6,FR,France\n199533,3,905,0,2007,2,0,4,FR,France\n199532,3,700,0,1699,1,0,3,FR,France\n199531,3,1946,92,3800,3,0,6,FR,France\n199530,3,1898,46,3750,3,0,6,FR,France\n199529,3,2148,687,3609,4,1,7,FR,France\n199528,3,3312,1430,5194,6,3,9,FR,France\n199527,3,4853,2683,7023,8,4,12,FR,France\n199526,3,4986,2911,7061,9,5,13,FR,France\n199525,3,4571,2520,6622,8,4,12,FR,France\n199524,3,8058,5054,11062,14,9,19,FR,France\n199523,3,13820,9801,17839,24,17,31,FR,France\n199522,3,14124,9999,18249,24,17,31,FR,France\n199521,3,11931,8655,15207,21,15,27,FR,France\n199520,3,18846,14311,23381,33,25,41,FR,France\n199519,3,26261,21488,31034,45,37,53,FR,France\n199518,3,39231,33258,45204,68,58,78,FR,France\n199517,3,88640,79343,97937,153,137,169,FR,France\n199516,3,140488,129439,151537,243,224,262,FR,France\n199515,3,181007,169110,192904,313,292,334,FR,France\n199514,3,248704,235144,262264,431,408,454,FR,France\n199513,3,209839,197191,222487,363,341,385,FR,France\n199512,3,122434,112497,132371,212,195,229,FR,France\n199511,3,81730,73346,90114,142,127,157,FR,France\n199510,3,49387,42703,56071,86,74,98,FR,France\n199509,3,39696,33259,46133,69,58,80,FR,France\n199508,3,38008,32225,43791,66,56,76,FR,France\n199507,3,30550,25479,35621,53,44,62,FR,France\n199506,3,37351,32007,42695,65,56,74,FR,France\n199505,3,27876,23218,32534,48,40,56,FR,France\n199504,3,27643,22818,32468,48,40,56,FR,France\n199503,3,24844,20391,29297,43,35,51,FR,France\n199502,3,23480,19249,27711,41,34,48,FR,France\n199501,3,26556,21916,31196,46,38,54,FR,France\n199452,3,22036,17495,26577,38,30,46,FR,France\n199451,3,26912,21750,32074,47,38,56,FR,France\n199450,3,28831,23470,34192,50,41,59,FR,France\n199449,3,21161,16559,25763,37,29,45,FR,France\n199448,3,18487,14456,22518,32,25,39,FR,France\n199447,3,15206,11578,18834,26,20,32,FR,France\n199446,3,14252,10525,17979,25,19,31,FR,France\n199445,3,12152,8448,15856,21,15,27,FR,France\n199444,3,11307,7688,14926,20,14,26,FR,France\n199443,3,11254,8002,14506,20,14,26,FR,France\n199442,3,14406,10653,18159,25,18,32,FR,France\n199441,3,14073,10341,17805,24,18,30,FR,France\n199440,3,15962,11850,20074,28,21,35,FR,France\n199439,3,15878,11643,20113,28,21,35,FR,France\n199438,3,15366,11100,19632,27,20,34,FR,France\n199437,3,5949,3561,8337,10,6,14,FR,France\n199436,3,2806,1133,4479,5,2,8,FR,France\n199435,3,4556,2358,6754,8,4,12,FR,France\n199434,3,3459,1444,5474,6,2,10,FR,France\n199433,3,4272,977,7567,7,1,13,FR,France\n199432,3,4786,1613,7959,8,2,14,FR,France\n199431,3,5027,1580,8474,9,3,15,FR,France\n199430,3,2100,520,3680,4,1,7,FR,France\n199429,3,1188,0,2384,2,0,4,FR,France\n199428,3,1581,316,2846,3,1,5,FR,France\n199427,3,713,0,1459,1,0,2,FR,France\n199426,3,990,80,1900,2,0,4,FR,France\n199425,3,5431,3222,7640,9,5,13,FR,France\n199424,3,6288,3723,8853,11,7,15,FR,France\n199423,3,6440,1052,11828,11,2,20,FR,France\n199422,3,845,0,2449,1,0,4,FR,France\n199421,3,2197,395,3999,4,1,7,FR,France\n199420,3,2217,852,3582,4,2,6,FR,France\n199419,3,1483,406,2560,3,1,5,FR,France\n199418,3,3705,1940,5470,6,3,9,FR,France\n199417,3,2288,1064,3512,4,2,6,FR,France\n199416,3,5156,3176,7136,9,6,12,FR,France\n199415,3,6952,4678,9226,12,8,16,FR,France\n199414,3,4671,2784,6558,8,5,11,FR,France\n199413,3,3343,1641,5045,6,3,9,FR,France\n199412,3,4305,2412,6198,7,4,10,FR,France\n199411,3,5399,3327,7471,9,5,13,FR,France\n199410,3,4548,2529,6567,8,4,12,FR,France\n199409,3,5635,3251,8019,10,6,14,FR,France\n199408,3,9539,6652,12426,17,12,22,FR,France\n199407,3,14639,11188,18090,25,19,31,FR,France\n199406,3,17308,13395,21221,30,23,37,FR,France\n199405,3,18489,14290,22688,32,25,39,FR,France\n199404,3,23712,19048,28376,41,33,49,FR,France\n199403,3,29882,24817,34947,52,43,61,FR,France\n199402,3,47402,41415,53389,82,72,92,FR,France\n199401,3,118119,108182,128056,205,188,222,FR,France\n199352,3,233137,218608,247666,406,381,431,FR,France\n199351,3,377472,359792,395152,658,627,689,FR,France\n199350,3,627639,607097,648181,1094,1058,1130,FR,France\n199349,3,898045,873419,922671,1565,1522,1608,FR,France\n199348,3,527582,507752,547412,920,885,955,FR,France\n199347,3,241371,226769,255973,421,396,446,FR,France\n199346,3,76034,68003,84065,133,119,147,FR,France\n199345,3,32289,27022,37556,56,47,65,FR,France\n199344,3,17832,14015,21649,31,24,38,FR,France\n199343,3,15098,11333,18863,26,19,33,FR,France\n199342,3,19187,14893,23481,33,26,40,FR,France\n199341,3,18285,14384,22186,32,25,39,FR,France\n199340,3,13805,10348,17262,24,18,30,FR,France\n199339,3,14783,11173,18393,26,20,32,FR,France\n199338,3,10492,7329,13655,18,12,24,FR,France\n199337,3,7023,4503,9543,12,8,16,FR,France\n199336,3,4361,2445,6277,8,5,11,FR,France\n199335,3,5589,3066,8112,10,6,14,FR,France\n199334,3,2984,1209,4759,5,2,8,FR,France\n199333,3,3217,758,5676,6,2,10,FR,France\n199332,3,3755,1051,6459,7,2,12,FR,France\n199331,3,4163,1768,6558,7,3,11,FR,France\n199330,3,4055,1907,6203,7,3,11,FR,France\n199329,3,3714,1668,5760,6,2,10,FR,France\n199328,3,1774,484,3064,3,1,5,FR,France\n199327,3,2574,918,4230,4,1,7,FR,France\n199326,3,3048,1450,4646,5,2,8,FR,France\n199325,3,8348,5260,11436,15,10,20,FR,France\n199324,3,6624,3747,9501,12,7,17,FR,France\n199323,3,7424,4302,10546,13,8,18,FR,France\n199322,3,3432,1849,5015,6,3,9,FR,France\n199321,3,5942,3670,8214,10,6,14,FR,France\n199320,3,5137,3157,7117,9,6,12,FR,France\n199319,3,4593,2725,6461,8,5,11,FR,France\n199318,3,5027,3075,6979,9,6,12,FR,France\n199317,3,8111,5138,11084,14,9,19,FR,France\n199316,3,24932,19468,30396,43,33,53,FR,France\n199315,3,22181,17147,27215,39,30,48,FR,France\n199314,3,38266,30865,45667,67,54,80,FR,France\n199313,3,62987,54506,71468,110,95,125,FR,France\n199312,3,63493,55956,71030,111,98,124,FR,France\n199311,3,80548,72628,88468,140,126,154,FR,France\n199310,3,127910,117688,138132,223,205,241,FR,France\n199309,3,184150,171378,196922,321,299,343,FR,France\n199308,3,222932,209051,236813,389,365,413,FR,France\n199307,3,248494,234936,262052,433,409,457,FR,France\n199306,3,286939,271830,302048,500,474,526,FR,France\n199305,3,255890,241516,270264,446,421,471,FR,France\n199304,3,193107,181261,204953,337,316,358,FR,France\n199303,3,147854,137256,158452,258,240,276,FR,France\n199302,3,90269,82164,98374,157,143,171,FR,France\n199301,3,75288,67244,83332,131,117,145,FR,France\n199253,3,56622,49107,64137,99,86,112,FR,France\n199252,3,49588,42568,56608,87,75,99,FR,France\n199251,3,41156,35024,47288,72,61,83,FR,France\n199250,3,40100,34699,45501,70,61,79,FR,France\n199249,3,39146,33847,44445,69,60,78,FR,France\n199248,3,32392,27499,37285,57,48,66,FR,France\n199247,3,26276,21797,30755,46,38,54,FR,France\n199246,3,22758,18462,27054,40,32,48,FR,France\n199245,3,22023,17804,26242,39,32,46,FR,France\n199244,3,27619,22945,32293,48,40,56,FR,France\n199243,3,24969,20704,29234,44,37,51,FR,France\n199242,3,29980,25261,34699,52,44,60,FR,France\n199241,3,24091,19953,28229,42,35,49,FR,France\n199240,3,17593,13885,21301,31,25,37,FR,France\n199239,3,13535,10301,16769,24,18,30,FR,France\n199238,3,9837,7106,12568,17,12,22,FR,France\n199237,3,7480,5130,9830,13,9,17,FR,France\n199236,3,5155,2958,7352,9,5,13,FR,France\n199235,3,6383,3687,9079,11,6,16,FR,France\n199234,3,2953,922,4984,5,1,9,FR,France\n199233,3,4046,1549,6543,7,3,11,FR,France\n199232,3,4963,2215,7711,9,4,14,FR,France\n199231,3,4233,1733,6733,7,3,11,FR,France\n199230,3,3091,1145,5037,5,2,8,FR,France\n199229,3,3586,1583,5589,6,2,10,FR,France\n199228,3,4179,2133,6225,7,3,11,FR,France\n199227,3,5568,3134,8002,10,6,14,FR,France\n199226,3,5886,3229,8543,10,5,15,FR,France\n199225,3,5304,2805,7803,9,5,13,FR,France\n199224,3,5928,3482,8374,10,6,14,FR,France\n199223,3,3914,1855,5973,7,3,11,FR,France\n199222,3,4899,2641,7157,9,5,13,FR,France\n199221,3,5059,2889,7229,9,5,13,FR,France\n199220,3,4308,2226,6390,8,4,12,FR,France\n199219,3,2982,1181,4783,5,2,8,FR,France\n199218,3,3887,1777,5997,7,3,11,FR,France\n199217,3,3614,1216,6012,6,2,10,FR,France\n199216,3,5460,2934,7986,10,6,14,FR,France\n199215,3,8642,5029,12255,15,9,21,FR,France\n199214,3,11346,7536,15156,20,13,27,FR,France\n199213,3,11693,8096,15290,20,14,26,FR,France\n199212,3,11752,7834,15670,21,14,28,FR,France\n199211,3,11689,7575,15803,20,13,27,FR,France\n199210,3,19224,12971,25477,34,23,45,FR,France\n199209,3,26629,20275,32983,47,36,58,FR,France\n199208,3,37667,30887,44447,66,54,78,FR,France\n199207,3,57312,48777,65847,100,85,115,FR,France\n199206,3,112450,99989,124911,197,175,219,FR,France\n199205,3,165474,151342,179606,290,265,315,FR,France\n199204,3,147959,133595,162323,259,234,284,FR,France\n199203,3,137893,122944,152842,241,215,267,FR,France\n199202,3,185852,166558,205146,325,291,359,FR,France\n199201,3,247688,222574,272802,434,390,478,FR,France\n199152,3,349815,325499,374131,615,572,658,FR,France\n199151,3,378413,355928,400898,666,626,706,FR,France\n199150,3,198721,182878,214564,350,322,378,FR,France\n199149,3,93903,82992,104814,165,146,184,FR,France\n199148,3,45173,37384,52962,79,65,93,FR,France\n199147,3,35691,28224,43158,63,50,76,FR,France\n199146,3,23685,17531,29839,42,31,53,FR,France\n199145,3,19565,13551,25579,34,23,45,FR,France\n199144,3,21571,15477,27665,38,27,49,FR,France\n199143,3,28842,21958,35726,51,39,63,FR,France\n199142,3,27483,20385,34581,48,36,60,FR,France\n199141,3,28185,20655,35715,50,37,63,FR,France\n199140,3,26740,16049,37431,47,28,66,FR,France\n199139,3,14373,8734,20012,25,15,35,FR,France\n199138,3,7460,3700,11220,13,6,20,FR,France\n199137,3,2429,434,4424,4,0,8,FR,France\n199136,3,2380,0,4882,4,0,8,FR,France\n199135,3,2372,0,5025,4,0,9,FR,France\n199134,3,2099,0,5104,4,0,9,FR,France\n199133,3,1654,0,4102,3,0,7,FR,France\n199132,3,625,0,2190,1,0,4,FR,France\n199131,3,2464,0,5830,4,0,10,FR,France\n199130,3,2382,0,6857,4,0,12,FR,France\n199129,3,3837,40,7634,7,0,14,FR,France\n199128,3,3297,152,6442,6,0,12,FR,France\n199127,3,3164,934,5394,6,2,10,FR,France\n199126,3,6376,3324,9428,11,6,16,FR,France\n199125,3,8218,4776,11660,14,8,20,FR,France\n199124,3,8223,4660,11786,14,8,20,FR,France\n199123,3,6801,3596,10006,12,6,18,FR,France\n199122,3,6050,2682,9418,11,5,17,FR,France\n199121,3,6391,3385,9397,11,6,16,FR,France\n199120,3,8633,4683,12583,15,8,22,FR,France\n199119,3,7785,3986,11584,14,7,21,FR,France\n199118,3,10856,6457,15255,19,11,27,FR,France\n199117,3,15603,10950,20256,27,19,35,FR,France\n199116,3,15665,11184,20146,28,20,36,FR,France\n199115,3,15062,10715,19409,26,18,34,FR,France\n199114,3,27862,21583,34141,49,38,60,FR,France\n199113,3,32179,25829,38529,57,46,68,FR,France\n199112,3,27873,22312,33434,49,39,59,FR,France\n199111,3,46186,38876,53496,81,68,94,FR,France\n199110,3,88750,77784,99716,156,137,175,FR,France\n199109,3,139093,124326,153860,245,219,271,FR,France\n199108,3,216369,198630,234108,381,350,412,FR,France\n199107,3,208836,191789,225883,367,337,397,FR,France\n199106,3,134737,121280,148194,237,213,261,FR,France\n199105,3,73564,62716,84412,129,110,148,FR,France\n199104,3,48253,39031,57475,85,69,101,FR,France\n199103,3,29382,22258,36506,52,39,65,FR,France\n199102,3,29759,22044,37474,52,38,66,FR,France\n199101,3,42927,33706,52148,76,60,92,FR,France\n199052,3,41262,31607,50917,73,56,90,FR,France\n199051,3,46924,37544,56304,83,66,100,FR,France\n199050,3,44125,36137,52113,78,64,92,FR,France\n199049,3,38379,30603,46155,68,54,82,FR,France\n199048,3,29571,22315,36827,52,39,65,FR,France\n199047,3,23358,15890,30826,41,28,54,FR,France\n199046,3,20246,7930,32562,36,14,58,FR,France\n199045,3,17571,11591,23551,31,20,42,FR,France\n199044,3,16182,10305,22059,29,19,39,FR,France\n199043,3,17579,11588,23570,31,20,42,FR,France\n199042,3,13011,7875,18147,23,14,32,FR,France\n199041,3,19723,13330,26116,35,24,46,FR,France\n199040,3,20433,14614,26252,36,26,46,FR,France\n199039,3,15618,10315,20921,28,19,37,FR,France\n199038,3,11146,6197,16095,20,11,29,FR,France\n199037,3,4051,1022,7080,7,2,12,FR,France\n199036,3,2542,124,4960,4,0,8,FR,France\n199035,3,934,0,2681,2,0,5,FR,France\n199034,3,201,0,595,0,0,1,FR,France\n199033,3,0,0,0,0,0,0,FR,France\n199032,3,1399,0,3849,2,0,6,FR,France\n199031,3,881,0,2206,2,0,4,FR,France\n199030,3,425,0,1262,1,0,2,FR,France\n199029,3,1077,0,2643,2,0,5,FR,France\n199028,3,959,0,2252,2,0,4,FR,France\n199027,3,2948,793,5103,5,1,9,FR,France\n199026,3,7236,2651,11821,13,5,21,FR,France\n199025,3,7879,3136,12622,14,6,22,FR,France\n199024,3,5727,2460,8994,10,4,16,FR,France\n199023,3,3655,1043,6267,6,1,11,FR,France\n199022,3,4196,1292,7100,7,2,12,FR,France\n199021,3,1004,0,2367,2,0,4,FR,France\n199020,3,4506,1771,7241,8,3,13,FR,France\n199019,3,5897,2440,9354,10,4,16,FR,France\n199018,3,1738,141,3335,3,0,6,FR,France\n199017,3,5278,2197,8359,9,4,14,FR,France\n199016,3,8129,3754,12504,14,6,22,FR,France\n199015,3,11707,5831,17583,21,11,31,FR,France\n199014,3,12862,8177,17547,23,15,31,FR,France\n199013,3,21879,15088,28670,39,27,51,FR,France\n199012,3,17035,11135,22935,30,20,40,FR,France\n199011,3,20018,14311,25725,35,25,45,FR,France\n199010,3,16294,11045,21543,29,20,38,FR,France\n199009,3,21793,15460,28126,39,28,50,FR,France\n199008,3,26110,19342,32878,46,34,58,FR,France\n199007,3,61742,49720,73764,109,88,130,FR,France\n199006,3,399984,353345,446623,707,625,789,FR,France\n199005,3,161765,146354,177176,286,259,313,FR,France\n199004,3,287771,267698,307844,509,474,544,FR,France\n199003,3,315466,296550,334382,558,525,591,FR,France\n199002,3,345060,326087,364033,610,576,644,FR,France\n199001,3,483600,460913,506287,855,815,895,FR,France\n198952,3,581149,556023,606275,1035,990,1080,FR,France\n198951,3,821540,793846,849234,1463,1414,1512,FR,France\n198950,3,749283,723633,774933,1334,1288,1380,FR,France\n198949,3,358043,340053,376033,638,606,670,FR,France\n198948,3,119087,108253,129921,212,193,231,FR,France\n198947,3,40963,33897,48029,73,60,86,FR,France\n198946,3,23547,17952,29142,42,32,52,FR,France\n198945,3,22711,16999,28423,40,30,50,FR,France\n198944,3,23405,17475,29335,42,31,53,FR,France\n198943,3,29549,23287,35811,53,42,64,FR,France\n198942,3,39410,32172,46648,70,57,83,FR,France\n198941,3,43763,35245,52281,78,63,93,FR,France\n198940,3,31453,24288,38618,56,43,69,FR,France\n198939,3,24622,18425,30819,44,33,55,FR,France\n198938,3,18296,13483,23109,33,24,42,FR,France\n198937,3,12022,8082,15962,21,14,28,FR,France\n198936,3,4769,2299,7239,8,4,12,FR,France\n198935,3,4661,1696,7626,8,3,13,FR,France\n198934,3,6039,2185,9893,11,4,18,FR,France\n198933,3,7940,3858,12022,14,7,21,FR,France\n198932,3,7114,2361,11867,13,5,21,FR,France\n198931,3,2721,0,5478,5,0,10,FR,France\n198930,3,3168,561,5775,6,1,11,FR,France\n198929,3,3909,1504,6314,7,3,11,FR,France\n198928,3,1284,105,2463,2,0,4,FR,France\n198927,3,3641,1350,5932,6,2,10,FR,France\n198926,3,5753,2885,8621,10,5,15,FR,France\n198925,3,6299,3454,9144,11,6,16,FR,France\n198924,3,6337,3537,9137,11,6,16,FR,France\n198923,3,11779,7984,15574,21,14,28,FR,France\n198922,3,9104,4764,13444,16,8,24,FR,France\n198921,3,9554,4316,14792,17,8,26,FR,France\n198920,3,6093,1023,11163,11,2,20,FR,France\n198919,3,0,,,0,,,FR,France\n198918,3,13452,1365,25539,24,2,46,FR,France\n198917,3,10949,7147,14751,19,12,26,FR,France\n198916,3,10908,7494,14322,19,13,25,FR,France\n198915,3,9667,6209,13125,17,11,23,FR,France\n198914,3,15230,10469,19991,27,19,35,FR,France\n198913,3,10564,6767,14361,19,12,26,FR,France\n198912,3,13419,9542,17296,24,17,31,FR,France\n198911,3,16633,12140,21126,30,22,38,FR,France\n198910,3,12387,8750,16024,22,16,28,FR,France\n198909,3,12895,9183,16607,23,16,30,FR,France\n198908,3,19746,15258,24234,35,27,43,FR,France\n198907,3,27277,21760,32794,49,39,59,FR,France\n198906,3,47844,40320,55368,85,72,98,FR,France\n198905,3,52840,45665,60015,94,81,107,FR,France\n198904,3,54942,47750,62134,98,85,111,FR,France\n198903,3,66010,58065,73955,118,104,132,FR,France\n198902,3,112284,102003,122565,200,182,218,FR,France\n198901,3,202266,188305,216227,360,335,385,FR,France\n198852,3,467971,447033,488909,837,800,874,FR,France\n198851,3,872748,846468,899028,1562,1515,1609,FR,France\n198850,3,1001824,974799,1028849,1793,1745,1841,FR,France\n198849,3,966523,940068,992978,1729,1682,1776,FR,France\n198848,3,637811,614785,660837,1141,1100,1182,FR,France\n198847,3,246062,231234,260890,440,413,467,FR,France\n198846,3,92484,83160,101808,165,148,182,FR,France\n198845,3,53940,46148,61732,97,83,111,FR,France\n198844,3,42106,35336,48876,75,63,87,FR,France\n198843,3,38252,31909,44595,68,57,79,FR,France\n198842,3,45495,38467,52523,81,68,94,FR,France\n198841,3,46336,39344,53328,83,70,96,FR,France\n198840,3,39882,33507,46257,71,60,82,FR,France\n198839,3,43730,36755,50705,78,66,90,FR,France\n198838,3,35243,29367,41119,63,52,74,FR,France\n198837,3,15537,11911,19163,28,22,34,FR,France\n198836,3,7539,4840,10238,13,8,18,FR,France\n198835,3,7797,4762,10832,14,9,19,FR,France\n198834,3,4950,2005,7895,9,4,14,FR,France\n198833,3,7937,3861,12013,14,7,21,FR,France\n198832,3,7033,2595,11471,13,5,21,FR,France\n198831,3,8758,3591,13925,16,7,25,FR,France\n198830,3,4205,1224,7186,8,3,13,FR,France\n198829,3,6103,1013,11193,11,2,20,FR,France\n198828,3,8562,3483,13641,15,6,24,FR,France\n198827,3,4690,2196,7184,8,4,12,FR,France\n198826,3,7065,3905,10225,13,7,19,FR,France\n198825,3,7657,4664,10650,14,9,19,FR,France\n198824,3,6676,3978,9374,12,7,17,FR,France\n198823,3,8695,5755,11635,16,11,21,FR,France\n198822,3,11566,8282,14850,21,15,27,FR,France\n198821,3,11107,7742,14472,20,14,26,FR,France\n198820,3,14118,10223,18013,25,18,32,FR,France\n198819,3,18260,13847,22673,33,25,41,FR,France\n198818,3,20415,16281,24549,37,30,44,FR,France\n198817,3,21750,17436,26064,39,31,47,FR,France\n198816,3,33730,27496,39964,60,49,71,FR,France\n198815,3,70616,61754,79478,126,110,142,FR,France\n198814,3,123868,113211,134525,222,203,241,FR,France\n198813,3,193710,181519,205901,347,325,369,FR,France\n198812,3,283445,268834,298056,507,481,533,FR,France\n198811,3,316175,300858,331492,566,539,593,FR,France\n198810,3,235142,222004,248280,421,397,445,FR,France\n198809,3,135564,125263,145865,243,225,261,FR,France\n198808,3,87753,78449,97057,157,140,174,FR,France\n198807,3,77099,68423,85775,138,122,154,FR,France\n198806,3,69349,61502,77196,124,110,138,FR,France\n198805,3,72705,64952,80458,130,116,144,FR,France\n198804,3,72818,64944,80692,130,116,144,FR,France\n198803,3,68869,60922,76816,123,109,137,FR,France\n198802,3,59743,51907,67579,107,93,121,FR,France\n198801,3,60929,52573,69285,109,94,124,FR,France\n198753,3,47257,38170,56344,85,69,101,FR,France\n198752,3,11935,2353,21517,21,4,38,FR,France\n198751,3,47744,34266,61222,86,62,110,FR,France\n198750,3,57767,50181,65353,104,90,118,FR,France\n198749,3,49380,42461,56299,89,77,101,FR,France\n198748,3,41871,35115,48627,75,63,87,FR,France\n198747,3,29688,23465,35911,53,42,64,FR,France\n198746,3,37216,30199,44233,67,54,80,FR,France\n198745,3,35456,29024,41888,64,52,76,FR,France\n198744,3,41024,33829,48219,74,61,87,FR,France\n198743,3,46356,38370,54342,83,69,97,FR,France\n198742,3,38021,30236,45806,68,54,82,FR,France\n198741,3,42021,32016,52026,76,58,94,FR,France\n198740,3,24641,15930,33352,44,28,60,FR,France\n198739,3,32328,23548,41108,58,42,74,FR,France\n198738,3,16782,11870,21694,30,21,39,FR,France\n198737,3,11208,6542,15874,20,12,28,FR,France\n198736,3,7906,4014,11798,14,7,21,FR,France\n198735,3,6149,2970,9328,11,5,17,FR,France\n198734,3,6631,2734,10528,12,5,19,FR,France\n198733,3,6404,1834,10974,12,4,20,FR,France\n198732,3,7215,2353,12077,13,4,22,FR,France\n198731,3,8233,3655,12811,15,7,23,FR,France\n198730,3,4642,1301,7983,8,2,14,FR,France\n198729,3,4389,913,7865,8,2,14,FR,France\n198728,3,2702,138,5266,5,0,10,FR,France\n198727,3,10171,5904,14438,18,10,26,FR,France\n198726,3,12341,7824,16858,22,14,30,FR,France\n198725,3,23413,15490,31336,42,28,56,FR,France\n198724,3,11289,7282,15296,20,13,27,FR,France\n198723,3,15857,10943,20771,29,20,38,FR,France\n198722,3,14887,9743,20031,27,18,36,FR,France\n198721,3,17619,12649,22589,32,23,41,FR,France\n198720,3,10344,6454,14234,19,12,26,FR,France\n198719,3,12539,7943,17135,23,15,31,FR,France\n198718,3,16095,10330,21860,29,19,39,FR,France\n198717,3,21256,14850,27662,38,26,50,FR,France\n198716,3,32416,25100,39732,58,45,71,FR,France\n198715,3,44292,36456,52128,80,66,94,FR,France\n198714,3,50642,41866,59418,91,75,107,FR,France\n198713,3,62246,52749,71743,112,95,129,FR,France\n198712,3,59625,50653,68597,107,91,123,FR,France\n198711,3,53561,45035,62087,96,81,111,FR,France\n198710,3,93067,80519,105615,167,144,190,FR,France\n198709,3,147006,133519,160493,264,240,288,FR,France\n198708,3,217779,202179,233379,391,363,419,FR,France\n198707,3,288180,270718,305642,518,487,549,FR,France\n198706,3,296702,279051,314353,533,501,565,FR,France\n198705,3,236046,219483,252609,424,394,454,FR,France\n198704,3,158333,143625,173041,285,259,311,FR,France\n198703,3,103841,91699,115983,187,165,209,FR,France\n198702,3,74213,64014,84412,133,115,151,FR,France\n198701,3,69745,59207,80283,125,106,144,FR,France\n198652,3,76263,64958,87568,138,118,158,FR,France\n198651,3,72920,63047,82793,132,114,150,FR,France\n198650,3,73413,64019,82807,133,116,150,FR,France\n198649,3,56296,48229,64363,102,87,117,FR,France\n198648,3,46031,38578,53484,83,70,96,FR,France\n198647,3,36740,29710,43770,66,53,79,FR,France\n198646,3,32134,25327,38941,58,46,70,FR,France\n198645,3,38964,31382,46546,70,56,84,FR,France\n198644,3,28646,22048,35244,52,40,64,FR,France\n198643,3,27532,20842,34222,50,38,62,FR,France\n198642,3,31815,25124,38506,57,45,69,FR,France\n198641,3,32864,25939,39789,59,47,71,FR,France\n198640,3,33516,26776,40256,60,48,72,FR,France\n198639,3,28665,22477,34853,52,41,63,FR,France\n198638,3,26615,20479,32751,48,37,59,FR,France\n198637,3,15998,10802,21194,29,20,38,FR,France\n198636,3,9182,4982,13382,17,9,25,FR,France\n198635,3,10587,4470,16704,19,8,30,FR,France\n198634,3,5762,858,10666,10,1,19,FR,France\n198633,3,3115,554,5676,6,1,11,FR,France\n198632,3,1027,0,2311,2,0,4,FR,France\n198631,3,2247,0,4574,4,0,8,FR,France\n198630,3,2346,141,4551,4,0,8,FR,France\n198629,3,3654,931,6377,7,2,12,FR,France\n198628,3,2327,0,5318,4,0,9,FR,France\n198627,3,7529,3353,11705,14,6,22,FR,France\n198626,3,8778,5106,12450,16,9,23,FR,France\n198625,3,11075,6804,15346,20,12,28,FR,France\n198624,3,11160,7252,15068,20,13,27,FR,France\n198623,3,14372,9896,18848,26,18,34,FR,France\n198622,3,9717,5594,13840,18,11,25,FR,France\n198621,3,14460,9575,19345,26,17,35,FR,France\n198620,3,17133,12106,22160,31,22,40,FR,France\n198619,3,22177,16008,28346,40,29,51,FR,France\n198618,3,31736,24115,39357,57,43,71,FR,France\n198617,3,34874,27440,42308,63,50,76,FR,France\n198616,3,41196,32894,49498,74,59,89,FR,France\n198615,3,42659,33537,51781,77,61,93,FR,France\n198614,3,49792,39728,59856,90,72,108,FR,France\n198613,3,87249,63562,110936,157,114,200,FR,France\n198612,3,124777,97237,152317,225,175,275,FR,France\n198611,3,168146,151035,185257,303,272,334,FR,France\n198610,3,257305,231225,283385,464,417,511,FR,France\n198609,3,321140,296644,345636,580,536,624,FR,France\n198608,3,448786,419219,478353,810,757,863,FR,France\n198607,3,490723,460150,521296,886,831,941,FR,France\n198606,3,439300,411764,466836,793,743,843,FR,France\n198605,3,364727,339868,389586,658,613,703,FR,France\n198604,3,348509,322464,374554,629,582,676,FR,France\n198603,3,271539,248654,294424,490,449,531,FR,France\n198602,3,178138,159344,196932,322,288,356,FR,France\n198601,3,112614,96539,128689,203,174,232,FR,France\n198552,3,86452,72250,100654,157,131,183,FR,France\n198551,3,114666,99538,129794,208,181,235,FR,France\n198550,3,86031,73604,98458,156,133,179,FR,France\n198549,3,65931,55326,76536,120,101,139,FR,France\n198548,3,68291,57581,79001,124,105,143,FR,France\n198547,3,66177,55221,77133,120,100,140,FR,France\n198546,3,70534,58788,82280,128,107,149,FR,France\n198545,3,57514,47167,67861,104,85,123,FR,France\n198544,3,67356,55744,78968,122,101,143,FR,France\n198543,3,87402,74208,100596,158,134,182,FR,France\n198542,3,76218,64604,87832,138,117,159,FR,France\n198541,3,45712,36755,54669,83,67,99,FR,France\n198540,3,49739,40335,59143,90,73,107,FR,France\n198539,3,39819,31234,48404,72,56,88,FR,France\n198538,3,27605,20614,34596,50,37,63,FR,France\n198537,3,22219,15626,28812,40,28,52,FR,France\n198536,3,27986,18992,36980,51,35,67,FR,France\n198535,3,30215,18546,41884,55,34,76,FR,France\n198534,3,40389,24786,55992,73,45,101,FR,France\n198533,3,22611,8819,36403,41,16,66,FR,France\n198532,3,7488,1851,13125,14,4,24,FR,France\n198531,3,16958,8479,25437,31,16,46,FR,France\n198530,3,11598,5507,17689,21,10,32,FR,France\n198529,3,13054,6474,19634,24,12,36,FR,France\n198528,3,14588,7659,21517,26,13,39,FR,France\n198527,3,19670,11761,27579,36,22,50,FR,France\n198526,3,18609,12637,24581,34,23,45,FR,France\n198525,3,19362,12454,26270,35,22,48,FR,France\n198524,3,19855,13577,26133,36,25,47,FR,France\n198523,3,19373,10010,28736,35,18,52,FR,France\n198522,3,24099,17190,31008,44,31,57,FR,France\n198521,3,26096,19621,32571,47,35,59,FR,France\n198520,3,27896,20885,34907,51,38,64,FR,France\n198519,3,43154,32821,53487,78,59,97,FR,France\n198518,3,40555,29935,51175,74,55,93,FR,France\n198517,3,34053,24366,43740,62,44,80,FR,France\n198516,3,50362,36451,64273,91,66,116,FR,France\n198515,3,63881,45538,82224,116,83,149,FR,France\n198514,3,134545,114400,154690,244,207,281,FR,France\n198513,3,197206,176080,218332,357,319,395,FR,France\n198512,3,245240,223304,267176,445,405,485,FR,France\n198511,3,276205,252399,300011,501,458,544,FR,France\n198510,3,353231,326279,380183,640,591,689,FR,France\n198509,3,369895,341109,398681,670,618,722,FR,France\n198508,3,389886,359529,420243,707,652,762,FR,France\n198507,3,471852,432599,511105,855,784,926,FR,France\n198506,3,565825,518011,613639,1026,939,1113,FR,France\n198505,3,637302,592795,681809,1155,1074,1236,FR,France\n198504,3,424937,390794,459080,770,708,832,FR,France\n198503,3,213901,174689,253113,388,317,459,FR,France\n198502,3,97586,80949,114223,177,147,207,FR,France\n198501,3,85489,65918,105060,155,120,190,FR,France\n198452,3,84830,60602,109058,154,110,198,FR,France\n198451,3,101726,80242,123210,185,146,224,FR,France\n198450,3,123680,101401,145959,225,184,266,FR,France\n198449,3,101073,81684,120462,184,149,219,FR,France\n198448,3,78620,60634,96606,143,110,176,FR,France\n198447,3,72029,54274,89784,131,99,163,FR,France\n198446,3,87330,67686,106974,159,123,195,FR,France\n198445,3,135223,101414,169032,246,184,308,FR,France\n198444,3,68422,20056,116788,125,37,213,FR,France\n' \ No newline at end of file diff --git a/module3/data_9.csv b/module3/data_9.csv new file mode 100644 index 0000000000000000000000000000000000000000..780a468dd8ca076b2c1f5e506c2e356301b7093d --- /dev/null +++ b/module3/data_9.csv @@ -0,0 +1,1963 @@ +# @source="réseau Sentinelles, INSERM, Sorbonne Université, http://www.sentiweb.fr", @meta={"period":[198444,202221],"geo":["PAY","1"],"geo_ref":"insee","indicator":"3","type":"all","conf_int":true,"compact":false}, @date=2022-06-04T12:28:03+02:00 +week,indicator,inc,inc_low,inc_up,inc100,inc100_low,inc100_up,geo_insee,geo_name +202221,3,17538,12255,22821,26,18,34,FR,France +202220,3,20413,16271,24555,31,25,37,FR,France +202219,3,17874,14068,21680,27,21,33,FR,France +202218,3,30353,25089,35617,46,38,54,FR,France +202217,3,36006,30373,41639,54,46,62,FR,France +202216,3,49949,42836,57062,75,64,86,FR,France +202215,3,100806,90824,110788,152,137,167,FR,France +202214,3,155441,143891,166991,234,217,251,FR,France +202213,3,191914,179558,204270,289,270,308,FR,France +202212,3,166224,155035,177413,251,234,268,FR,France +202211,3,122849,113306,132392,185,171,199,FR,France +202210,3,87904,79741,96067,133,121,145,FR,France +202209,3,50182,43958,56406,76,67,85,FR,France +202208,3,30963,25942,35984,47,39,55,FR,France +202207,3,34882,29446,40318,53,45,61,FR,France +202206,3,46623,40398,52848,70,61,79,FR,France +202205,3,62970,56043,69897,95,85,105,FR,France +202204,3,72209,64804,79614,109,98,120,FR,France +202203,3,74613,67144,82082,113,102,124,FR,France +202202,3,55920,49511,62329,84,74,94,FR,France +202201,3,57629,50699,64559,87,77,97,FR,France +202152,3,54349,47029,61669,82,71,93,FR,France +202151,3,41698,35359,48037,63,53,73,FR,France +202150,3,38117,32497,43737,58,49,67,FR,France +202149,3,40168,34716,45620,61,53,69,FR,France +202148,3,41842,36364,47320,63,55,71,FR,France +202147,3,36598,31338,41858,55,47,63,FR,France +202146,3,30059,25302,34816,46,39,53,FR,France +202145,3,20364,16564,24164,31,25,37,FR,France +202144,3,18999,15042,22956,29,23,35,FR,France +202143,3,27040,21935,32145,41,33,49,FR,France +202142,3,28343,23382,33304,43,35,51,FR,France +202141,3,25043,20586,29500,38,31,45,FR,France +202140,3,26286,21842,30730,40,33,47,FR,France +202139,3,22155,18014,26296,34,28,40,FR,France +202138,3,15614,12310,18918,24,19,29,FR,France +202137,3,13673,10404,16942,21,16,26,FR,France +202136,3,10289,7505,13073,16,12,20,FR,France +202135,3,12609,9282,15936,19,14,24,FR,France +202134,3,13081,9540,16622,20,15,25,FR,France +202133,3,10392,7042,13742,16,11,21,FR,France +202132,3,15586,11009,20163,24,17,31,FR,France +202131,3,18855,13664,24046,29,21,37,FR,France +202130,3,13991,9695,18287,21,14,28,FR,France +202129,3,13626,9618,17634,21,15,27,FR,France +202128,3,8636,5430,11842,13,8,18,FR,France +202127,3,10693,6838,14548,16,10,22,FR,France +202126,3,7086,4109,10063,11,6,16,FR,France +202125,3,7942,5540,10344,12,8,16,FR,France +202124,3,4855,3011,6699,7,4,10,FR,France +202123,3,6710,4455,8965,10,7,13,FR,France +202122,3,7879,5495,10263,12,8,16,FR,France +202121,3,7827,5403,10251,12,8,16,FR,France +202120,3,10278,7540,13016,16,12,20,FR,France +202119,3,9539,6860,12218,14,10,18,FR,France +202118,3,12135,9165,15105,18,14,22,FR,France +202117,3,12058,8891,15225,18,13,23,FR,France +202116,3,16505,12735,20275,25,19,31,FR,France +202115,3,19306,15398,23214,29,23,35,FR,France +202114,3,21073,17099,25047,32,26,38,FR,France +202113,3,26413,22094,30732,40,33,47,FR,France +202112,3,30658,25919,35397,46,39,53,FR,France +202111,3,24988,20718,29258,38,32,44,FR,France +202110,3,19539,15951,23127,30,25,35,FR,France +202109,3,17572,13926,21218,27,21,33,FR,France +202108,3,20882,16907,24857,32,26,38,FR,France +202107,3,22393,18303,26483,34,28,40,FR,France +202106,3,23183,19134,27232,35,29,41,FR,France +202105,3,22426,18445,26407,34,28,40,FR,France +202104,3,25804,21491,30117,39,32,46,FR,France +202103,3,21810,17894,25726,33,27,39,FR,France +202102,3,17320,13906,20734,26,21,31,FR,France +202101,3,21799,17778,25820,33,27,39,FR,France +202053,3,21220,16498,25942,32,25,39,FR,France +202052,3,16428,12285,20571,25,19,31,FR,France +202051,3,21619,17370,25868,33,27,39,FR,France +202050,3,16845,13220,20470,26,20,32,FR,France +202049,3,12939,9923,15955,20,15,25,FR,France +202048,3,13804,10641,16967,21,16,26,FR,France +202047,3,19085,15285,22885,29,23,35,FR,France +202046,3,24801,20503,29099,38,31,45,FR,France +202045,3,42516,36857,48175,65,56,74,FR,France +202044,3,44567,38521,50613,68,59,77,FR,France +202043,3,43799,37581,50017,67,58,76,FR,France +202042,3,35183,29847,40519,53,45,61,FR,France +202041,3,27926,23251,32601,42,35,49,FR,France +202040,3,20443,16381,24505,31,25,37,FR,France +202039,3,19810,15900,23720,30,24,36,FR,France +202038,3,25559,21141,29977,39,32,46,FR,France +202037,3,18485,14649,22321,28,22,34,FR,France +202036,3,10390,7646,13134,16,12,20,FR,France +202035,3,9918,6842,12994,15,10,20,FR,France +202034,3,6084,3090,9078,9,4,14,FR,France +202033,3,6106,3411,8801,9,5,13,FR,France +202032,3,5918,3330,8506,9,5,13,FR,France +202031,3,4351,2269,6433,7,4,10,FR,France +202030,3,8179,5442,10916,12,8,16,FR,France +202029,3,8687,5860,11514,13,9,17,FR,France +202028,3,8325,5688,10962,13,9,17,FR,France +202027,3,4066,2406,5726,6,3,9,FR,France +202026,3,4039,2389,5689,6,3,9,FR,France +202025,3,2853,1488,4218,4,2,6,FR,France +202024,3,3058,1690,4426,5,3,7,FR,France +202023,3,4168,2468,5868,6,3,9,FR,France +202022,3,3580,1947,5213,5,3,7,FR,France +202021,3,6114,4026,8202,9,6,12,FR,France +202020,3,9315,6775,11855,14,10,18,FR,France +202019,3,11679,8722,14636,18,14,22,FR,France +202018,3,16398,12851,19945,25,20,30,FR,France +202017,3,18082,14454,21710,27,21,33,FR,France +202016,3,24165,19893,28437,37,31,43,FR,France +202015,3,41049,35377,46721,62,53,71,FR,France +202014,3,71666,64531,78801,109,98,120,FR,France +202013,3,107742,99187,116297,164,151,177,FR,France +202012,3,107283,98610,115956,163,150,176,FR,France +202011,3,112943,104468,121418,172,159,185,FR,France +202010,3,105145,96812,113478,160,147,173,FR,France +202009,3,110696,102066,119326,168,155,181,FR,France +202008,3,143753,133984,153522,218,203,233,FR,France +202007,3,183610,172812,194408,279,263,295,FR,France +202006,3,206669,195481,217857,314,297,331,FR,France +202005,3,187957,177445,198469,285,269,301,FR,France +202004,3,122331,113492,131170,186,173,199,FR,France +202003,3,78413,71330,85496,119,108,130,FR,France +202002,3,53614,47654,59574,81,72,90,FR,France +202001,3,36850,31608,42092,56,48,64,FR,France +201952,3,28135,23220,33050,43,36,50,FR,France +201951,3,29786,25042,34530,45,38,52,FR,France +201950,3,34223,29156,39290,52,44,60,FR,France +201949,3,25662,21414,29910,39,33,45,FR,France +201948,3,22367,18055,26679,34,27,41,FR,France +201947,3,18669,14759,22579,28,22,34,FR,France +201946,3,16030,12567,19493,24,19,29,FR,France +201945,3,10138,7160,13116,15,10,20,FR,France +201944,3,7822,5010,10634,12,8,16,FR,France +201943,3,9487,6448,12526,14,9,19,FR,France +201942,3,7747,5243,10251,12,8,16,FR,France +201941,3,7122,4720,9524,11,7,15,FR,France +201940,3,8505,5784,11226,13,9,17,FR,France +201939,3,7091,4462,9720,11,7,15,FR,France +201938,3,4897,2891,6903,7,4,10,FR,France +201937,3,3172,1367,4977,5,2,8,FR,France +201936,3,2295,728,3862,3,1,5,FR,France +201935,3,1010,2,2018,2,0,4,FR,France +201934,3,1672,279,3065,3,1,5,FR,France +201933,3,1593,68,3118,2,0,4,FR,France +201932,3,1592,71,3113,2,0,4,FR,France +201931,3,2337,695,3979,4,2,6,FR,France +201930,3,1944,415,3473,3,1,5,FR,France +201929,3,2096,420,3772,3,0,6,FR,France +201928,3,1195,125,2265,2,0,4,FR,France +201927,3,2466,848,4084,4,2,6,FR,France +201926,3,1798,402,3194,3,1,5,FR,France +201925,3,1544,389,2699,2,0,4,FR,France +201924,3,876,17,1735,1,0,2,FR,France +201923,3,2004,748,3260,3,1,5,FR,France +201922,3,2181,602,3760,3,1,5,FR,France +201921,3,2585,1102,4068,4,2,6,FR,France +201920,3,2891,1202,4580,4,1,7,FR,France +201919,3,3221,1509,4933,5,2,8,FR,France +201918,3,1385,278,2492,2,0,4,FR,France +201917,3,3166,1348,4984,5,2,8,FR,France +201916,3,3842,1973,5711,6,3,9,FR,France +201915,3,5932,3669,8195,9,6,12,FR,France +201914,3,12675,9167,16183,19,14,24,FR,France +201913,3,16513,12530,20496,25,19,31,FR,France +201912,3,22184,17786,26582,34,27,41,FR,France +201911,3,31553,26556,36550,48,40,56,FR,France +201910,3,49742,43268,56216,76,66,86,FR,France +201909,3,88354,79564,97144,134,121,147,FR,France +201908,3,172604,160024,185184,262,243,281,FR,France +201907,3,307338,291220,323456,467,443,491,FR,France +201906,3,394286,376782,411790,599,572,626,FR,France +201905,3,355785,339295,372275,540,515,565,FR,France +201904,3,241090,227261,254919,366,345,387,FR,France +201903,3,147063,135890,158236,223,206,240,FR,France +201902,3,75548,67632,83464,115,103,127,FR,France +201901,3,50295,43525,57065,76,66,86,FR,France +201852,3,37903,31375,44431,58,48,68,FR,France +201851,3,39259,32977,45541,60,50,70,FR,France +201850,3,27781,22638,32924,42,34,50,FR,France +201849,3,19738,15481,23995,30,24,36,FR,France +201848,3,19501,15275,23727,30,24,36,FR,France +201847,3,15949,12105,19793,24,18,30,FR,France +201846,3,11278,7957,14599,17,12,22,FR,France +201845,3,11065,7791,14339,17,12,22,FR,France +201844,3,6586,3875,9297,10,6,14,FR,France +201843,3,6550,3988,9112,10,6,14,FR,France +201842,3,7787,5129,10445,12,8,16,FR,France +201841,3,8048,5098,10998,12,8,16,FR,France +201840,3,7409,4717,10101,11,7,15,FR,France +201839,3,7174,4235,10113,11,7,15,FR,France +201838,3,7349,4399,10299,11,7,15,FR,France +201837,3,4915,2386,7444,7,3,11,FR,France +201836,3,3215,1349,5081,5,2,8,FR,France +201835,3,1506,239,2773,2,0,4,FR,France +201834,3,1368,116,2620,2,0,4,FR,France +201833,3,1962,5,3919,3,0,6,FR,France +201832,3,1839,183,3495,3,0,6,FR,France +201831,3,2048,242,3854,3,0,6,FR,France +201830,3,1951,202,3700,3,0,6,FR,France +201829,3,1951,252,3650,3,0,6,FR,France +201828,3,1654,52,3256,3,1,5,FR,France +201827,3,3266,1145,5387,5,2,8,FR,France +201826,3,3758,1493,6023,6,3,9,FR,France +201825,3,4580,2220,6940,7,3,11,FR,France +201824,3,3223,1351,5095,5,2,8,FR,France +201823,3,1207,136,2278,2,0,4,FR,France +201822,3,3202,1330,5074,5,2,8,FR,France +201821,3,2537,763,4311,4,1,7,FR,France +201820,3,2694,967,4421,4,1,7,FR,France +201819,3,1025,0,2098,2,0,4,FR,France +201818,3,3541,1416,5666,5,2,8,FR,France +201817,3,2573,1003,4143,4,2,6,FR,France +201816,3,4818,2724,6912,7,4,10,FR,France +201815,3,16311,12168,20454,25,19,31,FR,France +201814,3,22666,18092,27240,35,28,42,FR,France +201813,3,32680,25536,39824,50,39,61,FR,France +201812,3,52040,44590,59490,79,68,90,FR,France +201811,3,65159,56506,73812,99,86,112,FR,France +201810,3,93512,83989,103035,142,128,156,FR,France +201809,3,108545,98645,118445,165,150,180,FR,France +201808,3,131870,120950,142790,201,184,218,FR,France +201807,3,141138,130177,152099,215,198,232,FR,France +201806,3,138810,128164,149456,211,195,227,FR,France +201805,3,157839,146646,169032,240,223,257,FR,France +201804,3,175483,163835,187131,267,249,285,FR,France +201803,3,178329,166640,190018,271,253,289,FR,France +201802,3,198079,185663,210495,302,283,321,FR,France +201801,3,235493,220941,250045,358,336,380,FR,France +201752,3,299114,279359,318869,459,429,489,FR,France +201751,3,229448,214366,244530,352,329,375,FR,France +201750,3,129535,118787,140283,199,183,215,FR,France +201749,3,63789,56120,71458,98,86,110,FR,France +201748,3,37568,31541,43595,58,49,67,FR,France +201747,3,24972,19923,30021,38,30,46,FR,France +201746,3,13398,9948,16848,21,16,26,FR,France +201745,3,14035,8091,19979,22,13,31,FR,France +201744,3,8544,5318,11770,13,8,18,FR,France +201743,3,7300,4402,10198,11,7,15,FR,France +201742,3,9966,6503,13429,15,10,20,FR,France +201741,3,12434,8718,16150,19,13,25,FR,France +201740,3,12725,8690,16760,20,14,26,FR,France +201739,3,14949,10534,19364,23,16,30,FR,France +201738,3,11463,7438,15488,18,12,24,FR,France +201737,3,9716,6364,13068,15,10,20,FR,France +201736,3,2815,917,4713,4,1,7,FR,France +201735,3,2794,850,4738,4,1,7,FR,France +201734,3,2497,879,4115,4,2,6,FR,France +201733,3,2406,766,4046,4,1,7,FR,France +201732,3,2667,879,4455,4,1,7,FR,France +201731,3,3256,1158,5354,5,2,8,FR,France +201730,3,3759,1299,6219,6,2,10,FR,France +201729,3,5014,1989,8039,8,3,13,FR,France +201728,3,5271,2576,7966,8,4,12,FR,France +201727,3,3924,1432,6416,6,2,10,FR,France +201726,3,3171,1166,5176,5,2,8,FR,France +201725,3,837,0,1721,1,0,2,FR,France +201724,3,1566,248,2884,2,0,4,FR,France +201723,3,1664,203,3125,3,1,5,FR,France +201722,3,1305,92,2518,2,0,4,FR,France +201721,3,971,0,2046,1,0,3,FR,France +201720,3,2686,793,4579,4,1,7,FR,France +201719,3,3461,1490,5432,5,2,8,FR,France +201718,3,2102,515,3689,3,1,5,FR,France +201717,3,2071,428,3714,3,0,6,FR,France +201716,3,1380,222,2538,2,0,4,FR,France +201715,3,479,0,1242,1,0,2,FR,France +201714,3,1110,0,2549,2,0,4,FR,France +201713,3,7594,3808,11380,12,6,18,FR,France +201712,3,8780,4834,12726,13,7,19,FR,France +201711,3,7814,4329,11299,12,7,17,FR,France +201710,3,11802,7964,15640,18,12,24,FR,France +201709,3,13111,9099,17123,20,14,26,FR,France +201708,3,29545,23136,35954,45,35,55,FR,France +201707,3,59590,49764,69416,91,76,106,FR,France +201706,3,93628,82560,104696,144,127,161,FR,France +201705,3,193677,179255,208099,297,275,319,FR,France +201704,3,256428,240618,272238,394,370,418,FR,France +201703,3,267276,251345,283207,410,386,434,FR,France +201702,3,260588,245070,276106,400,376,424,FR,France +201701,3,255535,239743,271327,392,368,416,FR,France +201652,3,224489,207799,241179,345,319,371,FR,France +201651,3,187704,172655,202753,288,265,311,FR,France +201650,3,126570,115081,138059,194,176,212,FR,France +201649,3,76390,67374,85406,117,103,131,FR,France +201648,3,40502,33949,47055,62,52,72,FR,France +201647,3,22270,17612,26928,34,27,41,FR,France +201646,3,20816,16125,25507,32,25,39,FR,France +201645,3,15957,11448,20466,24,17,31,FR,France +201644,3,15145,10357,19933,23,16,30,FR,France +201643,3,9378,5830,12926,14,9,19,FR,France +201642,3,12920,9044,16796,20,14,26,FR,France +201641,3,13909,9709,18109,21,15,27,FR,France +201640,3,13379,8969,17789,21,14,28,FR,France +201639,3,10598,6814,14382,16,10,22,FR,France +201638,3,5969,3073,8865,9,5,13,FR,France +201637,3,4065,1538,6592,6,2,10,FR,France +201636,3,2372,473,4271,4,1,7,FR,France +201635,3,3420,1350,5490,5,2,8,FR,France +201634,3,2233,0,4643,3,0,7,FR,France +201633,3,1567,0,3938,2,0,6,FR,France +201632,3,2100,93,4107,3,0,6,FR,France +201631,3,3691,0,9120,6,0,14,FR,France +201630,3,3209,644,5774,5,1,9,FR,France +201629,3,1469,0,3073,2,0,4,FR,France +201628,3,2725,357,5093,4,0,8,FR,France +201627,3,5905,2343,9467,9,4,14,FR,France +201626,3,4186,1636,6736,6,2,10,FR,France +201625,3,4611,1560,7662,7,2,12,FR,France +201624,3,4977,2404,7550,8,4,12,FR,France +201623,3,4893,2416,7370,8,4,12,FR,France +201622,3,5667,3015,8319,9,5,13,FR,France +201621,3,5603,2475,8731,9,4,14,FR,France +201620,3,3908,1679,6137,6,3,9,FR,France +201619,3,4738,2308,7168,7,3,11,FR,France +201618,3,8204,4394,12014,13,7,19,FR,France +201617,3,13385,8822,17948,21,14,28,FR,France +201616,3,25670,19632,31708,39,30,48,FR,France +201615,3,48441,39824,57058,74,61,87,FR,France +201614,3,92603,81261,103945,142,125,159,FR,France +201613,3,170654,156387,184921,262,240,284,FR,France +201612,3,272174,254338,290010,418,391,445,FR,France +201611,3,304543,286453,322633,467,439,495,FR,France +201610,3,261822,245799,277845,402,377,427,FR,France +201609,3,229943,214533,245353,353,329,377,FR,France +201608,3,195067,180874,209260,299,277,321,FR,France +201607,3,207359,193223,221495,318,296,340,FR,France +201606,3,196143,182672,209614,301,280,322,FR,France +201605,3,178963,166296,191630,275,256,294,FR,France +201604,3,148473,136591,160355,228,210,246,FR,France +201603,3,75277,66630,83924,116,103,129,FR,France +201602,3,44617,37821,51413,68,58,78,FR,France +201601,3,42263,35556,48970,65,55,75,FR,France +201553,3,24835,19106,30564,38,29,47,FR,France +201552,3,19495,14319,24671,30,22,38,FR,France +201551,3,29080,23014,35146,45,36,54,FR,France +201550,3,25043,19812,30274,39,31,47,FR,France +201549,3,21479,16686,26272,33,26,40,FR,France +201548,3,16428,12273,20583,25,19,31,FR,France +201547,3,14959,10856,19062,23,17,29,FR,France +201546,3,12599,8237,16961,20,13,27,FR,France +201545,3,13577,9192,17962,21,14,28,FR,France +201544,3,14596,10025,19167,23,16,30,FR,France +201543,3,16749,11745,21753,26,18,34,FR,France +201542,3,18675,13613,23737,29,21,37,FR,France +201541,3,13585,9830,17340,21,15,27,FR,France +201540,3,13100,9349,16851,20,14,26,FR,France +201539,3,8595,5671,11519,13,8,18,FR,France +201538,3,8402,4929,11875,13,8,18,FR,France +201537,3,8817,4089,13545,14,7,21,FR,France +201536,3,1922,440,3404,3,1,5,FR,France +201535,3,229,0,644,0,0,1,FR,France +201534,3,760,0,1618,1,0,2,FR,France +201533,3,1537,208,2866,2,0,4,FR,France +201532,3,1594,66,3122,2,0,4,FR,France +201531,3,2845,475,5215,4,0,8,FR,France +201530,3,2447,353,4541,4,1,7,FR,France +201529,3,2389,332,4446,4,1,7,FR,France +201528,3,2089,105,4073,3,0,6,FR,France +201527,3,2257,393,4121,3,0,6,FR,France +201526,3,2536,774,4298,4,1,7,FR,France +201525,3,2607,680,4534,4,1,7,FR,France +201524,3,2849,1000,4698,4,1,7,FR,France +201523,3,2702,857,4547,4,1,7,FR,France +201522,3,4262,1989,6535,7,3,11,FR,France +201521,3,5547,2875,8219,9,5,13,FR,France +201520,3,4594,2040,7148,7,3,11,FR,France +201519,3,6307,3256,9358,10,5,15,FR,France +201518,3,3664,1544,5784,6,3,9,FR,France +201517,3,6382,3523,9241,10,6,14,FR,France +201516,3,12098,7913,16283,19,13,25,FR,France +201515,3,19458,14192,24724,30,22,38,FR,France +201514,3,30940,24617,37263,48,38,58,FR,France +201513,3,49563,41986,57140,77,65,89,FR,France +201512,3,70024,61079,78969,109,95,123,FR,France +201511,3,99295,88838,109752,154,138,170,FR,France +201510,3,143931,131682,156180,223,204,242,FR,France +201509,3,238947,222902,254992,370,345,395,FR,France +201508,3,409972,388670,431274,635,602,668,FR,France +201507,3,517750,494301,541199,802,766,838,FR,France +201506,3,533317,510627,556007,827,792,862,FR,France +201505,3,457911,436964,478858,710,678,742,FR,France +201504,3,292161,275491,308831,453,427,479,FR,France +201503,3,153931,141290,166572,239,219,259,FR,France +201502,3,104096,93358,114834,161,144,178,FR,France +201501,3,70962,60505,81419,110,94,126,FR,France +201452,3,63168,52705,73631,98,82,114,FR,France +201451,3,45346,38002,52690,71,60,82,FR,France +201450,3,42182,35049,49315,66,55,77,FR,France +201449,3,33537,27281,39793,52,42,62,FR,France +201448,3,28156,21896,34416,44,34,54,FR,France +201447,3,18158,13186,23130,28,20,36,FR,France +201446,3,14764,10174,19354,23,16,30,FR,France +201445,3,16172,11449,20895,25,18,32,FR,France +201444,3,15500,10464,20536,24,16,32,FR,France +201443,3,16011,10653,21369,25,17,33,FR,France +201442,3,21651,15828,27474,34,25,43,FR,France +201441,3,22486,16295,28677,35,25,45,FR,France +201440,3,16526,11583,21469,26,18,34,FR,France +201439,3,8583,5054,12112,13,8,18,FR,France +201438,3,10567,6496,14638,16,10,22,FR,France +201437,3,7714,3780,11648,12,6,18,FR,France +201436,3,5018,1949,8087,8,3,13,FR,France +201435,3,2268,355,4181,4,1,7,FR,France +201434,3,2367,250,4484,4,1,7,FR,France +201433,3,2358,0,4875,4,0,8,FR,France +201432,3,3229,447,6011,5,1,9,FR,France +201431,3,4143,349,7937,6,0,12,FR,France +201430,3,4631,902,8360,7,1,13,FR,France +201429,3,5122,1258,8986,8,2,14,FR,France +201428,3,4145,1200,7090,6,1,11,FR,France +201427,3,4823,1997,7649,8,4,12,FR,France +201426,3,3858,1235,6481,6,2,10,FR,France +201425,3,4564,1276,7852,7,2,12,FR,France +201424,3,2007,249,3765,3,0,6,FR,France +201423,3,5164,1853,8475,8,3,13,FR,France +201422,3,6907,1856,11958,11,3,19,FR,France +201421,3,4523,1039,8007,7,2,12,FR,France +201420,3,5881,2432,9330,9,4,14,FR,France +201419,3,3588,1277,5899,6,2,10,FR,France +201418,3,4708,1654,7762,7,2,12,FR,France +201417,3,2989,625,5353,5,1,9,FR,France +201416,3,7057,3381,10733,11,5,17,FR,France +201415,3,10800,6762,14838,17,11,23,FR,France +201414,3,19217,13490,24944,30,21,39,FR,France +201413,3,21577,15435,27719,34,24,44,FR,France +201412,3,23524,17260,29788,37,27,47,FR,France +201411,3,44513,35939,53087,69,56,82,FR,France +201410,3,86105,73497,98713,134,114,154,FR,France +201409,3,147035,131889,162181,229,205,253,FR,France +201408,3,188419,171950,204888,293,267,319,FR,France +201407,3,208726,191283,226169,325,298,352,FR,France +201406,3,160403,145280,175526,250,226,274,FR,France +201405,3,120261,107176,133346,187,167,207,FR,France +201404,3,85280,74414,96146,133,116,150,FR,France +201403,3,64159,54089,74229,100,84,116,FR,France +201402,3,46850,38202,55498,73,60,86,FR,France +201401,3,35624,27451,43797,55,42,68,FR,France +201352,3,30142,22721,37563,47,35,59,FR,France +201351,3,29787,23215,36359,47,37,57,FR,France +201350,3,24055,18214,29896,38,29,47,FR,France +201349,3,18071,13058,23084,28,20,36,FR,France +201348,3,17606,12195,23017,28,20,36,FR,France +201347,3,22636,16343,28929,35,25,45,FR,France +201346,3,13340,8367,18313,21,13,29,FR,France +201345,3,10596,6057,15135,17,10,24,FR,France +201344,3,10193,5622,14764,16,9,23,FR,France +201343,3,15780,9497,22063,25,15,35,FR,France +201342,3,14830,9545,20115,23,15,31,FR,France +201341,3,12391,7265,17517,19,11,27,FR,France +201340,3,9794,5140,14448,15,8,22,FR,France +201339,3,5371,1704,9038,8,2,14,FR,France +201338,3,9324,4198,14450,15,7,23,FR,France +201337,3,5027,1752,8302,8,3,13,FR,France +201336,3,4639,1425,7853,7,2,12,FR,France +201335,3,1291,0,3112,2,0,5,FR,France +201334,3,1889,0,4912,3,0,8,FR,France +201333,3,4740,348,9132,7,0,14,FR,France +201332,3,4709,549,8869,7,0,14,FR,France +201331,3,2270,0,5811,4,0,10,FR,France +201330,3,2169,0,4630,3,0,7,FR,France +201329,3,1696,0,3558,3,0,6,FR,France +201328,3,983,0,2168,2,0,4,FR,France +201327,3,4278,1327,7229,7,2,12,FR,France +201326,3,3488,839,6137,5,1,9,FR,France +201325,3,2735,0,5826,4,0,9,FR,France +201324,3,7245,2997,11493,11,4,18,FR,France +201323,3,16094,8918,23270,25,14,36,FR,France +201322,3,7245,2923,11567,11,4,18,FR,France +201321,3,5974,2401,9547,9,3,15,FR,France +201320,3,3831,1245,6417,6,2,10,FR,France +201319,3,1166,0,2680,2,0,4,FR,France +201318,3,3415,757,6073,5,1,9,FR,France +201317,3,7941,2950,12932,12,4,20,FR,France +201316,3,9520,4758,14282,15,8,22,FR,France +201315,3,19357,13311,25403,30,21,39,FR,France +201314,3,36855,27737,45973,58,44,72,FR,France +201313,3,43236,34048,52424,68,54,82,FR,France +201312,3,60822,50414,71230,95,79,111,FR,France +201311,3,84308,72456,96160,132,113,151,FR,France +201310,3,165558,148471,182645,259,232,286,FR,France +201309,3,259984,239067,280901,407,374,440,FR,France +201308,3,351626,327537,375715,550,512,588,FR,France +201307,3,470076,443682,496470,736,695,777,FR,France +201306,3,471647,445112,498182,738,696,780,FR,France +201305,3,492026,464729,519323,770,727,813,FR,France +201304,3,391525,367182,415868,613,575,651,FR,France +201303,3,224661,207134,242188,352,325,379,FR,France +201302,3,184159,168343,199975,288,263,313,FR,France +201301,3,163491,147340,179642,256,231,281,FR,France +201252,3,159290,141978,176602,251,224,278,FR,France +201251,3,113901,99835,127967,179,157,201,FR,France +201250,3,79918,68086,91750,126,107,145,FR,France +201249,3,47537,38711,56363,75,61,89,FR,France +201248,3,43006,32863,53149,68,52,84,FR,France +201247,3,39223,29140,49306,62,46,78,FR,France +201246,3,26436,18286,34586,42,29,55,FR,France +201245,3,18893,12799,24987,30,20,40,FR,France +201244,3,13106,8784,17428,21,14,28,FR,France +201243,3,17791,11284,24298,28,18,38,FR,France +201242,3,13096,8369,17823,21,14,28,FR,France +201241,3,18675,12010,25340,29,19,39,FR,France +201240,3,17873,11545,24201,28,18,38,FR,France +201239,3,20257,14180,26334,32,22,42,FR,France +201238,3,14715,9178,20252,23,14,32,FR,France +201237,3,7775,3509,12041,12,5,19,FR,France +201236,3,6384,2420,10348,10,4,16,FR,France +201235,3,8277,2206,14348,13,3,23,FR,France +201234,3,3858,0,8641,6,0,14,FR,France +201233,3,6492,840,12144,10,1,19,FR,France +201232,3,6381,0,14034,10,0,22,FR,France +201231,3,2696,0,5763,4,0,9,FR,France +201230,3,1834,0,4194,3,0,7,FR,France +201229,3,6329,1424,11234,10,2,18,FR,France +201228,3,4628,1091,8165,7,1,13,FR,France +201227,3,4162,1487,6837,7,3,11,FR,France +201226,3,4819,1097,8541,8,2,14,FR,France +201225,3,2669,530,4808,4,1,7,FR,France +201224,3,5977,2335,9619,9,3,15,FR,France +201223,3,2361,576,4146,4,1,7,FR,France +201222,3,5772,2435,9109,9,4,14,FR,France +201221,3,3722,821,6623,6,1,11,FR,France +201220,3,2731,897,4565,4,1,7,FR,France +201219,3,3267,1317,5217,5,2,8,FR,France +201218,3,2328,569,4087,4,1,7,FR,France +201217,3,6982,2701,11263,11,4,18,FR,France +201216,3,11455,6874,16036,18,11,25,FR,France +201215,3,20437,13435,27439,32,21,43,FR,France +201214,3,36740,27799,45681,58,44,72,FR,France +201213,3,62917,50171,75663,99,79,119,FR,France +201212,3,84738,71566,97910,133,112,154,FR,France +201211,3,128945,113778,144112,203,179,227,FR,France +201210,3,174704,157337,192071,275,248,302,FR,France +201209,3,225648,206810,244486,355,325,385,FR,France +201208,3,287293,264901,309685,452,417,487,FR,France +201207,3,263557,242711,284403,415,382,448,FR,France +201206,3,175123,158942,191304,276,251,301,FR,France +201205,3,106110,92524,119696,167,146,188,FR,France +201204,3,67778,56784,78772,107,90,124,FR,France +201203,3,49440,40981,57899,78,65,91,FR,France +201202,3,40507,32652,48362,64,52,76,FR,France +201201,3,45104,35640,54568,71,56,86,FR,France +201152,3,36532,28367,44697,58,45,71,FR,France +201151,3,25835,19002,32668,41,30,52,FR,France +201150,3,24155,18145,30165,38,28,48,FR,France +201149,3,27209,20376,34042,43,32,54,FR,France +201148,3,32358,24451,40265,51,38,64,FR,France +201147,3,17627,11780,23474,28,19,37,FR,France +201146,3,22368,15730,29006,35,24,46,FR,France +201145,3,18104,11995,24213,29,19,39,FR,France +201144,3,14050,8471,19629,22,13,31,FR,France +201143,3,21522,14251,28793,34,22,46,FR,France +201142,3,16932,11363,22501,27,18,36,FR,France +201141,3,7486,4024,10948,12,7,17,FR,France +201140,3,14053,8659,19447,22,13,31,FR,France +201139,3,17021,11062,22980,27,18,36,FR,France +201138,3,14007,8465,19549,22,13,31,FR,France +201137,3,8365,4174,12556,13,6,20,FR,France +201136,3,4606,1714,7498,7,2,12,FR,France +201135,3,4178,1634,6722,7,3,11,FR,France +201134,3,3312,683,5941,5,1,9,FR,France +201133,3,2421,0,5277,4,0,9,FR,France +201132,3,2590,119,5061,4,0,8,FR,France +201131,3,2409,320,4498,4,1,7,FR,France +201130,3,3972,1395,6549,6,2,10,FR,France +201129,3,2265,717,3813,4,2,6,FR,France +201128,3,1977,255,3699,3,0,6,FR,France +201127,3,3524,551,6497,6,1,11,FR,France +201126,3,1155,0,2685,2,0,4,FR,France +201125,3,3791,1006,6576,6,2,10,FR,France +201124,3,3507,1149,5865,6,2,10,FR,France +201123,3,3406,1170,5642,5,1,9,FR,France +201122,3,3122,1125,5119,5,2,8,FR,France +201121,3,2694,769,4619,4,1,7,FR,France +201120,3,3951,1443,6459,6,2,10,FR,France +201119,3,5416,1995,8837,9,4,14,FR,France +201118,3,5306,1815,8797,8,2,14,FR,France +201117,3,2659,310,5008,4,0,8,FR,France +201116,3,5061,1988,8134,8,3,13,FR,France +201115,3,6557,3038,10076,10,4,16,FR,France +201114,3,7352,3784,10920,12,6,18,FR,France +201113,3,8749,5213,12285,14,8,20,FR,France +201112,3,12491,7845,17137,20,13,27,FR,France +201111,3,14619,10009,19229,23,16,30,FR,France +201110,3,33628,26073,41183,53,41,65,FR,France +201109,3,54522,46057,62987,86,73,99,FR,France +201108,3,78392,67885,88899,124,107,141,FR,France +201107,3,149219,134798,163640,236,213,259,FR,France +201106,3,216579,200236,232922,343,317,369,FR,France +201105,3,278192,260235,296149,440,412,468,FR,France +201104,3,278218,259626,296810,440,411,469,FR,France +201103,3,275882,257313,294451,437,408,466,FR,France +201102,3,308949,288320,329578,489,456,522,FR,France +201101,3,309933,288190,331676,490,456,524,FR,France +201052,3,228105,208046,248164,363,331,395,FR,France +201051,3,158957,142576,175338,253,227,279,FR,France +201050,3,104874,91639,118109,167,146,188,FR,France +201049,3,54971,46418,63524,88,74,102,FR,France +201048,3,36982,29304,44660,59,47,71,FR,France +201047,3,26598,20123,33073,42,32,52,FR,France +201046,3,15465,10915,20015,25,18,32,FR,France +201045,3,9040,5772,12308,14,9,19,FR,France +201044,3,15833,10255,21411,25,16,34,FR,France +201043,3,16002,11001,21003,25,17,33,FR,France +201042,3,18709,13376,24042,30,22,38,FR,France +201041,3,17352,12182,22522,28,20,36,FR,France +201040,3,18331,12824,23838,29,20,38,FR,France +201039,3,11978,7913,16043,19,13,25,FR,France +201038,3,8936,4906,12966,14,8,20,FR,France +201037,3,5318,2551,8085,8,4,12,FR,France +201036,3,4954,2058,7850,8,3,13,FR,France +201035,3,4279,1604,6954,7,3,11,FR,France +201034,3,4926,566,9286,8,1,15,FR,France +201033,3,2950,0,6507,5,0,11,FR,France +201032,3,671,0,1522,1,0,2,FR,France +201031,3,2732,509,4955,4,0,8,FR,France +201030,3,3989,1068,6910,6,1,11,FR,France +201029,3,4123,1531,6715,7,3,11,FR,France +201028,3,1209,0,2640,2,0,4,FR,France +201027,3,2494,433,4555,4,1,7,FR,France +201026,3,5808,2454,9162,9,4,14,FR,France +201025,3,8019,4395,11643,13,7,19,FR,France +201024,3,3584,1657,5511,6,3,9,FR,France +201023,3,4016,1905,6127,6,3,9,FR,France +201022,3,6251,3664,8838,10,6,14,FR,France +201021,3,3860,1636,6084,6,2,10,FR,France +201020,3,2470,442,4498,4,1,7,FR,France +201019,3,2273,636,3910,4,1,7,FR,France +201018,3,4095,1639,6551,7,3,11,FR,France +201017,3,2216,817,3615,4,2,6,FR,France +201016,3,3471,1085,5857,6,2,10,FR,France +201015,3,3990,1376,6604,6,2,10,FR,France +201014,3,6188,3191,9185,10,5,15,FR,France +201013,3,6705,3665,9745,11,6,16,FR,France +201012,3,6727,3582,9872,11,6,16,FR,France +201011,3,8692,5002,12382,14,8,20,FR,France +201010,3,8844,5465,12223,14,9,19,FR,France +201009,3,12081,7334,16828,19,11,27,FR,France +201008,3,15433,10422,20444,25,17,33,FR,France +201007,3,19690,11728,27652,31,18,44,FR,France +201006,3,27858,18883,36833,44,30,58,FR,France +201005,3,22197,17019,27375,35,27,43,FR,France +201004,3,33817,26151,41483,54,42,66,FR,France +201003,3,36236,27936,44536,58,45,71,FR,France +201002,3,40691,32891,48491,65,53,77,FR,France +201001,3,66574,56164,76984,106,89,123,FR,France +200953,3,96141,81818,110464,153,130,176,FR,France +200952,3,172872,153238,192506,275,244,306,FR,France +200951,3,247809,229140,266478,395,365,425,FR,France +200950,3,379424,355974,402874,604,567,641,FR,France +200949,3,473718,447756,499680,754,713,795,FR,France +200948,3,467551,441506,493596,744,703,785,FR,France +200947,3,378924,355752,402096,603,566,640,FR,France +200946,3,223847,203918,243776,356,324,388,FR,France +200945,3,147046,131155,162937,234,209,259,FR,France +200944,3,170231,151298,189164,271,241,301,FR,France +200943,3,131408,114883,147933,209,183,235,FR,France +200942,3,99387,84491,114283,158,134,182,FR,France +200941,3,100802,86381,115223,160,137,183,FR,France +200940,3,111587,97628,125546,178,156,200,FR,France +200939,3,121267,106153,136381,193,169,217,FR,France +200938,3,137924,121242,154606,220,193,247,FR,France +200937,3,101332,87522,115142,161,139,183,FR,France +200936,3,46024,36435,55613,73,58,88,FR,France +200935,3,31660,23669,39651,50,37,63,FR,France +200934,3,24985,17699,32271,40,28,52,FR,France +200933,3,24435,16308,32562,39,26,52,FR,France +200932,3,23151,14624,31678,37,23,51,FR,France +200931,3,30255,9818,50692,48,15,81,FR,France +200930,3,13868,7861,19875,22,12,32,FR,France +200929,3,10704,5314,16094,17,8,26,FR,France +200928,3,15516,273,30759,25,1,49,FR,France +200927,3,10354,2760,17948,16,4,28,FR,France +200926,3,9932,5257,14607,16,9,23,FR,France +200925,3,7619,4026,11212,12,6,18,FR,France +200924,3,7794,3409,12179,12,5,19,FR,France +200923,3,4342,1975,6709,7,3,11,FR,France +200922,3,6390,3020,9760,10,5,15,FR,France +200921,3,7118,3704,10532,11,6,16,FR,France +200920,3,9482,5804,13160,15,9,21,FR,France +200919,3,7538,4299,10777,12,7,17,FR,France +200918,3,9627,5121,14133,15,8,22,FR,France +200917,3,9537,5267,13807,15,8,22,FR,France +200916,3,14666,9218,20114,23,14,32,FR,France +200915,3,17533,12137,22929,28,19,37,FR,France +200914,3,26324,19150,33498,42,31,53,FR,France +200913,3,27737,20781,34693,44,33,55,FR,France +200912,3,38811,29935,47687,62,48,76,FR,France +200911,3,40410,30705,50115,64,49,79,FR,France +200910,3,53395,41943,64847,85,67,103,FR,France +200909,3,70558,57400,83716,112,91,133,FR,France +200908,3,109100,94840,123360,174,151,197,FR,France +200907,3,141531,125101,157961,225,199,251,FR,France +200906,3,276274,252759,299789,440,403,477,FR,France +200905,3,401868,375032,428704,640,597,683,FR,France +200904,3,545313,512892,577734,868,816,920,FR,France +200903,3,520957,487271,554643,829,775,883,FR,France +200902,3,287145,262869,311421,457,418,496,FR,France +200901,3,200349,180878,219820,319,288,350,FR,France +200852,3,198418,115769,281067,323,188,458,FR,France +200851,3,112588,96656,128520,184,158,210,FR,France +200850,3,51746,43319,60173,84,70,98,FR,France +200849,3,34950,27527,42373,57,45,69,FR,France +200848,3,25604,18563,32645,42,31,53,FR,France +200847,3,18706,10838,26574,30,17,43,FR,France +200846,3,10899,5461,16337,18,9,27,FR,France +200845,3,12472,7082,17862,20,11,29,FR,France +200844,3,9772,5661,13883,16,9,23,FR,France +200843,3,9345,5541,13149,15,9,21,FR,France +200842,3,9087,5572,12602,15,9,21,FR,France +200841,3,9925,5637,14213,16,9,23,FR,France +200840,3,7869,4535,11203,13,8,18,FR,France +200839,3,2195,506,3884,4,1,7,FR,France +200838,3,3679,1481,5877,6,2,10,FR,France +200837,3,2429,561,4297,4,1,7,FR,France +200836,3,2512,492,4532,4,1,7,FR,France +200835,3,1901,0,4869,3,0,8,FR,France +200834,3,2552,0,6509,4,0,10,FR,France +200833,3,7229,0,16106,12,0,26,FR,France +200832,3,4378,107,8649,7,0,14,FR,France +200831,3,3972,621,7323,6,1,11,FR,France +200830,3,3821,643,6999,6,1,11,FR,France +200829,3,2055,0,4225,3,0,7,FR,France +200828,3,3257,208,6306,5,0,10,FR,France +200827,3,2862,474,5250,5,1,9,FR,France +200826,3,897,0,2062,1,0,3,FR,France +200825,3,2006,360,3652,3,0,6,FR,France +200824,3,3217,823,5611,5,1,9,FR,France +200823,3,2906,1006,4806,5,2,8,FR,France +200822,3,1792,451,3133,3,1,5,FR,France +200821,3,3642,925,6359,6,2,10,FR,France +200820,3,6452,2790,10114,11,5,17,FR,France +200819,3,5173,1485,8861,8,2,14,FR,France +200818,3,5315,1770,8860,9,3,15,FR,France +200817,3,10150,5835,14465,17,10,24,FR,France +200816,3,11876,7054,16698,19,11,27,FR,France +200815,3,22871,16253,29489,37,26,48,FR,France +200814,3,45610,27907,63313,74,45,103,FR,France +200813,3,38600,29300,47900,63,48,78,FR,France +200812,3,53169,43299,63039,87,71,103,FR,France +200811,3,62014,50430,73598,101,82,120,FR,France +200810,3,90342,75729,104955,147,123,171,FR,France +200809,3,119696,104205,135187,195,170,220,FR,France +200808,3,198688,180749,216627,324,295,353,FR,France +200807,3,286498,264535,308461,467,431,503,FR,France +200806,3,377097,350714,403480,615,572,658,FR,France +200805,3,344050,320436,367664,561,523,599,FR,France +200804,3,290196,268193,312199,473,437,509,FR,France +200803,3,260268,233385,287151,424,380,468,FR,France +200802,3,160872,145311,176433,262,237,287,FR,France +200801,3,102562,88547,116577,167,144,190,FR,France +200752,3,86742,72295,101189,141,117,165,FR,France +200751,3,61954,51764,72144,101,84,118,FR,France +200750,3,45366,36923,53809,74,60,88,FR,France +200749,3,38351,26177,50525,63,43,83,FR,France +200748,3,48174,35418,60930,79,58,100,FR,France +200747,3,30716,23351,38081,50,38,62,FR,France +200746,3,18204,12267,24141,30,20,40,FR,France +200745,3,15521,10195,20847,25,16,34,FR,France +200744,3,13904,9072,18736,23,15,31,FR,France +200743,3,16212,10778,21646,26,17,35,FR,France +200742,3,20197,13955,26439,33,23,43,FR,France +200741,3,12987,8464,17510,21,14,28,FR,France +200740,3,13517,2983,24051,22,5,39,FR,France +200739,3,15985,7519,24451,26,12,40,FR,France +200738,3,4769,837,8701,8,2,14,FR,France +200737,3,1449,300,2598,2,0,4,FR,France +200736,3,1100,0,2424,2,0,4,FR,France +200735,3,1177,0,2872,2,0,5,FR,France +200734,3,3353,654,6052,5,1,9,FR,France +200733,3,4189,360,8018,7,1,13,FR,France +200732,3,132,0,688,0,0,1,FR,France +200731,3,1965,0,4461,3,0,7,FR,France +200730,3,2158,0,4583,4,0,8,FR,France +200729,3,3406,240,6572,6,1,11,FR,France +200728,3,1459,0,3467,2,0,5,FR,France +200727,3,1453,0,3382,2,0,5,FR,France +200726,3,157,0,513,0,0,1,FR,France +200725,3,3699,0,7778,6,0,13,FR,France +200724,3,2854,481,5227,5,1,9,FR,France +200723,3,5343,2164,8522,9,4,14,FR,France +200722,3,7689,4224,11154,13,7,19,FR,France +200721,3,4319,1659,6979,7,3,11,FR,France +200720,3,6400,2685,10115,10,4,16,FR,France +200719,3,3012,703,5321,5,1,9,FR,France +200718,3,2232,348,4116,4,1,7,FR,France +200717,3,4705,1736,7674,8,3,13,FR,France +200716,3,3817,1438,6196,6,2,10,FR,France +200715,3,4757,717,8797,8,1,15,FR,France +200714,3,11377,6957,15797,19,12,26,FR,France +200713,3,21271,13093,29449,35,22,48,FR,France +200712,3,25433,17717,33149,41,28,54,FR,France +200711,3,30764,23356,38172,50,38,62,FR,France +200710,3,49469,40368,58570,81,66,96,FR,France +200709,3,138901,117018,160784,226,190,262,FR,France +200708,3,316747,284988,348506,516,464,568,FR,France +200707,3,417698,386505,448891,681,630,732,FR,France +200706,3,500016,466668,533364,815,761,869,FR,France +200705,3,375457,346822,404092,612,565,659,FR,France +200704,3,209878,189332,230424,342,309,375,FR,France +200703,3,126161,110596,141726,206,181,231,FR,France +200702,3,82849,69493,96205,135,113,157,FR,France +200701,3,70842,58613,83071,115,95,135,FR,France +200652,3,78190,64191,92189,128,105,151,FR,France +200651,3,62734,50210,75258,103,82,124,FR,France +200650,3,35668,27280,44056,58,44,72,FR,France +200649,3,18773,13164,24382,31,22,40,FR,France +200648,3,16439,11225,21653,27,18,36,FR,France +200647,3,16104,9343,22865,26,15,37,FR,France +200646,3,14032,5590,22474,23,9,37,FR,France +200645,3,12285,7745,16825,20,13,27,FR,France +200644,3,8031,4172,11890,13,7,19,FR,France +200643,3,21157,12483,29831,35,21,49,FR,France +200642,3,16673,8249,25097,27,13,41,FR,France +200641,3,13920,9081,18759,23,15,31,FR,France +200640,3,11950,7132,16768,20,12,28,FR,France +200639,3,8945,4333,13557,15,7,23,FR,France +200638,3,2532,138,4926,4,0,8,FR,France +200637,3,1786,233,3339,3,0,6,FR,France +200636,3,1107,0,2346,2,0,4,FR,France +200635,3,2170,0,4760,4,0,8,FR,France +200634,3,1572,0,3756,3,0,7,FR,France +200633,3,0,0,0,0,0,0,FR,France +200632,3,0,0,0,0,0,0,FR,France +200631,3,1773,0,3892,3,0,6,FR,France +200630,3,665,0,1614,1,0,3,FR,France +200629,3,1339,0,3260,2,0,5,FR,France +200628,3,843,0,2245,1,0,3,FR,France +200627,3,1351,0,3031,2,0,5,FR,France +200626,3,4564,1506,7622,7,2,12,FR,France +200625,3,6259,2072,10446,10,3,17,FR,France +200624,3,4279,964,7594,7,2,12,FR,France +200623,3,4532,1489,7575,7,2,12,FR,France +200622,3,5807,2667,8947,10,5,15,FR,France +200621,3,4661,1761,7561,8,3,13,FR,France +200620,3,8859,4754,12964,15,8,22,FR,France +200619,3,5083,2011,8155,8,3,13,FR,France +200618,3,4454,1632,7276,7,2,12,FR,France +200617,3,17762,11802,23722,29,19,39,FR,France +200616,3,22096,15420,28772,36,25,47,FR,France +200615,3,26969,19631,34307,44,32,56,FR,France +200614,3,40321,31022,49620,66,51,81,FR,France +200613,3,77053,63531,90575,126,104,148,FR,France +200612,3,108004,93005,123003,177,152,202,FR,France +200611,3,122437,106388,138486,201,175,227,FR,France +200610,3,124749,109104,140394,204,178,230,FR,France +200609,3,164150,146099,182201,269,239,299,FR,France +200608,3,199088,178830,219346,326,293,359,FR,France +200607,3,243908,221071,266745,400,363,437,FR,France +200606,3,256758,235190,278326,421,386,456,FR,France +200605,3,184928,166901,202955,303,273,333,FR,France +200604,3,104620,90909,118331,171,149,193,FR,France +200603,3,66255,55727,76783,109,92,126,FR,France +200602,3,39211,31418,47004,64,51,77,FR,France +200601,3,34603,26269,42937,57,43,71,FR,France +200552,3,32132,24389,39875,53,40,66,FR,France +200551,3,40344,28397,52291,67,47,87,FR,France +200550,3,36880,28635,45125,61,47,75,FR,France +200549,3,27589,20576,34602,46,34,58,FR,France +200548,3,24860,17839,31881,41,29,53,FR,France +200547,3,26884,19810,33958,44,32,56,FR,France +200546,3,23967,17155,30779,40,29,51,FR,France +200545,3,14609,8709,20509,24,14,34,FR,France +200544,3,20481,13625,27337,34,23,45,FR,France +200543,3,18045,11916,24174,30,20,40,FR,France +200542,3,23653,15209,32097,39,25,53,FR,France +200541,3,26466,18270,34662,44,30,58,FR,France +200540,3,26647,18088,35206,44,30,58,FR,France +200539,3,23994,15381,32607,40,26,54,FR,France +200538,3,21881,13979,29783,36,23,49,FR,France +200537,3,10347,5384,15310,17,9,25,FR,France +200536,3,7082,2806,11358,12,5,19,FR,France +200535,3,2448,0,4987,4,0,8,FR,France +200534,3,5281,539,10023,9,1,17,FR,France +200533,3,2815,0,6252,5,0,11,FR,France +200532,3,1572,0,3690,3,0,6,FR,France +200531,3,3767,0,10955,6,0,18,FR,France +200530,3,2203,0,5072,4,0,9,FR,France +200529,3,3965,739,7191,7,2,12,FR,France +200528,3,1988,96,3880,3,0,6,FR,France +200527,3,2305,0,4713,4,0,8,FR,France +200526,3,4720,1385,8055,8,2,14,FR,France +200525,3,2354,0,4747,4,0,8,FR,France +200524,3,5892,2029,9755,10,4,16,FR,France +200523,3,5246,1722,8770,9,3,15,FR,France +200522,3,3935,1031,6839,6,1,11,FR,France +200521,3,4284,474,8094,7,1,13,FR,France +200520,3,7841,3611,12071,13,6,20,FR,France +200519,3,7638,3346,11930,13,6,20,FR,France +200518,3,2755,388,5122,5,1,9,FR,France +200517,3,7166,3530,10802,12,6,18,FR,France +200516,3,9741,5344,14138,16,9,23,FR,France +200515,3,14881,9018,20744,25,15,35,FR,France +200514,3,21988,14834,29142,36,24,48,FR,France +200513,3,42971,33053,52889,71,55,87,FR,France +200512,3,90040,75374,104706,149,125,173,FR,France +200511,3,183032,161407,204657,302,266,338,FR,France +200510,3,222526,199990,245062,367,330,404,FR,France +200509,3,251784,229464,274104,416,379,453,FR,France +200508,3,277423,254825,300021,458,421,495,FR,France +200507,3,459444,430026,488862,759,710,808,FR,France +200506,3,568610,536207,601013,939,885,993,FR,France +200505,3,568285,534912,601658,938,883,993,FR,France +200504,3,316856,292011,341701,523,482,564,FR,France +200503,3,154208,137061,171355,255,227,283,FR,France +200502,3,88853,75576,102130,147,125,169,FR,France +200501,3,55801,45339,66263,92,75,109,FR,France +200453,3,40695,31926,49464,68,53,83,FR,France +200452,3,32687,24316,41058,54,40,68,FR,France +200451,3,46209,36017,56401,77,60,94,FR,France +200450,3,42358,31865,52851,70,53,87,FR,France +200449,3,27092,17910,36274,45,30,60,FR,France +200448,3,30522,21236,39808,51,36,66,FR,France +200447,3,21148,13386,28910,35,22,48,FR,France +200446,3,13934,8335,19533,23,14,32,FR,France +200445,3,15658,9703,21613,26,16,36,FR,France +200444,3,23166,14852,31480,38,24,52,FR,France +200443,3,16780,10545,23015,28,18,38,FR,France +200442,3,20480,13909,27051,34,23,45,FR,France +200441,3,15852,9789,21915,26,16,36,FR,France +200440,3,25639,17291,33987,43,29,57,FR,France +200439,3,22680,13222,32138,38,22,54,FR,France +200438,3,17483,9417,25549,29,16,42,FR,France +200437,3,9103,4768,13438,15,8,22,FR,France +200436,3,7753,3596,11910,13,6,20,FR,France +200435,3,4408,775,8041,7,1,13,FR,France +200434,3,4501,610,8392,7,1,13,FR,France +200433,3,1697,0,4046,3,0,7,FR,France +200432,3,3496,0,8181,6,0,14,FR,France +200431,3,2949,20,5878,5,0,10,FR,France +200430,3,3557,642,6472,6,1,11,FR,France +200429,3,5164,1162,9166,9,2,16,FR,France +200428,3,6358,2224,10492,11,4,18,FR,France +200427,3,7486,3040,11932,12,5,19,FR,France +200426,3,7113,0,14709,12,0,25,FR,France +200425,3,3275,508,6042,5,0,10,FR,France +200424,3,6737,2394,11080,11,4,18,FR,France +200423,3,9792,807,18777,16,1,31,FR,France +200422,3,8077,3482,12672,13,5,21,FR,France +200421,3,8073,3588,12558,13,6,20,FR,France +200420,3,7885,3454,12316,13,6,20,FR,France +200419,3,7235,3101,11369,12,5,19,FR,France +200418,3,5108,1830,8386,8,3,13,FR,France +200417,3,3647,523,6771,6,1,11,FR,France +200416,3,5265,1359,9171,9,3,15,FR,France +200415,3,8272,3655,12889,14,6,22,FR,France +200414,3,15657,8888,22426,26,15,37,FR,France +200413,3,8316,4067,12565,14,7,21,FR,France +200412,3,12482,6899,18065,21,12,30,FR,France +200411,3,13964,7879,20049,23,13,33,FR,France +200410,3,22531,14164,30898,37,23,51,FR,France +200409,3,12618,7283,17953,21,12,30,FR,France +200408,3,17738,11055,24421,29,18,40,FR,France +200407,3,25484,17228,33740,42,28,56,FR,France +200406,3,27452,19505,35399,46,33,59,FR,France +200405,3,35110,25869,44351,58,43,73,FR,France +200404,3,44571,35266,53876,74,59,89,FR,France +200403,3,60482,50389,70575,100,83,117,FR,France +200402,3,95234,81407,109061,158,135,181,FR,France +200401,3,109116,84565,133667,181,140,222,FR,France +200352,3,72239,5520,138958,121,10,232,FR,France +200351,3,445464,389214,501714,744,650,838,FR,France +200350,3,522427,491781,553073,873,822,924,FR,France +200349,3,555492,524706,586278,928,877,979,FR,France +200348,3,514668,485364,543972,860,811,909,FR,France +200347,3,332927,305972,359882,556,511,601,FR,France +200346,3,146101,126840,165362,244,212,276,FR,France +200345,3,95565,80900,110230,160,135,185,FR,France +200344,3,54703,43193,66213,91,72,110,FR,France +200343,3,45834,36611,55057,77,62,92,FR,France +200342,3,39010,28885,49135,65,48,82,FR,France +200341,3,29579,21478,37680,49,35,63,FR,France +200340,3,30862,19484,42240,52,33,71,FR,France +200339,3,26592,18927,34257,44,31,57,FR,France +200338,3,14811,8777,20845,25,15,35,FR,France +200337,3,14735,7495,21975,25,13,37,FR,France +200336,3,10951,3732,18170,18,6,30,FR,France +200335,3,1504,0,3349,3,0,6,FR,France +200334,3,2194,0,4889,4,0,9,FR,France +200333,3,1504,0,3921,3,0,7,FR,France +200332,3,1619,0,4072,3,0,7,FR,France +200331,3,5164,0,10601,9,0,18,FR,France +200330,3,3183,28,6338,5,0,10,FR,France +200329,3,6801,450,13152,11,0,22,FR,France +200328,3,3975,609,7341,7,1,13,FR,France +200327,3,2293,0,4605,4,0,8,FR,France +200326,3,5333,2138,8528,9,4,14,FR,France +200325,3,2602,0,5228,4,0,8,FR,France +200324,3,8429,0,19483,14,0,32,FR,France +200323,3,4821,1479,8163,8,2,14,FR,France +200322,3,2573,158,4988,4,0,8,FR,France +200321,3,5563,2465,8661,9,4,14,FR,France +200320,3,7554,3748,11360,13,7,19,FR,France +200319,3,8325,3777,12873,14,6,22,FR,France +200318,3,12268,6392,18144,20,10,30,FR,France +200317,3,46253,36234,56272,77,60,94,FR,France +200316,3,50759,39835,61683,85,67,103,FR,France +200315,3,69269,55778,82760,116,93,139,FR,France +200314,3,70084,55374,84794,117,92,142,FR,France +200313,3,70335,56370,84300,118,95,141,FR,France +200312,3,88582,73568,103596,148,123,173,FR,France +200311,3,99729,83353,116105,167,140,194,FR,France +200310,3,121516,104361,138671,203,174,232,FR,France +200309,3,177255,151800,202710,296,253,339,FR,France +200308,3,222638,194269,251007,372,325,419,FR,France +200307,3,237104,207851,266357,396,347,445,FR,France +200306,3,206955,177973,235937,346,298,394,FR,France +200305,3,151864,125877,177851,254,211,297,FR,France +200304,3,95356,76211,114501,159,127,191,FR,France +200303,3,50983,38264,63702,85,64,106,FR,France +200302,3,31447,21706,41188,53,37,69,FR,France +200301,3,31228,19202,43254,52,32,72,FR,France +200252,3,47016,33692,60340,79,57,101,FR,France +200251,3,47629,36912,58346,80,62,98,FR,France +200250,3,35221,26217,44225,59,44,74,FR,France +200249,3,24656,16900,32412,41,28,54,FR,France +200248,3,19799,12868,26730,33,21,45,FR,France +200247,3,16449,9214,23684,28,16,40,FR,France +200246,3,12753,5779,19727,21,9,33,FR,France +200245,3,19304,8475,30133,32,14,50,FR,France +200244,3,18082,10671,25493,30,18,42,FR,France +200243,3,14326,7548,21104,24,13,35,FR,France +200242,3,13774,7800,19748,23,13,33,FR,France +200241,3,11036,5650,16422,19,10,28,FR,France +200240,3,8137,3375,12899,14,6,22,FR,France +200239,3,15989,9892,22086,27,17,37,FR,France +200238,3,7067,3299,10835,12,6,18,FR,France +200237,3,12409,4981,19837,21,9,33,FR,France +200236,3,1679,0,4072,3,0,7,FR,France +200235,3,2126,0,6301,4,0,11,FR,France +200234,3,2843,0,7483,5,0,13,FR,France +200233,3,2670,0,5462,4,0,9,FR,France +200232,3,1087,0,3003,2,0,5,FR,France +200231,3,5455,399,10511,9,1,17,FR,France +200230,3,3601,0,7836,6,0,13,FR,France +200229,3,5576,379,10773,9,0,18,FR,France +200228,3,6602,0,14289,11,0,24,FR,France +200227,3,1882,0,6151,3,0,10,FR,France +200226,3,4523,0,12320,8,0,21,FR,France +200225,3,4765,1076,8454,8,2,14,FR,France +200224,3,12063,7174,16952,20,12,28,FR,France +200223,3,15468,9806,21130,26,16,36,FR,France +200222,3,4854,1696,8012,8,3,13,FR,France +200221,3,5901,2212,9590,10,4,16,FR,France +200220,3,3803,1215,6391,6,2,10,FR,France +200219,3,6139,2598,9680,10,4,16,FR,France +200218,3,6083,2646,9520,10,4,16,FR,France +200217,3,7223,2678,11768,12,4,20,FR,France +200216,3,17762,9887,25637,30,17,43,FR,France +200215,3,21654,13662,29646,36,23,49,FR,France +200214,3,23877,15709,32045,40,26,54,FR,France +200213,3,27497,16289,38705,46,27,65,FR,France +200212,3,33510,20938,46082,56,35,77,FR,France +200211,3,40426,29171,51681,68,49,87,FR,France +200210,3,42915,24537,61293,72,41,103,FR,France +200209,3,63735,48368,79102,107,81,133,FR,France +200208,3,117204,95548,138860,197,161,233,FR,France +200207,3,170251,137065,203437,286,230,342,FR,France +200206,3,325084,296111,354057,546,497,595,FR,France +200205,3,456186,422559,489813,767,710,824,FR,France +200204,3,504715,470859,538571,848,791,905,FR,France +200203,3,383720,353019,414421,645,593,697,FR,France +200202,3,244028,217752,270304,410,366,454,FR,France +200201,3,115422,95696,135148,194,161,227,FR,France +200152,3,57999,43225,72773,98,73,123,FR,France +200151,3,45961,36017,55905,78,61,95,FR,France +200150,3,31309,22878,39740,53,39,67,FR,France +200149,3,34792,23268,46316,59,40,78,FR,France +200148,3,43283,20164,66402,73,34,112,FR,France +200147,3,27455,20021,34889,46,33,59,FR,France +200146,3,21127,14294,27960,36,24,48,FR,France +200145,3,20766,13979,27553,35,24,46,FR,France +200144,3,11410,6593,16227,19,11,27,FR,France +200143,3,23311,15652,30970,39,26,52,FR,France +200142,3,18963,11652,26274,32,20,44,FR,France +200141,3,20241,14032,26450,34,24,44,FR,France +200140,3,18113,9971,26255,31,17,45,FR,France +200139,3,25407,7785,43029,43,13,73,FR,France +200138,3,9736,4985,14487,16,8,24,FR,France +200137,3,8025,3527,12523,14,6,22,FR,France +200136,3,4663,654,8672,8,1,15,FR,France +200135,3,4399,0,9810,7,0,16,FR,France +200134,3,2990,0,6419,5,0,11,FR,France +200133,3,0,0,0,0,0,0,FR,France +200132,3,0,0,0,0,0,0,FR,France +200131,3,18999,4286,33712,32,7,57,FR,France +200130,3,2144,0,5670,4,0,10,FR,France +200129,3,2408,0,5215,4,0,9,FR,France +200128,3,3555,553,6557,6,1,11,FR,France +200127,3,4739,1122,8356,8,2,14,FR,France +200126,3,3335,466,6204,6,1,11,FR,France +200125,3,2643,527,4759,4,0,8,FR,France +200124,3,4784,2158,7410,8,4,12,FR,France +200123,3,6299,3161,9437,11,6,16,FR,France +200122,3,4544,2006,7082,8,4,12,FR,France +200121,3,8925,4094,13756,15,7,23,FR,France +200120,3,15269,8883,21655,26,15,37,FR,France +200119,3,17369,10575,24163,29,18,40,FR,France +200118,3,21043,14262,27824,36,25,47,FR,France +200117,3,25787,19109,32465,44,33,55,FR,France +200116,3,24025,16833,31217,41,29,53,FR,France +200115,3,24188,17340,31036,41,29,53,FR,France +200114,3,40429,31774,49084,68,53,83,FR,France +200113,3,48644,39517,57771,82,67,97,FR,France +200112,3,45411,35780,55042,77,61,93,FR,France +200111,3,49809,40534,59084,84,68,100,FR,France +200110,3,46649,37240,56058,79,63,95,FR,France +200109,3,58623,47346,69900,99,80,118,FR,France +200108,3,77423,63237,91609,131,107,155,FR,France +200107,3,126970,107898,146042,215,183,247,FR,France +200106,3,225969,198142,253796,382,335,429,FR,France +200105,3,278674,249486,307862,471,422,520,FR,France +200104,3,209193,189129,229257,354,320,388,FR,France +200103,3,139823,124243,155403,236,210,262,FR,France +200102,3,105356,92392,118320,178,156,200,FR,France +200101,3,98930,84599,113261,167,143,191,FR,France +200052,3,143525,124203,162847,244,211,277,FR,France +200051,3,125224,108719,141729,213,185,241,FR,France +200050,3,99177,84857,113497,169,145,193,FR,France +200049,3,74170,54196,94144,126,92,160,FR,France +200048,3,43642,34064,53220,74,58,90,FR,France +200047,3,64848,11322,118374,110,19,201,FR,France +200046,3,20598,14053,27143,35,24,46,FR,France +200045,3,25375,17229,33521,43,29,57,FR,France +200044,3,16330,9762,22898,28,17,39,FR,France +200043,3,36951,27693,46209,63,47,79,FR,France +200042,3,41200,30772,51628,70,52,88,FR,France +200041,3,40022,30939,49105,68,53,83,FR,France +200040,3,27237,19986,34488,46,34,58,FR,France +200039,3,19338,12649,26027,33,22,44,FR,France +200038,3,7417,3193,11641,13,6,20,FR,France +200037,3,2243,0,4722,4,0,8,FR,France +200036,3,2990,0,6416,5,0,11,FR,France +200035,3,5590,0,12003,10,0,21,FR,France +200034,3,5188,0,12418,9,0,21,FR,France +200033,3,1690,0,3859,3,0,7,FR,France +200032,3,1405,0,4239,2,0,7,FR,France +200031,3,2159,0,4744,4,0,8,FR,France +200030,3,218,0,783,0,0,1,FR,France +200029,3,1532,0,3751,3,0,7,FR,France +200028,3,1071,0,2881,2,0,5,FR,France +200027,3,2427,150,4704,4,0,8,FR,France +200026,3,1997,0,4996,3,0,8,FR,France +200025,3,4239,221,8257,7,0,14,FR,France +200024,3,5411,1122,9700,9,2,16,FR,France +200023,3,8757,4101,13413,15,7,23,FR,France +200022,3,4966,1694,8238,8,2,14,FR,France +200021,3,4271,1389,7153,7,2,12,FR,France +200020,3,4520,1478,7562,8,3,13,FR,France +200019,3,13867,8548,19186,24,15,33,FR,France +200018,3,5386,2261,8511,9,4,14,FR,France +200017,3,7018,1581,12455,12,3,21,FR,France +200016,3,5328,1433,9223,9,2,16,FR,France +200015,3,12020,6436,17604,20,11,29,FR,France +200014,3,10942,5691,16193,19,10,28,FR,France +200013,3,8572,3443,13701,15,6,24,FR,France +200012,3,7081,3097,11065,12,5,19,FR,France +200011,3,12172,7447,16897,21,13,29,FR,France +200010,3,9091,5450,12732,15,9,21,FR,France +200009,3,14631,9200,20062,25,16,34,FR,France +200008,3,23647,17172,30122,40,29,51,FR,France +200007,3,59173,48440,69906,101,83,119,FR,France +200006,3,146517,129961,163073,249,221,277,FR,France +200005,3,261687,239983,283391,445,408,482,FR,France +200004,3,374822,349785,399859,637,594,680,FR,France +200003,3,484233,456706,511760,824,777,871,FR,France +200002,3,521069,492185,549953,886,837,935,FR,France +200001,3,541945,511326,572564,922,870,974,FR,France +199952,3,387655,360652,414658,663,617,709,FR,France +199951,3,272075,250906,293244,465,429,501,FR,France +199950,3,181113,164571,197655,310,282,338,FR,France +199949,3,112328,99058,125598,192,169,215,FR,France +199948,3,58710,48651,68769,100,83,117,FR,France +199947,3,35912,23462,48362,61,40,82,FR,France +199946,3,8601,1503,15699,15,3,27,FR,France +199945,3,17781,10817,24745,30,18,42,FR,France +199944,3,18238,12870,23606,31,22,40,FR,France +199943,3,18135,12601,23669,31,22,40,FR,France +199942,3,19183,13258,25108,33,23,43,FR,France +199941,3,25171,18689,31653,43,32,54,FR,France +199940,3,24185,16184,32186,41,27,55,FR,France +199939,3,28553,20776,36330,49,36,62,FR,France +199938,3,12430,7759,17101,21,13,29,FR,France +199937,3,7543,4283,10803,13,7,19,FR,France +199936,3,8191,2827,13555,14,5,23,FR,France +199935,3,3334,1188,5480,6,2,10,FR,France +199934,3,7600,0,27730,13,0,47,FR,France +199933,3,9757,354,19160,17,1,33,FR,France +199932,3,7149,0,15077,12,0,26,FR,France +199931,3,2640,0,5463,5,0,10,FR,France +199930,3,1478,0,3153,3,0,6,FR,France +199929,3,3983,498,7468,7,1,13,FR,France +199928,3,3731,712,6750,6,1,11,FR,France +199927,3,5004,1597,8411,9,3,15,FR,France +199926,3,3459,699,6219,6,1,11,FR,France +199925,3,5302,2057,8547,9,3,15,FR,France +199924,3,4327,1646,7008,7,2,12,FR,France +199923,3,5370,2374,8366,9,4,14,FR,France +199922,3,4404,1643,7165,8,3,13,FR,France +199921,3,4180,1485,6875,7,2,12,FR,France +199920,3,6073,2775,9371,10,4,16,FR,France +199919,3,6241,3220,9262,11,6,16,FR,France +199918,3,3057,678,5436,5,1,9,FR,France +199917,3,2904,701,5107,5,1,9,FR,France +199916,3,7539,3360,11718,13,6,20,FR,France +199915,3,11535,6814,16256,20,12,28,FR,France +199914,3,18730,13131,24329,32,22,42,FR,France +199913,3,38453,29560,47346,66,51,81,FR,France +199912,3,58090,48072,68108,99,82,116,FR,France +199911,3,91329,78686,103972,156,134,178,FR,France +199910,3,147976,131058,164894,253,224,282,FR,France +199909,3,207450,188710,226190,355,323,387,FR,France +199908,3,313293,292280,334306,536,500,572,FR,France +199907,3,524136,496702,551570,896,849,943,FR,France +199906,3,493908,466605,521211,844,797,891,FR,France +199905,3,476884,449696,504072,815,769,861,FR,France +199904,3,368514,345131,391897,630,590,670,FR,France +199903,3,242388,224208,260568,414,383,445,FR,France +199902,3,160657,145209,176105,275,249,301,FR,France +199901,3,130133,115125,145141,222,196,248,FR,France +199853,3,107611,92301,122921,185,159,211,FR,France +199852,3,72373,61032,83714,124,105,143,FR,France +199851,3,78179,67156,89202,134,115,153,FR,France +199850,3,54775,45478,64072,94,78,110,FR,France +199849,3,33385,26332,40438,57,45,69,FR,France +199848,3,22636,16668,28604,39,29,49,FR,France +199847,3,14505,9746,19264,25,17,33,FR,France +199846,3,13804,9049,18559,24,16,32,FR,France +199845,3,13021,8113,17929,22,14,30,FR,France +199844,3,12631,7410,17852,22,13,31,FR,France +199843,3,12180,7125,17235,21,12,30,FR,France +199842,3,18885,12726,25044,32,21,43,FR,France +199841,3,24196,17506,30886,42,31,53,FR,France +199840,3,20235,14114,26356,35,25,45,FR,France +199839,3,17075,11538,22612,29,20,38,FR,France +199838,3,10837,6336,15338,19,11,27,FR,France +199837,3,6968,3227,10709,12,6,18,FR,France +199836,3,3033,580,5486,5,1,9,FR,France +199835,3,2491,0,5022,4,0,8,FR,France +199834,3,3853,589,7117,7,1,13,FR,France +199833,3,2934,0,6598,5,0,11,FR,France +199832,3,1308,0,2894,2,0,5,FR,France +199831,3,12147,0,29237,21,0,50,FR,France +199830,3,5309,1628,8990,9,3,15,FR,France +199829,3,6486,2465,10507,11,4,18,FR,France +199828,3,9577,4464,14690,16,7,25,FR,France +199827,3,12358,7158,17558,21,12,30,FR,France +199826,3,10415,6547,14283,18,11,25,FR,France +199825,3,18246,13050,23442,31,22,40,FR,France +199824,3,16263,11126,21400,28,19,37,FR,France +199823,3,8553,4911,12195,15,9,21,FR,France +199822,3,5181,2669,7693,9,5,13,FR,France +199821,3,4751,2416,7086,8,4,12,FR,France +199820,3,12129,8099,16159,21,14,28,FR,France +199819,3,24118,17906,30330,41,30,52,FR,France +199818,3,31612,24512,38712,54,42,66,FR,France +199817,3,61148,51894,70402,105,89,121,FR,France +199816,3,123195,109878,136512,211,188,234,FR,France +199815,3,171603,156715,186491,294,268,320,FR,France +199814,3,319092,298398,339786,547,512,582,FR,France +199813,3,298212,278513,317911,512,478,546,FR,France +199812,3,263585,246356,280814,452,422,482,FR,France +199811,3,220578,204894,236262,378,351,405,FR,France +199810,3,202354,186304,218404,347,319,375,FR,France +199809,3,227553,209970,245136,390,360,420,FR,France +199808,3,271362,252005,290719,465,432,498,FR,France +199807,3,190187,173694,206680,326,298,354,FR,France +199806,3,88217,76829,99605,151,131,171,FR,France +199805,3,45180,36970,53390,77,63,91,FR,France +199804,3,30005,23272,36738,51,39,63,FR,France +199803,3,23900,18221,29579,41,31,51,FR,France +199802,3,31143,23994,38292,53,41,65,FR,France +199801,3,24809,17786,31832,43,31,55,FR,France +199752,3,29039,21984,36094,50,38,62,FR,France +199751,3,34924,27737,42111,60,48,72,FR,France +199750,3,33527,26388,40666,58,46,70,FR,France +199749,3,15978,11147,20809,27,19,35,FR,France +199748,3,11507,7744,15270,20,14,26,FR,France +199747,3,11059,7151,14967,19,12,26,FR,France +199746,3,8073,4613,11533,14,8,20,FR,France +199745,3,18202,13113,23291,31,22,40,FR,France +199744,3,19770,14405,25135,34,25,43,FR,France +199743,3,16707,11945,21469,29,21,37,FR,France +199742,3,15340,10351,20329,26,17,35,FR,France +199741,3,16933,11941,21925,29,20,38,FR,France +199740,3,13292,8709,17875,23,15,31,FR,France +199739,3,10189,6279,14099,18,11,25,FR,France +199738,3,3231,1061,5401,6,2,10,FR,France +199737,3,4542,1949,7135,8,4,12,FR,France +199736,3,5131,2205,8057,9,4,14,FR,France +199735,3,1842,0,3740,3,0,6,FR,France +199734,3,3226,0,6717,6,0,12,FR,France +199733,3,1799,0,4368,3,0,7,FR,France +199732,3,2086,0,4411,4,0,8,FR,France +199731,3,1386,0,3332,2,0,5,FR,France +199730,3,2116,0,4919,4,0,9,FR,France +199729,3,1973,0,4347,3,0,7,FR,France +199728,3,1560,216,2904,3,1,5,FR,France +199727,3,2540,754,4326,4,1,7,FR,France +199726,3,5582,2699,8465,10,5,15,FR,France +199725,3,4012,1090,6934,7,2,12,FR,France +199724,3,4696,1824,7568,8,3,13,FR,France +199723,3,4709,2136,7282,8,4,12,FR,France +199722,3,2283,665,3901,4,1,7,FR,France +199721,3,2108,664,3552,4,2,6,FR,France +199720,3,3257,1519,4995,6,3,9,FR,France +199719,3,4646,2436,6856,8,4,12,FR,France +199718,3,5246,2764,7728,9,5,13,FR,France +199717,3,14236,9906,18566,24,17,31,FR,France +199716,3,12169,8111,16227,21,14,28,FR,France +199715,3,9516,6192,12840,16,10,22,FR,France +199714,3,13602,9659,17545,23,16,30,FR,France +199713,3,18032,13345,22719,31,23,39,FR,France +199712,3,17199,12707,21691,30,22,38,FR,France +199711,3,19988,15419,24557,34,26,42,FR,France +199710,3,21903,17338,26468,38,30,46,FR,France +199709,3,29860,24261,35459,51,41,61,FR,France +199708,3,55445,47857,63033,95,82,108,FR,France +199707,3,70876,62518,79234,122,108,136,FR,France +199706,3,76906,68152,85660,132,117,147,FR,France +199705,3,95900,86095,105705,165,148,182,FR,France +199704,3,96896,87079,106713,167,150,184,FR,France +199703,3,143844,131917,155771,248,227,269,FR,France +199702,3,211578,197395,225761,364,340,388,FR,France +199701,3,280440,263783,297097,483,454,512,FR,France +199652,3,388201,369211,407191,670,637,703,FR,France +199651,3,640627,617388,663866,1106,1066,1146,FR,France +199650,3,535205,514568,555842,924,888,960,FR,France +199649,3,411498,393335,429661,710,679,741,FR,France +199648,3,195568,182563,208573,338,316,360,FR,France +199647,3,71980,63619,80341,124,110,138,FR,France +199646,3,32138,26358,37918,55,45,65,FR,France +199645,3,25551,20136,30966,44,35,53,FR,France +199644,3,10753,7230,14276,19,13,25,FR,France +199643,3,12971,9311,16631,22,16,28,FR,France +199642,3,11929,8472,15386,21,15,27,FR,France +199641,3,9918,6674,13162,17,11,23,FR,France +199640,3,10765,7067,14463,19,13,25,FR,France +199639,3,8377,5183,11571,14,8,20,FR,France +199638,3,9470,5965,12975,16,10,22,FR,France +199637,3,2925,829,5021,5,1,9,FR,France +199636,3,1122,23,2221,2,0,4,FR,France +199635,3,1674,93,3255,3,0,6,FR,France +199634,3,1273,122,2424,2,0,4,FR,France +199633,3,540,0,1246,1,0,2,FR,France +199632,3,1453,176,2730,3,1,5,FR,France +199631,3,3010,752,5268,5,1,9,FR,France +199630,3,2992,706,5278,5,1,9,FR,France +199629,3,1559,144,2974,3,1,5,FR,France +199628,3,3109,541,5677,5,1,9,FR,France +199627,3,4456,1595,7317,8,3,13,FR,France +199626,3,2871,1138,4604,5,2,8,FR,France +199625,3,2308,856,3760,4,1,7,FR,France +199624,3,2490,1067,3913,4,2,6,FR,France +199623,3,2819,1262,4376,5,2,8,FR,France +199622,3,4005,1984,6026,7,4,10,FR,France +199621,3,7042,4291,9793,12,7,17,FR,France +199620,3,10619,7365,13873,18,12,24,FR,France +199619,3,11898,8065,15731,21,14,28,FR,France +199618,3,18338,13352,23324,32,23,41,FR,France +199617,3,24954,19100,30808,43,33,53,FR,France +199616,3,29313,23868,34758,51,42,60,FR,France +199615,3,51703,43644,59762,89,75,103,FR,France +199614,3,44414,36774,52054,77,64,90,FR,France +199613,3,30622,25062,36182,53,43,63,FR,France +199612,3,31818,25852,37784,55,45,65,FR,France +199611,3,24427,19499,29355,42,33,51,FR,France +199610,3,20910,16198,25622,36,28,44,FR,France +199609,3,19594,15228,23960,34,26,42,FR,France +199608,3,19046,14850,23242,33,26,40,FR,France +199607,3,23041,18338,27744,40,32,48,FR,France +199606,3,21810,17153,26467,38,30,46,FR,France +199605,3,25275,20410,30140,44,36,52,FR,France +199604,3,43359,36948,49770,75,64,86,FR,France +199603,3,54691,48016,61366,94,82,106,FR,France +199602,3,105606,96106,115106,182,166,198,FR,France +199601,3,223830,209274,238386,386,361,411,FR,France +199552,3,397122,378252,415992,688,655,721,FR,France +199551,3,749988,725434,774542,1299,1256,1342,FR,France +199550,3,604926,583100,626752,1047,1009,1085,FR,France +199549,3,375500,358200,392800,650,620,680,FR,France +199548,3,206446,193457,219435,357,335,379,FR,France +199547,3,120472,110526,130418,209,192,226,FR,France +199546,3,62380,55042,69718,108,95,121,FR,France +199545,3,29791,24523,35059,52,43,61,FR,France +199544,3,13168,9820,16516,23,17,29,FR,France +199543,3,16188,12389,19987,28,21,35,FR,France +199542,3,15178,11387,18969,26,19,33,FR,France +199541,3,14980,10851,19109,26,19,33,FR,France +199540,3,16245,11610,20880,28,20,36,FR,France +199539,3,18499,13844,23154,32,24,40,FR,France +199538,3,13123,9410,16836,23,17,29,FR,France +199537,3,4895,2666,7124,8,4,12,FR,France +199536,3,3659,1574,5744,6,2,10,FR,France +199535,3,2496,644,4348,4,1,7,FR,France +199534,3,1887,214,3560,3,0,6,FR,France +199533,3,905,0,2007,2,0,4,FR,France +199532,3,700,0,1699,1,0,3,FR,France +199531,3,1946,92,3800,3,0,6,FR,France +199530,3,1898,46,3750,3,0,6,FR,France +199529,3,2148,687,3609,4,1,7,FR,France +199528,3,3312,1430,5194,6,3,9,FR,France +199527,3,4853,2683,7023,8,4,12,FR,France +199526,3,4986,2911,7061,9,5,13,FR,France +199525,3,4571,2520,6622,8,4,12,FR,France +199524,3,8058,5054,11062,14,9,19,FR,France +199523,3,13820,9801,17839,24,17,31,FR,France +199522,3,14124,9999,18249,24,17,31,FR,France +199521,3,11931,8655,15207,21,15,27,FR,France +199520,3,18846,14311,23381,33,25,41,FR,France +199519,3,26261,21488,31034,45,37,53,FR,France +199518,3,39231,33258,45204,68,58,78,FR,France +199517,3,88640,79343,97937,153,137,169,FR,France +199516,3,140488,129439,151537,243,224,262,FR,France +199515,3,181007,169110,192904,313,292,334,FR,France +199514,3,248704,235144,262264,431,408,454,FR,France +199513,3,209839,197191,222487,363,341,385,FR,France +199512,3,122434,112497,132371,212,195,229,FR,France +199511,3,81730,73346,90114,142,127,157,FR,France +199510,3,49387,42703,56071,86,74,98,FR,France +199509,3,39696,33259,46133,69,58,80,FR,France +199508,3,38008,32225,43791,66,56,76,FR,France +199507,3,30550,25479,35621,53,44,62,FR,France +199506,3,37351,32007,42695,65,56,74,FR,France +199505,3,27876,23218,32534,48,40,56,FR,France +199504,3,27643,22818,32468,48,40,56,FR,France +199503,3,24844,20391,29297,43,35,51,FR,France +199502,3,23480,19249,27711,41,34,48,FR,France +199501,3,26556,21916,31196,46,38,54,FR,France +199452,3,22036,17495,26577,38,30,46,FR,France +199451,3,26912,21750,32074,47,38,56,FR,France +199450,3,28831,23470,34192,50,41,59,FR,France +199449,3,21161,16559,25763,37,29,45,FR,France +199448,3,18487,14456,22518,32,25,39,FR,France +199447,3,15206,11578,18834,26,20,32,FR,France +199446,3,14252,10525,17979,25,19,31,FR,France +199445,3,12152,8448,15856,21,15,27,FR,France +199444,3,11307,7688,14926,20,14,26,FR,France +199443,3,11254,8002,14506,20,14,26,FR,France +199442,3,14406,10653,18159,25,18,32,FR,France +199441,3,14073,10341,17805,24,18,30,FR,France +199440,3,15962,11850,20074,28,21,35,FR,France +199439,3,15878,11643,20113,28,21,35,FR,France +199438,3,15366,11100,19632,27,20,34,FR,France +199437,3,5949,3561,8337,10,6,14,FR,France +199436,3,2806,1133,4479,5,2,8,FR,France +199435,3,4556,2358,6754,8,4,12,FR,France +199434,3,3459,1444,5474,6,2,10,FR,France +199433,3,4272,977,7567,7,1,13,FR,France +199432,3,4786,1613,7959,8,2,14,FR,France +199431,3,5027,1580,8474,9,3,15,FR,France +199430,3,2100,520,3680,4,1,7,FR,France +199429,3,1188,0,2384,2,0,4,FR,France +199428,3,1581,316,2846,3,1,5,FR,France +199427,3,713,0,1459,1,0,2,FR,France +199426,3,990,80,1900,2,0,4,FR,France +199425,3,5431,3222,7640,9,5,13,FR,France +199424,3,6288,3723,8853,11,7,15,FR,France +199423,3,6440,1052,11828,11,2,20,FR,France +199422,3,845,0,2449,1,0,4,FR,France +199421,3,2197,395,3999,4,1,7,FR,France +199420,3,2217,852,3582,4,2,6,FR,France +199419,3,1483,406,2560,3,1,5,FR,France +199418,3,3705,1940,5470,6,3,9,FR,France +199417,3,2288,1064,3512,4,2,6,FR,France +199416,3,5156,3176,7136,9,6,12,FR,France +199415,3,6952,4678,9226,12,8,16,FR,France +199414,3,4671,2784,6558,8,5,11,FR,France +199413,3,3343,1641,5045,6,3,9,FR,France +199412,3,4305,2412,6198,7,4,10,FR,France +199411,3,5399,3327,7471,9,5,13,FR,France +199410,3,4548,2529,6567,8,4,12,FR,France +199409,3,5635,3251,8019,10,6,14,FR,France +199408,3,9539,6652,12426,17,12,22,FR,France +199407,3,14639,11188,18090,25,19,31,FR,France +199406,3,17308,13395,21221,30,23,37,FR,France +199405,3,18489,14290,22688,32,25,39,FR,France +199404,3,23712,19048,28376,41,33,49,FR,France +199403,3,29882,24817,34947,52,43,61,FR,France +199402,3,47402,41415,53389,82,72,92,FR,France +199401,3,118119,108182,128056,205,188,222,FR,France +199352,3,233137,218608,247666,406,381,431,FR,France +199351,3,377472,359792,395152,658,627,689,FR,France +199350,3,627639,607097,648181,1094,1058,1130,FR,France +199349,3,898045,873419,922671,1565,1522,1608,FR,France +199348,3,527582,507752,547412,920,885,955,FR,France +199347,3,241371,226769,255973,421,396,446,FR,France +199346,3,76034,68003,84065,133,119,147,FR,France +199345,3,32289,27022,37556,56,47,65,FR,France +199344,3,17832,14015,21649,31,24,38,FR,France +199343,3,15098,11333,18863,26,19,33,FR,France +199342,3,19187,14893,23481,33,26,40,FR,France +199341,3,18285,14384,22186,32,25,39,FR,France +199340,3,13805,10348,17262,24,18,30,FR,France +199339,3,14783,11173,18393,26,20,32,FR,France +199338,3,10492,7329,13655,18,12,24,FR,France +199337,3,7023,4503,9543,12,8,16,FR,France +199336,3,4361,2445,6277,8,5,11,FR,France +199335,3,5589,3066,8112,10,6,14,FR,France +199334,3,2984,1209,4759,5,2,8,FR,France +199333,3,3217,758,5676,6,2,10,FR,France +199332,3,3755,1051,6459,7,2,12,FR,France +199331,3,4163,1768,6558,7,3,11,FR,France +199330,3,4055,1907,6203,7,3,11,FR,France +199329,3,3714,1668,5760,6,2,10,FR,France +199328,3,1774,484,3064,3,1,5,FR,France +199327,3,2574,918,4230,4,1,7,FR,France +199326,3,3048,1450,4646,5,2,8,FR,France +199325,3,8348,5260,11436,15,10,20,FR,France +199324,3,6624,3747,9501,12,7,17,FR,France +199323,3,7424,4302,10546,13,8,18,FR,France +199322,3,3432,1849,5015,6,3,9,FR,France +199321,3,5942,3670,8214,10,6,14,FR,France +199320,3,5137,3157,7117,9,6,12,FR,France +199319,3,4593,2725,6461,8,5,11,FR,France +199318,3,5027,3075,6979,9,6,12,FR,France +199317,3,8111,5138,11084,14,9,19,FR,France +199316,3,24932,19468,30396,43,33,53,FR,France +199315,3,22181,17147,27215,39,30,48,FR,France +199314,3,38266,30865,45667,67,54,80,FR,France +199313,3,62987,54506,71468,110,95,125,FR,France +199312,3,63493,55956,71030,111,98,124,FR,France +199311,3,80548,72628,88468,140,126,154,FR,France +199310,3,127910,117688,138132,223,205,241,FR,France +199309,3,184150,171378,196922,321,299,343,FR,France +199308,3,222932,209051,236813,389,365,413,FR,France +199307,3,248494,234936,262052,433,409,457,FR,France +199306,3,286939,271830,302048,500,474,526,FR,France +199305,3,255890,241516,270264,446,421,471,FR,France +199304,3,193107,181261,204953,337,316,358,FR,France +199303,3,147854,137256,158452,258,240,276,FR,France +199302,3,90269,82164,98374,157,143,171,FR,France +199301,3,75288,67244,83332,131,117,145,FR,France +199253,3,56622,49107,64137,99,86,112,FR,France +199252,3,49588,42568,56608,87,75,99,FR,France +199251,3,41156,35024,47288,72,61,83,FR,France +199250,3,40100,34699,45501,70,61,79,FR,France +199249,3,39146,33847,44445,69,60,78,FR,France +199248,3,32392,27499,37285,57,48,66,FR,France +199247,3,26276,21797,30755,46,38,54,FR,France +199246,3,22758,18462,27054,40,32,48,FR,France +199245,3,22023,17804,26242,39,32,46,FR,France +199244,3,27619,22945,32293,48,40,56,FR,France +199243,3,24969,20704,29234,44,37,51,FR,France +199242,3,29980,25261,34699,52,44,60,FR,France +199241,3,24091,19953,28229,42,35,49,FR,France +199240,3,17593,13885,21301,31,25,37,FR,France +199239,3,13535,10301,16769,24,18,30,FR,France +199238,3,9837,7106,12568,17,12,22,FR,France +199237,3,7480,5130,9830,13,9,17,FR,France +199236,3,5155,2958,7352,9,5,13,FR,France +199235,3,6383,3687,9079,11,6,16,FR,France +199234,3,2953,922,4984,5,1,9,FR,France +199233,3,4046,1549,6543,7,3,11,FR,France +199232,3,4963,2215,7711,9,4,14,FR,France +199231,3,4233,1733,6733,7,3,11,FR,France +199230,3,3091,1145,5037,5,2,8,FR,France +199229,3,3586,1583,5589,6,2,10,FR,France +199228,3,4179,2133,6225,7,3,11,FR,France +199227,3,5568,3134,8002,10,6,14,FR,France +199226,3,5886,3229,8543,10,5,15,FR,France +199225,3,5304,2805,7803,9,5,13,FR,France +199224,3,5928,3482,8374,10,6,14,FR,France +199223,3,3914,1855,5973,7,3,11,FR,France +199222,3,4899,2641,7157,9,5,13,FR,France +199221,3,5059,2889,7229,9,5,13,FR,France +199220,3,4308,2226,6390,8,4,12,FR,France +199219,3,2982,1181,4783,5,2,8,FR,France +199218,3,3887,1777,5997,7,3,11,FR,France +199217,3,3614,1216,6012,6,2,10,FR,France +199216,3,5460,2934,7986,10,6,14,FR,France +199215,3,8642,5029,12255,15,9,21,FR,France +199214,3,11346,7536,15156,20,13,27,FR,France +199213,3,11693,8096,15290,20,14,26,FR,France +199212,3,11752,7834,15670,21,14,28,FR,France +199211,3,11689,7575,15803,20,13,27,FR,France +199210,3,19224,12971,25477,34,23,45,FR,France +199209,3,26629,20275,32983,47,36,58,FR,France +199208,3,37667,30887,44447,66,54,78,FR,France +199207,3,57312,48777,65847,100,85,115,FR,France +199206,3,112450,99989,124911,197,175,219,FR,France +199205,3,165474,151342,179606,290,265,315,FR,France +199204,3,147959,133595,162323,259,234,284,FR,France +199203,3,137893,122944,152842,241,215,267,FR,France +199202,3,185852,166558,205146,325,291,359,FR,France +199201,3,247688,222574,272802,434,390,478,FR,France +199152,3,349815,325499,374131,615,572,658,FR,France +199151,3,378413,355928,400898,666,626,706,FR,France +199150,3,198721,182878,214564,350,322,378,FR,France +199149,3,93903,82992,104814,165,146,184,FR,France +199148,3,45173,37384,52962,79,65,93,FR,France +199147,3,35691,28224,43158,63,50,76,FR,France +199146,3,23685,17531,29839,42,31,53,FR,France +199145,3,19565,13551,25579,34,23,45,FR,France +199144,3,21571,15477,27665,38,27,49,FR,France +199143,3,28842,21958,35726,51,39,63,FR,France +199142,3,27483,20385,34581,48,36,60,FR,France +199141,3,28185,20655,35715,50,37,63,FR,France +199140,3,26740,16049,37431,47,28,66,FR,France +199139,3,14373,8734,20012,25,15,35,FR,France +199138,3,7460,3700,11220,13,6,20,FR,France +199137,3,2429,434,4424,4,0,8,FR,France +199136,3,2380,0,4882,4,0,8,FR,France +199135,3,2372,0,5025,4,0,9,FR,France +199134,3,2099,0,5104,4,0,9,FR,France +199133,3,1654,0,4102,3,0,7,FR,France +199132,3,625,0,2190,1,0,4,FR,France +199131,3,2464,0,5830,4,0,10,FR,France +199130,3,2382,0,6857,4,0,12,FR,France +199129,3,3837,40,7634,7,0,14,FR,France +199128,3,3297,152,6442,6,0,12,FR,France +199127,3,3164,934,5394,6,2,10,FR,France +199126,3,6376,3324,9428,11,6,16,FR,France +199125,3,8218,4776,11660,14,8,20,FR,France +199124,3,8223,4660,11786,14,8,20,FR,France +199123,3,6801,3596,10006,12,6,18,FR,France +199122,3,6050,2682,9418,11,5,17,FR,France +199121,3,6391,3385,9397,11,6,16,FR,France +199120,3,8633,4683,12583,15,8,22,FR,France +199119,3,7785,3986,11584,14,7,21,FR,France +199118,3,10856,6457,15255,19,11,27,FR,France +199117,3,15603,10950,20256,27,19,35,FR,France +199116,3,15665,11184,20146,28,20,36,FR,France +199115,3,15062,10715,19409,26,18,34,FR,France +199114,3,27862,21583,34141,49,38,60,FR,France +199113,3,32179,25829,38529,57,46,68,FR,France +199112,3,27873,22312,33434,49,39,59,FR,France +199111,3,46186,38876,53496,81,68,94,FR,France +199110,3,88750,77784,99716,156,137,175,FR,France +199109,3,139093,124326,153860,245,219,271,FR,France +199108,3,216369,198630,234108,381,350,412,FR,France +199107,3,208836,191789,225883,367,337,397,FR,France +199106,3,134737,121280,148194,237,213,261,FR,France +199105,3,73564,62716,84412,129,110,148,FR,France +199104,3,48253,39031,57475,85,69,101,FR,France +199103,3,29382,22258,36506,52,39,65,FR,France +199102,3,29759,22044,37474,52,38,66,FR,France +199101,3,42927,33706,52148,76,60,92,FR,France +199052,3,41262,31607,50917,73,56,90,FR,France +199051,3,46924,37544,56304,83,66,100,FR,France +199050,3,44125,36137,52113,78,64,92,FR,France +199049,3,38379,30603,46155,68,54,82,FR,France +199048,3,29571,22315,36827,52,39,65,FR,France +199047,3,23358,15890,30826,41,28,54,FR,France +199046,3,20246,7930,32562,36,14,58,FR,France +199045,3,17571,11591,23551,31,20,42,FR,France +199044,3,16182,10305,22059,29,19,39,FR,France +199043,3,17579,11588,23570,31,20,42,FR,France +199042,3,13011,7875,18147,23,14,32,FR,France +199041,3,19723,13330,26116,35,24,46,FR,France +199040,3,20433,14614,26252,36,26,46,FR,France +199039,3,15618,10315,20921,28,19,37,FR,France +199038,3,11146,6197,16095,20,11,29,FR,France +199037,3,4051,1022,7080,7,2,12,FR,France +199036,3,2542,124,4960,4,0,8,FR,France +199035,3,934,0,2681,2,0,5,FR,France +199034,3,201,0,595,0,0,1,FR,France +199033,3,0,0,0,0,0,0,FR,France +199032,3,1399,0,3849,2,0,6,FR,France +199031,3,881,0,2206,2,0,4,FR,France +199030,3,425,0,1262,1,0,2,FR,France +199029,3,1077,0,2643,2,0,5,FR,France +199028,3,959,0,2252,2,0,4,FR,France +199027,3,2948,793,5103,5,1,9,FR,France +199026,3,7236,2651,11821,13,5,21,FR,France +199025,3,7879,3136,12622,14,6,22,FR,France +199024,3,5727,2460,8994,10,4,16,FR,France +199023,3,3655,1043,6267,6,1,11,FR,France +199022,3,4196,1292,7100,7,2,12,FR,France +199021,3,1004,0,2367,2,0,4,FR,France +199020,3,4506,1771,7241,8,3,13,FR,France +199019,3,5897,2440,9354,10,4,16,FR,France +199018,3,1738,141,3335,3,0,6,FR,France +199017,3,5278,2197,8359,9,4,14,FR,France +199016,3,8129,3754,12504,14,6,22,FR,France +199015,3,11707,5831,17583,21,11,31,FR,France +199014,3,12862,8177,17547,23,15,31,FR,France +199013,3,21879,15088,28670,39,27,51,FR,France +199012,3,17035,11135,22935,30,20,40,FR,France +199011,3,20018,14311,25725,35,25,45,FR,France +199010,3,16294,11045,21543,29,20,38,FR,France +199009,3,21793,15460,28126,39,28,50,FR,France +199008,3,26110,19342,32878,46,34,58,FR,France +199007,3,61742,49720,73764,109,88,130,FR,France +199006,3,399984,353345,446623,707,625,789,FR,France +199005,3,161765,146354,177176,286,259,313,FR,France +199004,3,287771,267698,307844,509,474,544,FR,France +199003,3,315466,296550,334382,558,525,591,FR,France +199002,3,345060,326087,364033,610,576,644,FR,France +199001,3,483600,460913,506287,855,815,895,FR,France +198952,3,581149,556023,606275,1035,990,1080,FR,France +198951,3,821540,793846,849234,1463,1414,1512,FR,France +198950,3,749283,723633,774933,1334,1288,1380,FR,France +198949,3,358043,340053,376033,638,606,670,FR,France +198948,3,119087,108253,129921,212,193,231,FR,France +198947,3,40963,33897,48029,73,60,86,FR,France +198946,3,23547,17952,29142,42,32,52,FR,France +198945,3,22711,16999,28423,40,30,50,FR,France +198944,3,23405,17475,29335,42,31,53,FR,France +198943,3,29549,23287,35811,53,42,64,FR,France +198942,3,39410,32172,46648,70,57,83,FR,France +198941,3,43763,35245,52281,78,63,93,FR,France +198940,3,31453,24288,38618,56,43,69,FR,France +198939,3,24622,18425,30819,44,33,55,FR,France +198938,3,18296,13483,23109,33,24,42,FR,France +198937,3,12022,8082,15962,21,14,28,FR,France +198936,3,4769,2299,7239,8,4,12,FR,France +198935,3,4661,1696,7626,8,3,13,FR,France +198934,3,6039,2185,9893,11,4,18,FR,France +198933,3,7940,3858,12022,14,7,21,FR,France +198932,3,7114,2361,11867,13,5,21,FR,France +198931,3,2721,0,5478,5,0,10,FR,France +198930,3,3168,561,5775,6,1,11,FR,France +198929,3,3909,1504,6314,7,3,11,FR,France +198928,3,1284,105,2463,2,0,4,FR,France +198927,3,3641,1350,5932,6,2,10,FR,France +198926,3,5753,2885,8621,10,5,15,FR,France +198925,3,6299,3454,9144,11,6,16,FR,France +198924,3,6337,3537,9137,11,6,16,FR,France +198923,3,11779,7984,15574,21,14,28,FR,France +198922,3,9104,4764,13444,16,8,24,FR,France +198921,3,9554,4316,14792,17,8,26,FR,France +198920,3,6093,1023,11163,11,2,20,FR,France +198919,3,0,,,0,,,FR,France +198918,3,13452,1365,25539,24,2,46,FR,France +198917,3,10949,7147,14751,19,12,26,FR,France +198916,3,10908,7494,14322,19,13,25,FR,France +198915,3,9667,6209,13125,17,11,23,FR,France +198914,3,15230,10469,19991,27,19,35,FR,France +198913,3,10564,6767,14361,19,12,26,FR,France +198912,3,13419,9542,17296,24,17,31,FR,France +198911,3,16633,12140,21126,30,22,38,FR,France +198910,3,12387,8750,16024,22,16,28,FR,France +198909,3,12895,9183,16607,23,16,30,FR,France +198908,3,19746,15258,24234,35,27,43,FR,France +198907,3,27277,21760,32794,49,39,59,FR,France +198906,3,47844,40320,55368,85,72,98,FR,France +198905,3,52840,45665,60015,94,81,107,FR,France +198904,3,54942,47750,62134,98,85,111,FR,France +198903,3,66010,58065,73955,118,104,132,FR,France +198902,3,112284,102003,122565,200,182,218,FR,France +198901,3,202266,188305,216227,360,335,385,FR,France +198852,3,467971,447033,488909,837,800,874,FR,France +198851,3,872748,846468,899028,1562,1515,1609,FR,France +198850,3,1001824,974799,1028849,1793,1745,1841,FR,France +198849,3,966523,940068,992978,1729,1682,1776,FR,France +198848,3,637811,614785,660837,1141,1100,1182,FR,France +198847,3,246062,231234,260890,440,413,467,FR,France +198846,3,92484,83160,101808,165,148,182,FR,France +198845,3,53940,46148,61732,97,83,111,FR,France +198844,3,42106,35336,48876,75,63,87,FR,France +198843,3,38252,31909,44595,68,57,79,FR,France +198842,3,45495,38467,52523,81,68,94,FR,France +198841,3,46336,39344,53328,83,70,96,FR,France +198840,3,39882,33507,46257,71,60,82,FR,France +198839,3,43730,36755,50705,78,66,90,FR,France +198838,3,35243,29367,41119,63,52,74,FR,France +198837,3,15537,11911,19163,28,22,34,FR,France +198836,3,7539,4840,10238,13,8,18,FR,France +198835,3,7797,4762,10832,14,9,19,FR,France +198834,3,4950,2005,7895,9,4,14,FR,France +198833,3,7937,3861,12013,14,7,21,FR,France +198832,3,7033,2595,11471,13,5,21,FR,France +198831,3,8758,3591,13925,16,7,25,FR,France +198830,3,4205,1224,7186,8,3,13,FR,France +198829,3,6103,1013,11193,11,2,20,FR,France +198828,3,8562,3483,13641,15,6,24,FR,France +198827,3,4690,2196,7184,8,4,12,FR,France +198826,3,7065,3905,10225,13,7,19,FR,France +198825,3,7657,4664,10650,14,9,19,FR,France +198824,3,6676,3978,9374,12,7,17,FR,France +198823,3,8695,5755,11635,16,11,21,FR,France +198822,3,11566,8282,14850,21,15,27,FR,France +198821,3,11107,7742,14472,20,14,26,FR,France +198820,3,14118,10223,18013,25,18,32,FR,France +198819,3,18260,13847,22673,33,25,41,FR,France +198818,3,20415,16281,24549,37,30,44,FR,France +198817,3,21750,17436,26064,39,31,47,FR,France +198816,3,33730,27496,39964,60,49,71,FR,France +198815,3,70616,61754,79478,126,110,142,FR,France +198814,3,123868,113211,134525,222,203,241,FR,France +198813,3,193710,181519,205901,347,325,369,FR,France +198812,3,283445,268834,298056,507,481,533,FR,France +198811,3,316175,300858,331492,566,539,593,FR,France +198810,3,235142,222004,248280,421,397,445,FR,France +198809,3,135564,125263,145865,243,225,261,FR,France +198808,3,87753,78449,97057,157,140,174,FR,France +198807,3,77099,68423,85775,138,122,154,FR,France +198806,3,69349,61502,77196,124,110,138,FR,France +198805,3,72705,64952,80458,130,116,144,FR,France +198804,3,72818,64944,80692,130,116,144,FR,France +198803,3,68869,60922,76816,123,109,137,FR,France +198802,3,59743,51907,67579,107,93,121,FR,France +198801,3,60929,52573,69285,109,94,124,FR,France +198753,3,47257,38170,56344,85,69,101,FR,France +198752,3,11935,2353,21517,21,4,38,FR,France +198751,3,47744,34266,61222,86,62,110,FR,France +198750,3,57767,50181,65353,104,90,118,FR,France +198749,3,49380,42461,56299,89,77,101,FR,France +198748,3,41871,35115,48627,75,63,87,FR,France +198747,3,29688,23465,35911,53,42,64,FR,France +198746,3,37216,30199,44233,67,54,80,FR,France +198745,3,35456,29024,41888,64,52,76,FR,France +198744,3,41024,33829,48219,74,61,87,FR,France +198743,3,46356,38370,54342,83,69,97,FR,France +198742,3,38021,30236,45806,68,54,82,FR,France +198741,3,42021,32016,52026,76,58,94,FR,France +198740,3,24641,15930,33352,44,28,60,FR,France +198739,3,32328,23548,41108,58,42,74,FR,France +198738,3,16782,11870,21694,30,21,39,FR,France +198737,3,11208,6542,15874,20,12,28,FR,France +198736,3,7906,4014,11798,14,7,21,FR,France +198735,3,6149,2970,9328,11,5,17,FR,France +198734,3,6631,2734,10528,12,5,19,FR,France +198733,3,6404,1834,10974,12,4,20,FR,France +198732,3,7215,2353,12077,13,4,22,FR,France +198731,3,8233,3655,12811,15,7,23,FR,France +198730,3,4642,1301,7983,8,2,14,FR,France +198729,3,4389,913,7865,8,2,14,FR,France +198728,3,2702,138,5266,5,0,10,FR,France +198727,3,10171,5904,14438,18,10,26,FR,France +198726,3,12341,7824,16858,22,14,30,FR,France +198725,3,23413,15490,31336,42,28,56,FR,France +198724,3,11289,7282,15296,20,13,27,FR,France +198723,3,15857,10943,20771,29,20,38,FR,France +198722,3,14887,9743,20031,27,18,36,FR,France +198721,3,17619,12649,22589,32,23,41,FR,France +198720,3,10344,6454,14234,19,12,26,FR,France +198719,3,12539,7943,17135,23,15,31,FR,France +198718,3,16095,10330,21860,29,19,39,FR,France +198717,3,21256,14850,27662,38,26,50,FR,France +198716,3,32416,25100,39732,58,45,71,FR,France +198715,3,44292,36456,52128,80,66,94,FR,France +198714,3,50642,41866,59418,91,75,107,FR,France +198713,3,62246,52749,71743,112,95,129,FR,France +198712,3,59625,50653,68597,107,91,123,FR,France +198711,3,53561,45035,62087,96,81,111,FR,France +198710,3,93067,80519,105615,167,144,190,FR,France +198709,3,147006,133519,160493,264,240,288,FR,France +198708,3,217779,202179,233379,391,363,419,FR,France +198707,3,288180,270718,305642,518,487,549,FR,France +198706,3,296702,279051,314353,533,501,565,FR,France +198705,3,236046,219483,252609,424,394,454,FR,France +198704,3,158333,143625,173041,285,259,311,FR,France +198703,3,103841,91699,115983,187,165,209,FR,France +198702,3,74213,64014,84412,133,115,151,FR,France +198701,3,69745,59207,80283,125,106,144,FR,France +198652,3,76263,64958,87568,138,118,158,FR,France +198651,3,72920,63047,82793,132,114,150,FR,France +198650,3,73413,64019,82807,133,116,150,FR,France +198649,3,56296,48229,64363,102,87,117,FR,France +198648,3,46031,38578,53484,83,70,96,FR,France +198647,3,36740,29710,43770,66,53,79,FR,France +198646,3,32134,25327,38941,58,46,70,FR,France +198645,3,38964,31382,46546,70,56,84,FR,France +198644,3,28646,22048,35244,52,40,64,FR,France +198643,3,27532,20842,34222,50,38,62,FR,France +198642,3,31815,25124,38506,57,45,69,FR,France +198641,3,32864,25939,39789,59,47,71,FR,France +198640,3,33516,26776,40256,60,48,72,FR,France +198639,3,28665,22477,34853,52,41,63,FR,France +198638,3,26615,20479,32751,48,37,59,FR,France +198637,3,15998,10802,21194,29,20,38,FR,France +198636,3,9182,4982,13382,17,9,25,FR,France +198635,3,10587,4470,16704,19,8,30,FR,France +198634,3,5762,858,10666,10,1,19,FR,France +198633,3,3115,554,5676,6,1,11,FR,France +198632,3,1027,0,2311,2,0,4,FR,France +198631,3,2247,0,4574,4,0,8,FR,France +198630,3,2346,141,4551,4,0,8,FR,France +198629,3,3654,931,6377,7,2,12,FR,France +198628,3,2327,0,5318,4,0,9,FR,France +198627,3,7529,3353,11705,14,6,22,FR,France +198626,3,8778,5106,12450,16,9,23,FR,France +198625,3,11075,6804,15346,20,12,28,FR,France +198624,3,11160,7252,15068,20,13,27,FR,France +198623,3,14372,9896,18848,26,18,34,FR,France +198622,3,9717,5594,13840,18,11,25,FR,France +198621,3,14460,9575,19345,26,17,35,FR,France +198620,3,17133,12106,22160,31,22,40,FR,France +198619,3,22177,16008,28346,40,29,51,FR,France +198618,3,31736,24115,39357,57,43,71,FR,France +198617,3,34874,27440,42308,63,50,76,FR,France +198616,3,41196,32894,49498,74,59,89,FR,France +198615,3,42659,33537,51781,77,61,93,FR,France +198614,3,49792,39728,59856,90,72,108,FR,France +198613,3,87249,63562,110936,157,114,200,FR,France +198612,3,124777,97237,152317,225,175,275,FR,France +198611,3,168146,151035,185257,303,272,334,FR,France +198610,3,257305,231225,283385,464,417,511,FR,France +198609,3,321140,296644,345636,580,536,624,FR,France +198608,3,448786,419219,478353,810,757,863,FR,France +198607,3,490723,460150,521296,886,831,941,FR,France +198606,3,439300,411764,466836,793,743,843,FR,France +198605,3,364727,339868,389586,658,613,703,FR,France +198604,3,348509,322464,374554,629,582,676,FR,France +198603,3,271539,248654,294424,490,449,531,FR,France +198602,3,178138,159344,196932,322,288,356,FR,France +198601,3,112614,96539,128689,203,174,232,FR,France +198552,3,86452,72250,100654,157,131,183,FR,France +198551,3,114666,99538,129794,208,181,235,FR,France +198550,3,86031,73604,98458,156,133,179,FR,France +198549,3,65931,55326,76536,120,101,139,FR,France +198548,3,68291,57581,79001,124,105,143,FR,France +198547,3,66177,55221,77133,120,100,140,FR,France +198546,3,70534,58788,82280,128,107,149,FR,France +198545,3,57514,47167,67861,104,85,123,FR,France +198544,3,67356,55744,78968,122,101,143,FR,France +198543,3,87402,74208,100596,158,134,182,FR,France +198542,3,76218,64604,87832,138,117,159,FR,France +198541,3,45712,36755,54669,83,67,99,FR,France +198540,3,49739,40335,59143,90,73,107,FR,France +198539,3,39819,31234,48404,72,56,88,FR,France +198538,3,27605,20614,34596,50,37,63,FR,France +198537,3,22219,15626,28812,40,28,52,FR,France +198536,3,27986,18992,36980,51,35,67,FR,France +198535,3,30215,18546,41884,55,34,76,FR,France +198534,3,40389,24786,55992,73,45,101,FR,France +198533,3,22611,8819,36403,41,16,66,FR,France +198532,3,7488,1851,13125,14,4,24,FR,France +198531,3,16958,8479,25437,31,16,46,FR,France +198530,3,11598,5507,17689,21,10,32,FR,France +198529,3,13054,6474,19634,24,12,36,FR,France +198528,3,14588,7659,21517,26,13,39,FR,France +198527,3,19670,11761,27579,36,22,50,FR,France +198526,3,18609,12637,24581,34,23,45,FR,France +198525,3,19362,12454,26270,35,22,48,FR,France +198524,3,19855,13577,26133,36,25,47,FR,France +198523,3,19373,10010,28736,35,18,52,FR,France +198522,3,24099,17190,31008,44,31,57,FR,France +198521,3,26096,19621,32571,47,35,59,FR,France +198520,3,27896,20885,34907,51,38,64,FR,France +198519,3,43154,32821,53487,78,59,97,FR,France +198518,3,40555,29935,51175,74,55,93,FR,France +198517,3,34053,24366,43740,62,44,80,FR,France +198516,3,50362,36451,64273,91,66,116,FR,France +198515,3,63881,45538,82224,116,83,149,FR,France +198514,3,134545,114400,154690,244,207,281,FR,France +198513,3,197206,176080,218332,357,319,395,FR,France +198512,3,245240,223304,267176,445,405,485,FR,France +198511,3,276205,252399,300011,501,458,544,FR,France +198510,3,353231,326279,380183,640,591,689,FR,France +198509,3,369895,341109,398681,670,618,722,FR,France +198508,3,389886,359529,420243,707,652,762,FR,France +198507,3,471852,432599,511105,855,784,926,FR,France +198506,3,565825,518011,613639,1026,939,1113,FR,France +198505,3,637302,592795,681809,1155,1074,1236,FR,France +198504,3,424937,390794,459080,770,708,832,FR,France +198503,3,213901,174689,253113,388,317,459,FR,France +198502,3,97586,80949,114223,177,147,207,FR,France +198501,3,85489,65918,105060,155,120,190,FR,France +198452,3,84830,60602,109058,154,110,198,FR,France +198451,3,101726,80242,123210,185,146,224,FR,France +198450,3,123680,101401,145959,225,184,266,FR,France +198449,3,101073,81684,120462,184,149,219,FR,France +198448,3,78620,60634,96606,143,110,176,FR,France +198447,3,72029,54274,89784,131,99,163,FR,France +198446,3,87330,67686,106974,159,123,195,FR,France +198445,3,135223,101414,169032,246,184,308,FR,France +198444,3,68422,20056,116788,125,37,213,FR,France diff --git a/module3/exo1/analyse-syndrome-grippal.Rmd b/module3/exo1/analyse-syndrome-grippal.Rmd new file mode 100644 index 0000000000000000000000000000000000000000..771e78faac371f23c921f7f7aecc87f2100e9059 --- /dev/null +++ b/module3/exo1/analyse-syndrome-grippal.Rmd @@ -0,0 +1,163 @@ +--- +title: "Analyse de l'incidence du syndrôme grippal" +author: "Konrad Hinsen" +output: + pdf_document: + toc: true + html_document: + toc: true + theme: journal +documentclass: article +classoption: a4paper +header-includes: +- \usepackage[french]{babel} +- \usepackage[upright]{fourier} +- \hypersetup{colorlinks=true,pagebackref=true} +--- + +```{r setup, include=FALSE} +knitr::opts_chunk$set(echo = TRUE) +``` + +## Préparation des données + +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. L'URL est: +```{r} +data_url = "http://www.sentiweb.fr/datasets/incidence-PAY-3.csv" +``` + +Voici l'explication des colonnes donnée sur le [sur le site d'origine](https://ns.sentiweb.fr/incidence/csv-schema-v1.json): + +| Nom de colonne | Libellé de colonne | +|----------------+-----------------------------------------------------------------------------------------------------------------------------------| +| `week` | Semaine calendaire (ISO 8601) | +| `indicator` | Code de l'indicateur de surveillance | +| `inc` | Estimation de l'incidence de consultations en nombre de cas | +| `inc_low` | Estimation de la borne inférieure de l'IC95% du nombre de cas de consultation | +| `inc_up` | Estimation de la borne supérieure de l'IC95% du nombre de cas de consultation | +| `inc100` | Estimation du taux d'incidence du nombre de cas de consultation (en cas pour 100,000 habitants) | +| `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) | +| `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) | +| `geo_insee` | Code de la zone géographique concernée (Code INSEE) http://www.insee.fr/fr/methodes/nomenclatures/cog/ | +| `geo_name` | Libellé de la zone géographique (ce libellé peut être modifié sans préavis) | + +La première ligne du fichier CSV est un commentaire, que nous ignorons en précisant `skip=1`. +### Téléchargement +```{r} +data = read.csv(data_url, skip=1) +``` + +Regardons ce que nous avons obtenu: +```{r} +head(data) +tail(data) +``` + +Y a-t-il des points manquants dans nos données ? +```{r} +na_records = apply(data, 1, function (x) any(is.na(x))) +data[na_records,] +``` + +Les deux colonnes qui nous intéressent sont `week` et `inc`. Vérifions leurs classes: +```{r} +class(data$week) +class(data$inc) +``` +Ce sont des entiers, tout va bien ! + +### Conversion des numéros de semaine + +La gestion des dates est toujours un sujet délicat. Il y a un grand nombre de conventions différentes qu'il ne faut pas confondre. Notre jeux de données utilise un format que peu de logiciels savent traiter: les semaines en format [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601). En `R`, il est géré par la bibliothèque [parsedate](https://cran.r-project.org/package=parsedate): + +```{r} +library(parsedate) +``` + +Pour faciliter le traitement suivant, nous remplaçons ces semaines par les dates qui correspondent aux lundis. Voici une petite fonction qui fait la conversion pour une seule valeur: + +```{r} +convert_week = function(w) { + ws = paste(w) + iso = paste0(substring(ws, 1, 4), "-W", substring(ws, 5, 6)) + as.character(parse_iso_8601(iso)) +} +``` + +Nous appliquons cette fonction à tous les points, créant une nouvelle colonne `date` dans notre jeu de données: +```{r} +data$date = as.Date(convert_week(data$week)) +``` + +Vérifions qu'elle est de classe `Date`: +```{r} +class(data$date) +``` + +Les points sont dans l'ordre chronologique inverse, il est donc utile de les trier: +```{r} +data = data[order(data$date),] +``` + +C'est l'occasion pour faire une vérification: nos dates doivent être séparées d'exactement sept jours: +```{r} +all(diff(data$date) == 7) +``` + +### Inspection + +Regardons enfin à quoi ressemblent nos données ! +```{r} +plot(data$date, data$inc, type="l", xlab="Date", ylab="Incidence hebdomadaire") +``` + +Un zoom sur les dernières années montre mieux la localisation des pics en hiver. Le creux des incidences se trouve en été. +```{r} +with(tail(data, 200), plot(date, inc, type="l", xlab="Date", ylab="Incidence hebdomadaire")) +``` + +## L'incidence annuelle + +### Calcul + +Étant donné que le pic de l'épidémie se situe en hiver, à cheval entre deux années civiles, nous définissons la période de référence entre deux minima de l'incidence, du 1er août de l'année $N$ au 1er août de l'année $N+1$. Nous mettons l'année $N+1$ comme étiquette sur cette année décalée, car le pic de l'épidémie est toujours au début de l'année $N+1$. Comme l'incidence de syndrome grippal est très faible en été, cette modification ne risque pas de fausser nos conclusions. +L'argument `na.rm=True` dans la sommation précise qu'il faut supprimer les points manquants. Ce choix est raisonnable car il n'y a qu'un seul point manquant, dont l'impact ne peut pas être très fort. +```{r} +pic_annuel = function(annee) { + debut = paste0(annee-1,"-08-01") + fin = paste0(annee,"-08-01") + semaines = data$date > debut & data$date <= fin + sum(data$inc[semaines], na.rm=TRUE) + } +``` + +Nous devons aussi faire attention aux premières et dernières années de notre jeux de données. Les données commencent en octobre 1984, ce qui ne permet pas de quantifier complètement le pic attribué à 1985. Nous l'enlevons donc de notre analyse. Par contre, pour une exécution en octobre 2018, les données se terminent après le 1er août 2018, ce qui nous permet d'inclure cette année. +```{r} +annees = 1986:2018 +``` + +Nous créons un nouveau jeu de données pour l'incidence annuelle, en applicant la fonction `pic_annuel` à chaque année: +```{r} +inc_annuelle = data.frame(annee = annees, + incidence = sapply(annees, pic_annuel)) +head(inc_annuelle) +``` + +### Inspection + +Voici les incidences annuelles en graphique: +```{r} +plot(inc_annuelle, type="p", xlab="Année", ylab="Incidence annuelle") +``` + +### Identification des épidémies les plus fortes + +Une liste triée par ordre décroissant d'incidence annuelle permet de plus facilement repérer les valeurs les plus élevées: +```{r} +head(inc_annuelle[order(-inc_annuelle$incidence),]) +``` + +Enfin, un histogramme montre bien que les épidémies fortes, qui touchent environ 10% de la population française, sont assez rares: il y en eu trois au cours des 35 dernières années. +```{r} +hist(inc_annuelle$incidence, breaks=10, xlab="Incidence annuelle", ylab="Nb d'observations", main="") +``` diff --git a/module3/exo1/analyse-syndrome-grippal.ipynb b/module3/exo1/analyse-syndrome-grippal.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..59d72b5b58a3ae26346460dd39e62a39c55243d7 --- /dev/null +++ b/module3/exo1/analyse-syndrome-grippal.ipynb @@ -0,0 +1,372 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Incidence du syndrome grippal" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "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": null, + "metadata": { + "collapsed": true + }, + "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": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "raw_data = pd.read_csv(data_url, skiprows=1)\n", + "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": null, + "metadata": {}, + "outputs": [], + "source": [ + "raw_data[raw_data.isnull().any(axis=1)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nous éliminons ce point, ce qui n'a pas d'impact fort sur notre analyse qui est assez simple." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "data = raw_data.dropna().copy()\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nos données utilisent une convention inhabituelle: le numéro de\n", + "semaine est collé à l'année, donnant l'impression qu'il s'agit\n", + "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\n", + "semaine. Il faut lui fournir les dates de début et de fin de\n", + "semaine. Nous utilisons pour cela la bibliothèque `isoweek`.\n", + "\n", + "Comme la conversion des semaines est devenu assez complexe, nous\n", + "écrivons une petite fonction Python pour cela. Ensuite, nous\n", + "l'appliquons à tous les points de nos donnés. Les résultats vont\n", + "dans une nouvelle colonne 'period'." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "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": [ + "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": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "sorted_data = data.set_index('period').sort_index()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "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.\n", + "\n", + "Ceci s'avère tout à fait juste sauf pour deux périodes consécutives\n", + "entre lesquelles il manque une semaine.\n", + "\n", + "Nous reconnaissons ces dates: c'est la semaine sans observations\n", + "que nous avions supprimées !" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "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": [ + "Un premier regard sur les données !" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "sorted_data['inc'].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Un zoom sur les dernières années montre mieux la situation des pics en hiver. Le creux des incidences se trouve en été." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "sorted_data['inc'][-200:].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Etude de l'incidence annuelle" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Etant donné que le pic de l'épidémie se situe en hiver, à cheval\n", + "entre deux années civiles, nous définissons la période de référence\n", + "entre deux minima de l'incidence, du 1er août de l'année $N$ au\n", + "1er août 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 août de chaque année, nous utilisons le\n", + "premier jour de la semaine qui contient le 1er août.\n", + "\n", + "Comme l'incidence de syndrome grippal est très faible en été, cette\n", + "modification ne risque pas de fausser nos conclusions.\n", + "\n", + "Encore un petit détail: les données commencent an octobre 1984, ce qui\n", + "rend la première année incomplète. Nous commençons donc l'analyse en 1985." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "first_august_week = [pd.Period(pd.Timestamp(y, 8, 1), 'W')\n", + " for y in range(1985,\n", + " sorted_data.index[-1].year)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "En partant de cette liste des semaines qui contiennent un 1er août, 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": null, + "metadata": {}, + "outputs": [], + "source": [ + "year = []\n", + "yearly_incidence = []\n", + "for week1, week2 in zip(first_august_week[:-1],\n", + " first_august_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": [ + "Voici les incidences annuelles." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "yearly_incidence.plot(style='*')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Une liste triée permet de plus facilement répérer les valeurs les plus élevées (à la fin)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "yearly_incidence.sort_values()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Enfin, un histogramme montre bien que les épidémies fortes, qui touchent environ 10% de la population\n", + " française, sont assez rares: il y en eu trois au cours des 35 dernières années." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "yearly_incidence.hist(xrot=20)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.1" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/module3/exo1/analyse-syndrome-grippal.org b/module3/exo1/analyse-syndrome-grippal.org new file mode 100644 index 0000000000000000000000000000000000000000..1720b70df3a93009c79592b68d1dcf57a53f6341 --- /dev/null +++ b/module3/exo1/analyse-syndrome-grippal.org @@ -0,0 +1,219 @@ +#+TITLE: Incidence du syndrôme grippal +#+LANGUAGE: fr +#+OPTIONS: *:nil num:1 toc:t + +# #+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +#+PROPERTY: header-args :session :exports both + +* Préface + +Pour exécuter le code de cette analyse, il faut disposer des logiciels suivants: + +** Emacs 25 ou plus +Une version plus ancienne d'Emacs devrait suffire. Pour une version antérieure à 26, il faut installer une version récente (9.x) d'org-mode. +** Python 3.6 ou plus +Nous utilisons le traitement de dates en format ISO 8601, qui a été implémenté en Python seulement avec la version 3.6. + +#+BEGIN_SRC python :results output +import sys +if sys.version_info.major < 3 or sys.version_info.minor < 6: + print("Veuillez utiliser Python 3.6 (ou plus) !") +#+END_SRC + +#+BEGIN_SRC emacs-lisp :results output +(unless (featurep 'ob-python) + (print "Veuillez activer python dans org-babel (org-babel-do-languages) !")) +#+END_SRC + +** R 3.4 +Nous n'utilisons que des fonctionnalités de base du langage R, une version antérieure devrait suffire. + +#+BEGIN_SRC emacs-lisp :results output +(unless (featurep 'ob-R) + (print "Veuillez activer R dans org-babel (org-babel-do-languages) !")) +#+END_SRC + +* 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: +#+NAME: data-url +http://www.sentiweb.fr/datasets/incidence-PAY-3.csv + +Voici l'explication des colonnes donnée sur [[https://ns.sentiweb.fr/incidence/csv-schema-v1.json][le site d'origine:]] + +| Nom de colonne | Libellé de colonne | +|----------------+-----------------------------------------------------------------------------------------------------------------------------------| +| ~week~ | Semaine calendaire (ISO 8601) | +| ~indicator~ | Code de l'indicateur de surveillance | +| ~inc~ | Estimation de l'incidence de consultations en nombre de cas | +| ~inc_low~ | Estimation de la borne inférieure de l'IC95% du nombre de cas de consultation | +| ~inc_up~ | Estimation de la borne supérieure de l'IC95% du nombre de cas de consultation | +| ~inc100~ | Estimation du taux d'incidence du nombre de cas de consultation (en cas pour 100,000 habitants) | +| ~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) | +| ~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) | +| ~geo_insee~ | Code de la zone géographique concernée (Code INSEE) http://www.insee.fr/fr/methodes/nomenclatures/cog/ | +| ~geo_name~ | Libellé de la zone géographique (ce libellé peut être modifié sans préavis) | + +L'indication d'une semaine calendaire en format [[https://en.wikipedia.org/wiki/ISO_8601][ISO-8601]] est populaire en Europe, mais peu utilisée aux Etats-Unis. Ceci explique peut-être que peu de logiciels savent gérer ce format. Le langage Python le fait depuis la version 3.6. Nous utilisons donc ce langage pour la préparation de nos données, ce qui a l'avantage de ne nécessiter aucune bibliothèque supplémentaire. (Note: nous expliquerons dans le module 4 pourquoi il est avantageux pour la réproductibilité de se limiter à un minimum de bibliothèques.) + +** 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 +from urllib.request import urlopen + +data = urlopen(data_url).read() +lines = data.decode('latin-1').strip().split('\n') +data_lines = lines[1:] +table = [line.split(',') for line in data_lines] +#+END_SRC + +Regardons ce que nous avons obtenu: +#+BEGIN_SRC python :results value +table[:5] +#+END_SRC + +** 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. + +Nous construisons un nouveau jeu de données sans les lignes qui contiennent des champs vides. Nous affichons ces lignes pour en garder une trace. +#+BEGIN_SRC python :results output +valid_table = [] +for row in table: + missing = any([column == '' for column in row]) + if missing: + print(row) + else: + valid_table.append(row) +#+END_SRC + +** Extraction des colonnes utilisées +Il y a deux colonnes qui nous intéressent: la première (~"week"~) et la troisième (~"inc"~). Nous vérifions leurs noms dans l'en-tête, que nous effaçons par la suite. Enfin, nous créons un tableau avec les deux colonnes pour le traitement suivant. +#+BEGIN_SRC python :results silent +week = [row[0] for row in valid_table] +assert week[0] == 'week' +del week[0] +inc = [row[2] for row in valid_table] +assert inc[0] == 'inc +del inc[0] +data = list(zip(week, inc)) +#+END_SRC + +Regardons les premières et les dernières lignes. Nous insérons ~None~ pour indiquer à org-mode la séparation entre les trois sections du tableau: en-tête, début des données, fin des données. +#+BEGIN_SRC python :results value +[('week', 'inc'), None] + data[:5] + [None] + data[-5:] +#+END_SRC + +** Vérification +Il est toujours prudent de vérifier si les données semblent crédibles. Nous savons que les semaines sont données par six chiffres (quatre pour l'année et deux pour la semaine), et que les incidences sont des nombres entiers positifs. +#+BEGIN_SRC python :results output +for week, inc in data: + if len(week) != 6 or not week.isdigit(): + print("Valeur suspecte dans la colonne 'week': ", (week, inc)) + if not inc.isdigit(): + print("Valeur suspecte dans la colonne 'inc': ", (week, inc)) +#+END_SRC + +Pas de problème ! + +** Conversions +Pour faciliter les traitements suivants, nous remplaçons les numéros de semaine ISO par les dates qui correspondent aux lundis. A cette occasion, nous trions aussi les données par la date, et nous transformons les incidences en nombres entiers. + +#+BEGIN_SRC python :results silent +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 + +Regardons de nouveau les premières et les dernières lignes: +#+BEGIN_SRC python :results value +str_data = [(str(date), str(inc)) for date, inc in converted_data] +[('date', 'inc'), None] + str_data[:5] + [None] + str_data[-5:] +#+END_SRC + +** Vérification des dates +Nous faisons encore une vérification: nos dates doivent être séparées d'exactement une semaine, sauf autour du point manquant. +#+BEGIN_SRC python :results output +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 + +** Passage Python -> R +Nous passons au langage R pour inspecter nos données, parce que l'analyse et la préparation de graphiques sont plus concises en R, sans nécessiter aucune bibliothèque supplémentaire. + +Nous utilisons le mécanisme d'échange de données proposé par org-mode, ce qui nécessite un peu de code Python pour transformer les données dans le bon format. +#+NAME: data-for-R +#+BEGIN_SRC python :results silent +[('date', 'inc'), None] + [(str(date), inc) for date, inc in converted_data] +#+END_SRC + +En R, les données arrivent sous forme d'un data frame, mais il faut encore convertir les dates, qui arrivent comme chaînes de caractères. +#+BEGIN_SRC R :results output :var data=data-for-R +data$date <- as.Date(data$date) +summary(data) +#+END_SRC + +** Inspection +Regardons enfin à quoi ressemblent nos données ! +#+BEGIN_SRC R :results output graphics :file inc-plot.png +plot(data, type="l", xlab="Date", ylab="Incidence hebdomadaire") +#+END_SRC + +Un zoom sur les dernières années montre mieux la situation des pics en hiver. Le creux des incidences se trouve en été. +#+BEGIN_SRC R :results output graphics :file inc-plot-zoom.png +plot(tail(data, 200), type="l", xlab="Date", ylab="Incidence hebdomadaire") +#+END_SRC + +* Étude de l'incidence annuelle + +** Calcul de l'incidence annuelle +Étant donné que le pic de l'épidémie se situe en hiver, à cheval entre deux années civiles, nous définissons la période de référence entre deux minima de l'incidence, du 1er août de l'année /N/ au 1er août de l'année /N+1/. Nous mettons l'année /N+1/ comme étiquette sur cette année décalée, car le pic de l'épidémie est toujours au début de l'année /N+1/. Comme l'incidence du syndrome grippal est très faible en été, cette modification ne risque pas de fausser nos conclusions. + +Voici une fonction qui calcule l'incidence annuelle en appliquant ces conventions. +#+BEGIN_SRC R :results silent +pic_annuel = function(annee) { + debut = paste0(annee-1,"-08-01") + fin = paste0(annee,"-08-01") + semaines = data$date > debut & data$date <= fin + sum(data$inc[semaines], na.rm=TRUE) + } +#+END_SRC + +Nous devons aussi faire attention aux premières et dernières années de notre jeux de données. Les données commencent en octobre 1984, ce qui ne permet pas de quantifier complètement le pic attribué à l'année 1985. Nous le supprimons donc de notre analyse. Pour la même raison, nous arrêtons en 2018. Nous devons attendre les données pour juillet 2019 avant d'augmenter la dernière année à 2019. +#+BEGIN_SRC R :results silent +annees <- 1986:2018 +#+END_SRC + +#+BEGIN_SRC R :results value +inc_annuelle = data.frame(annee = annees, + incidence = sapply(annees, pic_annuel)) +head(inc_annuelle) +#+END_SRC + +** Inspection +Voici les incidences annuelles en graphique. +#+BEGIN_SRC R :results output graphics :file annual-inc-plot.png +plot(inc_annuelle, type="p", xlab="Année", ylab="Incidence annuelle") +#+END_SRC + +** Identification des épidémies les plus fortes +Une liste triée par ordre décroissant d'incidence annuelle permet de plus facilement repérer les valeurs les plus élevées: +#+BEGIN_SRC R :results output +head(inc_annuelle[order(-inc_annuelle$incidence),]) +#+END_SRC + +Enfin, un histogramme montre bien que les épidémies fortes, qui touchent environ 10% de la population française, sont assez rares: il y en eu trois au cours des 35 dernières années. +#+BEGIN_SRC R :results output graphics :file annual-inc-hist.png +hist(inc_annuelle$incidence, breaks=10, xlab="Incidence annuelle", ylab="Nb d'observations", main="") +#+END_SRC diff --git a/module3/exo1/influenza-like-illness-analysis.Rmd b/module3/exo1/influenza-like-illness-analysis.Rmd new file mode 100644 index 0000000000000000000000000000000000000000..8047fa03d3d3cc003416749dd44be6adbb072d04 --- /dev/null +++ b/module3/exo1/influenza-like-illness-analysis.Rmd @@ -0,0 +1,165 @@ +--- +title: "Incidence of influenza-like illness in France" +author: "Konrad Hinsen" +output: + pdf_document: + toc: true + html_document: + toc: true + theme: journal +documentclass: article +classoption: a4paper +header-includes: +- \usepackage[french]{babel} +- \usepackage[upright]{fourier} +- \hypersetup{colorlinks=true,pagebackref=true} +--- + +```{r setup, include=FALSE} +knitr::opts_chunk$set(echo = TRUE) +``` + +## Data preprocessing + +The data on the incidence of influenza-like illness are available from the Web site of the [Réseau Sentinelles](http://www.sentiweb.fr/). We download them as a file in CSV format, in which each line corresponds to a week in the observation period. Only the complete dataset, starting in 1984 and ending with a recent week, is available for download. The URL is: +```{r} +data_url = "http://www.sentiweb.fr/datasets/incidence-PAY-3.csv" +``` + +This is the documentation of the data from [the download site](https://ns.sentiweb.fr/incidence/csv-schema-v1.json): + +| Column name | Description | +|--------------+---------------------------------------------------------------------------------------------------------------------------| +| `week` | ISO8601 Yearweek number as numeric (year*100 + week nubmer) | +| `indicator` | Unique identifier of the indicator, see metadata document https://www.sentiweb.fr/meta.json | +| `inc` | Estimated incidence value for the time step, in the geographic level | +| `inc_low` | Lower bound of the estimated incidence 95% Confidence Interval | +| `inc_up` | Upper bound of the estimated incidence 95% Confidence Interval | +| `inc100` | Estimated rate incidence per 100,000 inhabitants | +| `inc100_low` | Lower bound of the estimated incidence 95% Confidence Interval | +| `inc100_up` | Upper bound of the estimated rate incidence 95% Confidence Interval | +| `geo_insee` | Identifier of the geographic area, from INSEE https://www.insee.fr | +| `geo_name` | Geographic label of the area, corresponding to INSEE code. This label is not an id and is only provided for human reading | + +### Download + +The first line of the CSV file is a comment, which we ignore with `skip=1`. +```{r} +data = read.csv(data_url, skip=1) +``` + +Let's have a look at what we got: +```{r} +head(data) +tail(data) +``` + +Are there missing data points? +```{r} +na_records = apply(data, 1, function (x) any(is.na(x))) +data[na_records,] +``` + +The two relevant columns for us are `week` and `inc`. Let's verify their classes: +```{r} +class(data$week) +class(data$inc) +``` +Integers, fine! + +### Conversion of the week numbers + +Date handling is always a delicate subject. There are many conventions that are easily confused. Our dataset uses the [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) week number format, which is popular in Europe but less so in North America. In `R`, it is handled by the library [parsedate](https://cran.r-project.org/package=parsedate): + +```{r} +library(parsedate) +``` + +In order to facilitate the subsequent treatment, we replace the ISO week numbers by the dates of each week's Monday. This function does it for one value: + +```{r} +convert_week = function(w) { + ws = paste(w) + iso = paste0(substring(ws, 1, 4), "-W", substring(ws, 5, 6)) + as.character(parse_iso_8601(iso)) +} +``` + +We apply it to all points, creating a new column `date` in our data frame: +```{r} +data$date = as.Date(convert_week(data$week)) +``` + +Let's check that is has class `Date`: +```{r} +class(data$date) +``` + +The points are in inverse chronological order, so it's preferable to sort them: +```{r} +data = data[order(data$date),] +``` + +That's a good occasion for another check: our dates should be separated by exactly seven days: +```{r} +all(diff(data$date) == 7) +``` + +### Inspection + +Finally we can look at a plot of our data! +```{r} +plot(data$date, data$inc, type="l", xlab="Date", ylab="Weekly incidence") +``` + +A zoom on the last few years makes the peaks in winter stand out more clearly. +```{r} +with(tail(data, 200), plot(date, inc, type="l", xlab="Date", ylab="Weekly incidence")) +``` + +## Annual incidence + +### Computation + +Since the peaks of the epidemic happen in winter, near the transition between calendar years, we define the reference period for the annual incidence from August 1st of year $N$ to August 1st of year $N+1$. We label this period as year $N+1$ because the peak is always located in year $N+1$. The very low incidence in summer ensures that the arbitrariness of the choice of reference period has no impact on our conclusions. + +The argument `na.rm=True` in the sum indicates that missing data points are removed. This is a reasonable choice since there is only one missing point, whose impact cannot be very strong. +```{r} +yearly_peak = function(year) { + debut = paste0(year-1,"-08-01") + fin = paste0(year,"-08-01") + semaines = data$date > debut & data$date <= fin + sum(data$inc[semaines], na.rm=TRUE) + } +``` + +We must also be careful with the first and last years of the dataset. The data start in October 1984, meaning that we don't have all the data for the peak attributed to the year 1985. We therefore exclude it from the analysis. For the same reason, we define 2018 as the final year. We can increase this value to 2019 only when all data up to July 2019 is available. +```{r} +years = 1986:2018 +``` + +We make a new data frame for the annual incidence, applying the function `yearly_peak` to each year: +```{r} +annnual_inc = data.frame(year = years, + incidence = sapply(years, yearly_peak)) +head(annnual_inc) +``` + +### Inspection + +A plot of the annual incidences: +```{r} +plot(annnual_inc, type="p", xlab="Année", ylab="Annual incidence") +``` + +### Identification of the strongest epidemics + +A list sorted by decreasing annual incidence makes it easy to find the most important ones: +```{r} +head(annnual_inc[order(-annnual_inc$incidence),]) +``` + +Finally, a histogram clearly shows the few very strong epidemics, which affect about 10% of the French population, but are rare: there were three of them in the course of 35 years. The typical epidemic affects only half as many people. +```{r} +hist(annnual_inc$incidence, breaks=10, xlab="Annual incidence", ylab="Number of observations", main="") +``` diff --git a/module3/exo1/influenza-like-illness-analysis.ipynb b/module3/exo1/influenza-like-illness-analysis.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..87092fc69cd90ff457ea56284b789cb0de199a41 --- /dev/null +++ b/module3/exo1/influenza-like-illness-analysis.ipynb @@ -0,0 +1,373 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Incidence of influenza-like illness in France" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "%matplotlib inline\n", + "import matplotlib.pyplot as plt\n", + "import pandas as pd\n", + "import isoweek" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The data on the incidence of influenza-like illness are available from the Web site of the [Réseau Sentinelles](http://www.sentiweb.fr/). We download them as a file in CSV format, in which each line corresponds to a week in the observation period. Only the complete dataset, starting in 1984 and ending with a recent week, is available for download." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "data_url = \"http://www.sentiweb.fr/datasets/incidence-PAY-3.csv\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This is the documentation of the data from [the download site](https://ns.sentiweb.fr/incidence/csv-schema-v1.json):\n", + "\n", + "| Column name | Description |\n", + "|--------------|---------------------------------------------------------------------------------------------------------------------------|\n", + "| `week` | ISO8601 Yearweek number as numeric (year times 100 + week nubmer) |\n", + "| `indicator` | Unique identifier of the indicator, see metadata document https://www.sentiweb.fr/meta.json |\n", + "| `inc` | Estimated incidence value for the time step, in the geographic level |\n", + "| `inc_low` | Lower bound of the estimated incidence 95% Confidence Interval |\n", + "| `inc_up` | Upper bound of the estimated incidence 95% Confidence Interval |\n", + "| `inc100` | Estimated rate incidence per 100,000 inhabitants |\n", + "| `inc100_low` | Lower bound of the estimated incidence 95% Confidence Interval |\n", + "| `inc100_up` | Upper bound of the estimated rate incidence 95% Confidence Interval |\n", + "| `geo_insee` | Identifier of the geographic area, from INSEE https://www.insee.fr |\n", + "| `geo_name` | Geographic label of the area, corresponding to INSEE code. This label is not an id and is only provided for human reading |\n", + "\n", + "The first line of the CSV file is a comment, which we ignore with `skip=1`." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "raw_data = pd.read_csv(data_url, skiprows=1)\n", + "raw_data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Are there missing data points? Yes, week 19 of year 1989 does not have any observed values." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "raw_data[raw_data.isnull().any(axis=1)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We delete this point, which does not have big consequence for our rather simple analysis." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "data = raw_data.dropna().copy()\n", + "data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Our dataset uses an uncommon encoding; the week number is attached\n", + "to the year number, leaving the impression of a six-digit integer.\n", + "That is how Pandas interprets it.\n", + "\n", + "A second problem is that Pandas does not know about week numbers.\n", + "It needs to be given the dates of the beginning and end of the week.\n", + "We use the library `isoweek` for that.\n", + "\n", + "Since the conversion is a bit lengthy, we write a small Python \n", + "function for doing it. Then we apply it to all points in our dataset. \n", + "The results go into a new column 'period'." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "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": [ + "There are two more small changes to make.\n", + "\n", + "First, we define the observation periods as the new index of\n", + "our dataset. That turns it into a time series, which will be\n", + "convenient later on.\n", + "\n", + "Second, we sort the points chronologically." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "sorted_data = data.set_index('period').sort_index()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We check the consistency of the data. Between the end of a period and\n", + "the beginning of the next one, the difference should be zero, or very small.\n", + "We tolerate an error of one second.\n", + "\n", + "This is OK except for one pair of consecutive periods between which\n", + "a whole week is missing.\n", + "\n", + "We recognize the dates: it's the week without observations that we\n", + "have deleted earlier!" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "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": [ + "A first look at the data!" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "sorted_data['inc'].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "A zoom on the last few years shows more clearly that the peaks are situated in winter." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "sorted_data['inc'][-200:].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Study of the annual incidence" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Since the peaks of the epidemic happen in winter, near the transition\n", + "between calendar years, we define the reference period for the annual\n", + "incidence from August 1st of year $N$ to August 1st of year $N+1$. We\n", + "label this period as year $N+1$ because the peak is always located in\n", + "year $N+1$. The very low incidence in summer ensures that the arbitrariness\n", + "of the choice of reference period has no impact on our conclusions.\n", + "\n", + "Our task is a bit complicated by the fact that a year does not have an\n", + "integer number of weeks. Therefore we modify our reference period a bit:\n", + "instead of August 1st, we use the first day of the week containing August 1st.\n", + "\n", + "A final detail: the dataset starts in October 1984, the first peak is thus\n", + "incomplete, We start the analysis with the first full peak." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "first_august_week = [pd.Period(pd.Timestamp(y, 8, 1), 'W')\n", + " for y in range(1985,\n", + " sorted_data.index[-1].year)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Starting from this list of weeks that contain August 1st, we obtain intervals of approximately one year as the periods between two adjacent weeks in this list. We compute the sums of weekly incidences for all these periods.\n", + "\n", + "We also check that our periods contain between 51 and 52 weeks, as a safeguard against potential mistakes in our code." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "year = []\n", + "yearly_incidence = []\n", + "for week1, week2 in zip(first_august_week[:-1],\n", + " first_august_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": [ + "And here are the annual incidences." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "yearly_incidence.plot(style='*')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "A sorted list makes it easier to find the highest values (at the end)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "yearly_incidence.sort_values()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Finally, a histogram clearly shows the few very strong epidemics, which affect about 10% of the French population,\n", + "but are rare: there were three of them in the course of 35 years. The typical epidemic affects only half as many people." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "yearly_incidence.hist(xrot=20)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.1" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} diff --git a/module3/exo1/influenza-like-illness-analysis.org b/module3/exo1/influenza-like-illness-analysis.org new file mode 100644 index 0000000000000000000000000000000000000000..6c8b47ad2eefaa2efae0fcda6640ec8b078e7c32 --- /dev/null +++ b/module3/exo1/influenza-like-illness-analysis.org @@ -0,0 +1,219 @@ +#+TITLE: Incidence of influenza-like illness in France +#+LANGUAGE: en +#+OPTIONS: *:nil num:1 toc:t + +# #+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +#+PROPERTY: header-args :session :exports both + +* Foreword + +For running this analysis, you need the following software: + +** Emacs 25 or higher +Older versions may suffice. For Emacs versions older than 26, org-mode must be updated to version 9.x. +** Python 3.6 or higher +We use the ISO 8601 date format, which has been added to Python's standard library with version 3.6. +#+BEGIN_SRC python :results output +import sys +if sys.version_info.major < 3 or sys.version_info.minor < 6: + print("Please use Python 3.6 (or higher)!") +#+END_SRC + +#+BEGIN_SRC emacs-lisp :results output +(unless (featurep 'ob-python) + (print "Please activate python in org-babel (org-babel-do-languages)!")) +#+END_SRC + +** R 3.4 +We use only basic R functionality, so a earlier version might be OK, but we did not test this. + +#+BEGIN_SRC emacs-lisp :results output +(unless (featurep 'ob-R) + (print "Please activate R in org-babel (org-babel-do-languages)!")) +#+END_SRC + +* Data preprocessing + +The data on the incidence of influenza-like illness are available from the Web site of the [[http://www.sentiweb.fr/][Réseau Sentinelles]]. We download them as a file in CSV format, in which each line corresponds to a week in the observation period. Only the complete dataset, starting in 1984 and ending with a recent week, is available for download. The URL is: +#+NAME: data-url +http://www.sentiweb.fr/datasets/incidence-PAY-3.csv + +This is the documentation of the data from [[https://ns.sentiweb.fr/incidence/csv-schema-v1.json][the download site]]: + +| Column name | Description | +|--------------+---------------------------------------------------------------------------------------------------------------------------| +| ~week~ | ISO8601 Yearweek number as numeric (year*100 + week nubmer) | +| ~indicator~ | Unique identifier of the indicator, see metadata document https://www.sentiweb.fr/meta.json | +| ~inc~ | Estimated incidence value for the time step, in the geographic level | +| ~inc_low~ | Lower bound of the estimated incidence 95% Confidence Interval | +| ~inc_up~ | Upper bound of the estimated incidence 95% Confidence Interval | +| ~inc100~ | Estimated rate incidence per 100,000 inhabitants | +| ~inc100_low~ | Lower bound of the estimated incidence 95% Confidence Interval | +| ~inc100_up~ | Upper bound of the estimated rate incidence 95% Confidence Interval | +| ~geo_insee~ | Identifier of the geographic area, from INSEE https://www.insee.fr | +| ~geo_name~ | Geographic label of the area, corresponding to INSEE code. This label is not an id and is only provided for human reading | + +The [[https://en.wikipedia.org/wiki/ISO_8601][ISO-8601]] format is popular in Europe, but less so in North America. This may explain why few software packages handle this format. The Python language does it since version 3.6. We therefore use Python for the pre-processing phase, which has the advantage of not requiring any additional library. (Note: we will explain in module 4 why it is desirable for reproducibility to use as few external libraries as possible.) + +** Download +After downloading the raw data, we extract the part we are interested in. We first split the file into lines, of which we discard the first one that contains a comment. We then split the remaining lines into columns. + +#+BEGIN_SRC python :results silent :var data_url=data-url +from urllib.request import urlopen + +data = urlopen(data_url).read() +lines = data.decode('latin-1').strip().split('\n') +data_lines = lines[1:] +table = [line.split(',') for line in data_lines] +#+END_SRC + +Let's have a look at what we have so far: +#+BEGIN_SRC python :results value +table[:5] +#+END_SRC + +** Checking for missing data +Unfortunately there are many ways to indicate the absence of a data value in a dataset. Here we check for a common one: empty fields. For completeness, we should also look for non-numerical data in numerical columns. We don't do this here, but checks in later processing steps would catch such anomalies. + +We make a new dataset without the lines that contain empty fields. We print those lines to preserve a trace of their contents. +#+BEGIN_SRC python :results output +valid_table = [] +for row in table: + missing = any([column == '' for column in row]) + if missing: + print(row) + else: + valid_table.append(row) +#+END_SRC + +** Extraction of the required columns +There are only two columns that we will need for our analysis: the first (~"week"~) and the third (~"inc"~). We check the names in the header to be sure we pick the right data. We make a new table containing just the two columns required, without the header. +#+BEGIN_SRC python :results silent +week = [row[0] for row in valid_table] +assert week[0] == 'week' +del week[0] +inc = [row[2] for row in valid_table] +assert inc[0] == 'inc +del inc[0] +data = list(zip(week, inc)) +#+END_SRC + +Let's look at the first and last lines. We insert ~None~ to indicate to org-mode the separation between the three parts of the table: header, first lines, last lines. +#+BEGIN_SRC python :results value +[('week', 'inc'), None] + data[:5] + [None] + data[-5:] +#+END_SRC + +** Verification +It is always prudent to verify if the data looks credible. A simple fact we can check for is that weeks are given as six-digit integers (four for the year, two for the week), and that the incidence values are positive integers. +#+BEGIN_SRC python :results output +for week, inc in data: + if len(week) != 6 or not week.isdigit(): + print("Suspicious value in column 'week': ", (week, inc)) + if not inc.isdigit(): + print("Suspicious value in column 'inc': ", (week, inc)) +#+END_SRC + +No problem - fine! + +** Date conversion +In order to facilitate the subsequent treatment, we replace the ISO week numbers by the dates of each week's Monday. This is also a good occasion to sort the lines by increasing data, and to convert the incidences from strings to integers. + +#+BEGIN_SRC python :results silent +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 + +We'll look again at the first and last lines: +#+BEGIN_SRC python :results value +str_data = [(str(date), str(inc)) for date, inc in converted_data] +[('date', 'inc'), None] + str_data[:5] + [None] + str_data[-5:] +#+END_SRC + +** Date verification +We do one more verification: our dates must be separated by exactly one week, except around the missing data point. +#+BEGIN_SRC python :results output +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"The difference between {date1} and {date2} is {date2-date1}") +#+END_SRC + +** Transfer Python -> R +We switch to R for data inspection and analysis, because the code is more concise in R and requires no additional libraries. + +Org-mode's data exchange mechanism requires some Python code for transforming the data to the right format. +#+NAME: data-for-R +#+BEGIN_SRC python :results silent +[('date', 'inc'), None] + [(str(date), inc) for date, inc in converted_data] +#+END_SRC + +In R, the dataset arrives as a data frame, which is fine. But the dates arrive as strings and must be converted. +#+BEGIN_SRC R :results output :var data=data-for-R +data$date <- as.Date(data$date) +summary(data) +#+END_SRC + +** Inspection +Finally we can look at a plot of our data! +#+BEGIN_SRC R :results output graphics :file inc-plot.png +plot(data, type="l", xlab="Date", ylab="Weekly incidence") +#+END_SRC + +A zoom on the last few years makes the peaks in winter stand out more clearly. +#+BEGIN_SRC R :results output graphics :file inc-plot-zoom.png +plot(tail(data, 200), type="l", xlab="Date", ylab="Weekly incidence") +#+END_SRC + +* Study of the annual incidence + +** Computation of the annual incidence +Since the peaks of the epidemic happen in winter, near the transition between calendar years, we define the reference period for the annual incidence from August 1st of year /N/ to August 1st of year /N+1/. We label this period as year /N+1/ because the peak is always located in year /N+1/. The very low incidence in summer ensures that the arbitrariness of the choice of reference period has no impact on our conclusions. + +This R function computes the annual incidence as defined above: +#+BEGIN_SRC R :results silent +yearly_peak = function(year) { + debut = paste0(year-1,"-08-01") + fin = paste0(year,"-08-01") + semaines = data$date > debut & data$date <= fin + sum(data$inc[semaines], na.rm=TRUE) + } +#+END_SRC + +We must also be careful with the first and last years of the dataset. The data start in October 1984, meaning that we don't have all the data for the peak attributed to the year 1985. We therefore exclude it from the analysis. For the same reason, we define 2018 as the final year. We can increase this value to 2019 only when all data up to July 2019 is available. +#+BEGIN_SRC R :results silent +years <- 1986:2018 +#+END_SRC + +We make a new data frame for the annual incidence, applying the function ~yearly_peak~ to each year: +#+BEGIN_SRC R :results value +annnual_inc = data.frame(year = years, + incidence = sapply(years, yearly_peak)) +head(annnual_inc) +#+END_SRC + +** Inspection +A plot of the annual incidence: +#+BEGIN_SRC R :results output graphics :file annual-inc-plot.png +plot(annnual_inc, type="p", xlab="Année", ylab="Annual incidence") +#+END_SRC + +** Identification of the strongest epidemics +A list sorted by decreasing annual incidence makes it easy to find the most important ones: +#+BEGIN_SRC R :results output +head(annnual_inc[order(-annnual_inc$incidence),]) +#+END_SRC + +Finally, a histogram clearly shows the few very strong epidemics, which affect about 10% of the French population, but are rare: there were three of them in the course of 35 years. The typical epidemic affects only half as many people. +#+BEGIN_SRC R :results output graphics :file annual-inc-hist.png +hist(annnual_inc$incidence, breaks=10, xlab="Annual incidence", ylab="Number of observations", main="") +#+END_SRC diff --git a/module3/exo2/exercice.ipynb b/module3/exo2/exercice.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module3/exo2/exercice.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module3/exo2/exercice_R_en.org b/module3/exo2/exercice_R_en.org new file mode 100644 index 0000000000000000000000000000000000000000..2b73d64e82dad485ab562f8bda6434ffa7b68d27 --- /dev/null +++ b/module3/exo2/exercice_R_en.org @@ -0,0 +1,81 @@ +#+TITLE: Your title +#+AUTHOR: Your name +#+DATE: Today's date +#+LANGUAGE: en +# #+PROPERTY: header-args :eval never-export + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Some explanations + +This is an org-mode document with code examples in R. Once opened in +Emacs, this document can easily be exported to HTML, PDF, and Office +formats. For more information on org-mode, see +https://orgmode.org/guide/. + +When you type the shortcut =C-c C-e h o=, this document will be +exported as HTML. All the code in it will be re-executed, and the +results will be retrieved and included into the exported document. If +you do not want to re-execute all code each time, you can delete the # +and the space before ~#+PROPERTY:~ in the header of this document. + +Like we showed in the video, R code is included as follows (and is +exxecuted by typing ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +And now the same but in an R session. This is the most frequent +situation, because R is really an interactive language. With a +session, R's state, i.e. the values of all the variables, remains +persistent from one code block to the next. The code is still executed +using ~C-c C-c~. + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Finally, an example for graphical output: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Note the parameter ~:exports results~, which indicates that the code +will not appear in the exported document. We recommend that in the +context of this MOOC, you always leave this parameter setting as +~:exports both~, because we want your analyses to be perfectly +transparent and reproducible. + +Watch out: the figure generated by the code block is /not/ stored in +the org document. It's a plain file, here named ~cars.png~. You have +to commit it explicitly if you want your analysis to be legible and +understandable on GitLab. + +Finally, don't forget that we provide in the resource section of this +MOOC a configuration with a few keyboard shortcuts that allow you to +quickly create code blocks in R by typing ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +R. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclut du code +R de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +Voici la même chose, mais avec une session R (c'est le cas le +plus courant, R étant vraiment un langage interactif), donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Et enfin, voici un exemple de sortie graphique: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cars.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, pour les prochains exercices, nous ne vous fournirons pas +forcément de fichier de départ, ça sera à vous de le créer, par +exemple en repartant de ce document et de le commiter vers +gitlab. N'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code R (en +faisant ~. + +When you click on the button **Knit**, the document will be compiled in order to re-execute the R code and to include the results into the final document. As we have shown in the video, R code is inserted as follows: + +```{r cars} +summary(cars) +``` + +It is also straightforward to include figures. For example: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Note the parameter `echo = FALSE` that indicates that the code will not appear in the final version of the document. We recommend not to use this parameter in the context of this MOOC, because we want your data analyses to be perfectly transparent and reproducible. + +Since the results are not stored in Rmd files, you should generate an HTML or PDF version of your exercises and commit them. Otherwise reading and checking your analysis will be difficult for anyone else but you. + +Now it's your turn! You can delete all this information and replace it by your computational document. diff --git a/module3/exo2/exercice_en.ipynb b/module3/exo2/exercice_en.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module3/exo2/exercice_en.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module3/exo2/exercice_fr.Rmd b/module3/exo2/exercice_fr.Rmd new file mode 100644 index 0000000000000000000000000000000000000000..7eece5e296bb586e88166aa8a263ca75b44c2b9e --- /dev/null +++ b/module3/exo2/exercice_fr.Rmd @@ -0,0 +1,33 @@ +--- +title: "Votre titre" +author: "Votre nom" +date: "La date du jour" +output: html_document +--- + + +```{r setup, include=FALSE} +knitr::opts_chunk$set(echo = TRUE) +``` + +## Quelques explications + +Ceci est un document R markdown que vous pouvez aisément exporter au format HTML, PDF, et MS Word. Pour plus de détails sur R Markdown consultez . + +Lorsque vous cliquerez sur le bouton **Knit** ce document sera compilé afin de ré-exécuter le code R et d'inclure les résultats dans un document final. Comme nous vous l'avons montré dans la vidéo, on inclue du code R de la façon suivante: + +```{r cars} +summary(cars) +``` + +Et on peut aussi aisément inclure des figures. Par exemple: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Vous remarquerez le paramètre `echo = FALSE` qui indique que le code ne doit pas apparaître dans la version finale du document. Nous vous recommandons dans le cadre de ce MOOC de ne pas utiliser ce paramètre car l'objectif est que vos analyses de données soient parfaitement transparentes pour être reproductibles. + +Comme les résultats ne sont pas stockés dans les fichiers Rmd, pour faciliter la relecture de vos analyses par d'autres personnes, vous aurez donc intérêt à générer un HTML ou un PDF et à le commiter. + +Maintenant, à vous de jouer! Vous pouvez effacer toutes ces informations et les remplacer par votre document computationnel. diff --git a/module3/exo2/exercice_fr.ipynb b/module3/exo2/exercice_fr.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module3/exo2/exercice_fr.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module3/exo2/exercice_python_en.org b/module3/exo2/exercice_python_en.org new file mode 100644 index 0000000000000000000000000000000000000000..5782f493934678ba782fb65634a4d86e5f3adefc --- /dev/null +++ b/module3/exo2/exercice_python_en.org @@ -0,0 +1,94 @@ +#+TITLE: Your title +#+AUTHOR: Your name +#+DATE: Today's date +#+LANGUAGE: en +# #+PROPERTY: header-args :eval never-export + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Some explanations + +This is an org-mode document with code examples in R. Once opened in +Emacs, this document can easily be exported to HTML, PDF, and Office +formats. For more information on org-mode, see +https://orgmode.org/guide/. + +When you type the shortcut =C-c C-e h o=, this document will be +exported as HTML. All the code in it will be re-executed, and the +results will be retrieved and included into the exported document. If +you do not want to re-execute all code each time, you can delete the # +and the space before ~#+PROPERTY:~ in the header of this document. + +Like we showed in the video, Python code is included as follows (and +is exxecuted by typing ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +And now the same but in an Python session. With a session, Python's +state, i.e. the values of all the variables, remains persistent from +one code block to the next. The code is still executed using ~C-c +C-c~. + +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Finally, an example for graphical output: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Note the parameter ~:exports results~, which indicates that the code +will not appear in the exported document. We recommend that in the +context of this MOOC, you always leave this parameter setting as +~:exports both~, because we want your analyses to be perfectly +transparent and reproducible. + +Watch out: the figure generated by the code block is /not/ stored in +the org document. It's a plain file, here named ~cosxsx.png~. You have +to commit it explicitly if you want your analysis to be legible and +understandable on GitLab. + +Finally, don't forget that we provide in the resource section of this +MOOC a configuration with a few keyboard shortcuts that allow you to +quickly create code blocks in Python by typing ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +python. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclue du code +python de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +Voici la même chose, mais avec une session python, donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Et enfin, voici un exemple de sortie graphique: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cosxsx.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, n'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code python (en +faisant ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Some explanations + +This is an org-mode document with code examples in R. Once opened in +Emacs, this document can easily be exported to HTML, PDF, and Office +formats. For more information on org-mode, see +https://orgmode.org/guide/. + +When you type the shortcut =C-c C-e h o=, this document will be +exported as HTML. All the code in it will be re-executed, and the +results will be retrieved and included into the exported document. If +you do not want to re-execute all code each time, you can delete the # +and the space before ~#+PROPERTY:~ in the header of this document. + +Like we showed in the video, R code is included as follows (and is +exxecuted by typing ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +And now the same but in an R session. This is the most frequent +situation, because R is really an interactive language. With a +session, R's state, i.e. the values of all the variables, remains +persistent from one code block to the next. The code is still executed +using ~C-c C-c~. + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Finally, an example for graphical output: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Note the parameter ~:exports results~, which indicates that the code +will not appear in the exported document. We recommend that in the +context of this MOOC, you always leave this parameter setting as +~:exports both~, because we want your analyses to be perfectly +transparent and reproducible. + +Watch out: the figure generated by the code block is /not/ stored in +the org document. It's a plain file, here named ~cars.png~. You have +to commit it explicitly if you want your analysis to be legible and +understandable on GitLab. + +Finally, don't forget that we provide in the resource section of this +MOOC a configuration with a few keyboard shortcuts that allow you to +quickly create code blocks in R by typing ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +R. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclut du code +R de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +Voici la même chose, mais avec une session R (c'est le cas le +plus courant, R étant vraiment un langage interactif), donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Et enfin, voici un exemple de sortie graphique: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cars.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, pour les prochains exercices, nous ne vous fournirons pas +forcément de fichier de départ, ça sera à vous de le créer, par +exemple en repartant de ce document et de le commiter vers +gitlab. N'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code R (en +faisant ~. + +When you click on the button **Knit**, the document will be compiled in order to re-execute the R code and to include the results into the final document. As we have shown in the video, R code is inserted as follows: + +```{r cars} +summary(cars) +``` + +It is also straightforward to include figures. For example: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Note the parameter `echo = FALSE` that indicates that the code will not appear in the final version of the document. We recommend not to use this parameter in the context of this MOOC, because we want your data analyses to be perfectly transparent and reproducible. + +Since the results are not stored in Rmd files, you should generate an HTML or PDF version of your exercises and commit them. Otherwise reading and checking your analysis will be difficult for anyone else but you. + +Now it's your turn! You can delete all this information and replace it by your computational document. diff --git a/module3/exo3/exercice_en.ipynb b/module3/exo3/exercice_en.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module3/exo3/exercice_en.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module3/exo3/exercice_fr.Rmd b/module3/exo3/exercice_fr.Rmd new file mode 100644 index 0000000000000000000000000000000000000000..7eece5e296bb586e88166aa8a263ca75b44c2b9e --- /dev/null +++ b/module3/exo3/exercice_fr.Rmd @@ -0,0 +1,33 @@ +--- +title: "Votre titre" +author: "Votre nom" +date: "La date du jour" +output: html_document +--- + + +```{r setup, include=FALSE} +knitr::opts_chunk$set(echo = TRUE) +``` + +## Quelques explications + +Ceci est un document R markdown que vous pouvez aisément exporter au format HTML, PDF, et MS Word. Pour plus de détails sur R Markdown consultez . + +Lorsque vous cliquerez sur le bouton **Knit** ce document sera compilé afin de ré-exécuter le code R et d'inclure les résultats dans un document final. Comme nous vous l'avons montré dans la vidéo, on inclue du code R de la façon suivante: + +```{r cars} +summary(cars) +``` + +Et on peut aussi aisément inclure des figures. Par exemple: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Vous remarquerez le paramètre `echo = FALSE` qui indique que le code ne doit pas apparaître dans la version finale du document. Nous vous recommandons dans le cadre de ce MOOC de ne pas utiliser ce paramètre car l'objectif est que vos analyses de données soient parfaitement transparentes pour être reproductibles. + +Comme les résultats ne sont pas stockés dans les fichiers Rmd, pour faciliter la relecture de vos analyses par d'autres personnes, vous aurez donc intérêt à générer un HTML ou un PDF et à le commiter. + +Maintenant, à vous de jouer! Vous pouvez effacer toutes ces informations et les remplacer par votre document computationnel. diff --git a/module3/exo3/exercice_fr.ipynb b/module3/exo3/exercice_fr.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..0bbbe371b01e359e381e43239412d77bf53fb1fb --- /dev/null +++ b/module3/exo3/exercice_fr.ipynb @@ -0,0 +1,25 @@ +{ + "cells": [], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} + diff --git a/module3/exo3/exercice_python_en.org b/module3/exo3/exercice_python_en.org new file mode 100644 index 0000000000000000000000000000000000000000..5782f493934678ba782fb65634a4d86e5f3adefc --- /dev/null +++ b/module3/exo3/exercice_python_en.org @@ -0,0 +1,94 @@ +#+TITLE: Your title +#+AUTHOR: Your name +#+DATE: Today's date +#+LANGUAGE: en +# #+PROPERTY: header-args :eval never-export + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Some explanations + +This is an org-mode document with code examples in R. Once opened in +Emacs, this document can easily be exported to HTML, PDF, and Office +formats. For more information on org-mode, see +https://orgmode.org/guide/. + +When you type the shortcut =C-c C-e h o=, this document will be +exported as HTML. All the code in it will be re-executed, and the +results will be retrieved and included into the exported document. If +you do not want to re-execute all code each time, you can delete the # +and the space before ~#+PROPERTY:~ in the header of this document. + +Like we showed in the video, Python code is included as follows (and +is exxecuted by typing ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +And now the same but in an Python session. With a session, Python's +state, i.e. the values of all the variables, remains persistent from +one code block to the next. The code is still executed using ~C-c +C-c~. + +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Finally, an example for graphical output: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Note the parameter ~:exports results~, which indicates that the code +will not appear in the exported document. We recommend that in the +context of this MOOC, you always leave this parameter setting as +~:exports both~, because we want your analyses to be perfectly +transparent and reproducible. + +Watch out: the figure generated by the code block is /not/ stored in +the org document. It's a plain file, here named ~cosxsx.png~. You have +to commit it explicitly if you want your analysis to be legible and +understandable on GitLab. + +Finally, don't forget that we provide in the resource section of this +MOOC a configuration with a few keyboard shortcuts that allow you to +quickly create code blocks in Python by typing ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +python. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclue du code +python de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +Voici la même chose, mais avec une session python, donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Et enfin, voici un exemple de sortie graphique: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cosxsx.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, n'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code python (en +faisant ~. + +Lorsque vous cliquerez sur le bouton **Knit** ce document sera compilé afin de ré-exécuter le code R et d'inclure les résultats dans un document final. Comme nous vous l'avons montré dans la vidéo, on inclue du code R de la façon suivante: + +```{r cars} +summary(cars) +``` + +Et on peut aussi aisément inclure des figures. Par exemple: + +```{r pressure, echo=FALSE} +plot(pressure) +``` + +Vous remarquerez le paramètre `echo = FALSE` qui indique que le code ne doit pas apparaître dans la version finale du document. Nous vous recommandons dans le cadre de ce MOOC de ne pas utiliser ce paramètre car l'objectif est que vos analyses de données soient parfaitement transparentes pour être reproductibles. + +Comme les résultats ne sont pas stockés dans les fichiers Rmd, pour faciliter la relecture de vos analyses par d'autres personnes, vous aurez donc intérêt à générer un HTML ou un PDF et à le commiter. +Enfin, pour les prochains exercices, nous ne vous fournirons pas forcément de fichier de départ, ça sera à vous de le créer à partir de Rstudio et de le commiter vers gitlab. + +Maintenant, à vous de jouer! Vous pouvez effacer toutes ces informations pour essayer de reproduire le document sur le calcul de $\pi$. diff --git a/templates/toy_document_orgmode_R.org b/templates/toy_document_orgmode_R.org new file mode 100644 index 0000000000000000000000000000000000000000..aae7161a3d99fffbb5d4a0dcf7e63181e9f213d5 --- /dev/null +++ b/templates/toy_document_orgmode_R.org @@ -0,0 +1,86 @@ +#+TITLE: Votre titre +#+AUTHOR: Votre nom +#+DATE: La date du jour +#+LANGUAGE: fr +# #+PROPERTY: header-args :eval never-export +# #### :session :exports both + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +R. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclut du code +R de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src R :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: [1] "Hello world!" + +Voici la même chose, mais avec une session python (c'est le cas le +plus courant, R étant vraiment un langage interactif), donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). + +#+begin_src R :results output :session *R* :exports both +summary(cars) +#+end_src + +#+RESULTS: +: speed dist +: Min. : 4.0 Min. : 2.00 +: 1st Qu.:12.0 1st Qu.: 26.00 +: Median :15.0 Median : 36.00 +: Mean :15.4 Mean : 42.98 +: 3rd Qu.:19.0 3rd Qu.: 56.00 +: Max. :25.0 Max. :120.00 + +Et enfin, voici un exemple de sortie graphique: +#+begin_src R :results output graphics :file "./cars.png" :exports results :width 600 :height 400 :session *R* +plot(cars) +#+end_src + +#+RESULTS: +[[file:./cars.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cars.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, pour les prochains exercices, nous ne vous fournirons pas +forcément de fichier de départ, ça sera à vous de le créer, par +exemple en repartant de ce document et de le commiter vers +gitlab. N'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code python (en +faisant ~ +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +* Quelques explications + +Ceci est un document org-mode avec quelques exemples de code +python. Une fois ouvert dans emacs, ce document peut aisément être +exporté au format HTML, PDF, et Office. Pour plus de détails sur +org-mode vous pouvez consulter https://orgmode.org/guide/. + +Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera +compilé en html. Tout le code contenu sera ré-exécuté, les résultats +récupérés et inclus dans un document final. Si vous ne souhaitez pas +ré-exécuter tout le code à chaque fois, il vous suffit de supprimer +le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce +document. + +Comme nous vous l'avons montré dans la vidéo, on inclue du code +python de la façon suivante (et on l'exécute en faisant ~C-c C-c~): + +#+begin_src python :results output :exports both +print("Hello world!") +#+end_src + +#+RESULTS: +: Hello world! + +Voici la même chose, mais avec une session python, donc une +persistance d'un bloc à l'autre (et on l'exécute toujours en faisant +~C-c C-c~). +#+begin_src python :results output :session :exports both +import numpy +x=numpy.linspace(-15,15) +print(x) +#+end_src + +#+RESULTS: +#+begin_example +[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 + -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 + -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 + -5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694 + -2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245 + 0.30612245 0.91836735 1.53061224 2.14285714 2.75510204 + 3.36734694 3.97959184 4.59183673 5.20408163 5.81632653 + 6.42857143 7.04081633 7.65306122 8.26530612 8.87755102 + 9.48979592 10.10204082 10.71428571 11.32653061 11.93877551 + 12.55102041 13.16326531 13.7755102 14.3877551 15. ] +#+end_example + +Et enfin, voici un exemple de sortie graphique: +#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results +import matplotlib.pyplot as plt + +plt.figure(figsize=(10,5)) +plt.plot(x,numpy.cos(x)/x) +plt.tight_layout() + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:./cosxsx.png]] + +Vous remarquerez le paramètre ~:exports results~ qui indique que le code +ne doit pas apparaître dans la version finale du document. Nous vous +recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre +(indiquer ~both~) car l'objectif est que vos analyses de données soient +parfaitement transparentes pour être reproductibles. + +Attention, la figure ainsi générée n'est pas stockée dans le document +org. C'est un fichier ordinaire, ici nommé ~cosxsx.png~. N'oubliez pas +de le committer si vous voulez que votre analyse soit lisible et +compréhensible sur GitLab. + +Enfin, pour les prochains exercices, nous ne vous fournirons pas +forcément de fichier de départ, ça sera à vous de le créer, par +exemple en repartant de ce document et de le commiter vers +gitlab. N'oubliez pas que nous vous fournissons dans les ressources de +ce MOOC une configuration avec un certain nombre de raccourcis +claviers permettant de créer rapidement les blocs de code python (en +faisant ~