diff --git a/module3/ressources/analyse-syndrome-grippal-jupyter.ipynb b/module3/ressources/analyse-syndrome-grippal-jupyter.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..9839ff80c36dc0b5f3e4810805477a3ebd2aec35 --- /dev/null +++ b/module3/ressources/analyse-syndrome-grippal-jupyter.ipynb @@ -0,0 +1,2534 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Incidence du syndrome grippal" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "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": [ + "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. Les dates de départ et de fin sont codées dans l'URL: \"wstart=198501\" pour semaine 1 de l'année 1985 et \"wend=201730\" pour semaine 30 de l'année 2017. La première ligne du fichier CSV est un commentaire, que nous ignorons en précisant `skiprows=1`." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "data_url = \"http://websenti.u707.jussieu.fr/sentiweb/api/data/rest/getIncidenceFlat?indicator=3&wstart=198501&wend=201730&geo=PAY1&$format=csv\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Voici l'explication des colonnes données sur le site d'origine:\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" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "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
0201730337591299.06219.062.010.0FRFrance
1201729350141989.08039.083.013.0FRFrance
2201728352712576.07966.084.012.0FRFrance
3201727339241432.06416.062.010.0FRFrance
4201726331711166.05176.052.08.0FRFrance
520172538370.01721.010.02.0FRFrance
620172431566248.02884.020.04.0FRFrance
720172331664203.03125.031.05.0FRFrance
82017223130592.02518.020.04.0FRFrance
920172139710.02046.010.03.0FRFrance
1020172032686793.04579.041.07.0FRFrance
11201719334611490.05432.052.08.0FRFrance
1220171832102515.03689.031.05.0FRFrance
1320171732071428.03714.030.06.0FRFrance
1420171631380222.02538.020.04.0FRFrance
1520171534790.01242.010.02.0FRFrance
16201714311100.02549.020.04.0FRFrance
17201713375943808.011380.0126.018.0FRFrance
18201712387804834.012726.0137.019.0FRFrance
19201711378144329.011299.0127.017.0FRFrance
202017103118027964.015640.01812.024.0FRFrance
212017093131119099.017123.02014.026.0FRFrance
2220170832954523136.035954.04535.055.0FRFrance
2320170735959049764.069416.09176.0106.0FRFrance
2420170639362882560.0104696.0144127.0161.0FRFrance
252017053193677179255.0208099.0297275.0319.0FRFrance
262017043256428240618.0272238.0394370.0418.0FRFrance
272017033267276251345.0283207.0410386.0434.0FRFrance
282017023260588245070.0276106.0400376.0424.0FRFrance
292017013255535239743.0271327.0392368.0416.0FRFrance
.................................
16701985303115985507.017689.02110.032.0FRFrance
16711985293130546474.019634.02412.036.0FRFrance
16721985283145887659.021517.02613.039.0FRFrance
167319852731967011761.027579.03622.050.0FRFrance
167419852631860912637.024581.03423.045.0FRFrance
167519852531936212454.026270.03522.048.0FRFrance
167619852431985513577.026133.03625.047.0FRFrance
167719852331937310010.028736.03518.052.0FRFrance
167819852232409917190.031008.04431.057.0FRFrance
167919852132609619621.032571.04735.059.0FRFrance
168019852032789620885.034907.05138.064.0FRFrance
168119851934315432821.053487.07859.097.0FRFrance
168219851834055529935.051175.07455.093.0FRFrance
168319851733405324366.043740.06244.080.0FRFrance
168419851635036236451.064273.09166.0116.0FRFrance
168519851536388145538.082224.011683.0149.0FRFrance
16861985143134545114400.0154690.0244207.0281.0FRFrance
16871985133197206176080.0218332.0357319.0395.0FRFrance
16881985123245240223304.0267176.0445405.0485.0FRFrance
16891985113276205252399.0300011.0501458.0544.0FRFrance
16901985103353231326279.0380183.0640591.0689.0FRFrance
16911985093369895341109.0398681.0670618.0722.0FRFrance
16921985083389886359529.0420243.0707652.0762.0FRFrance
16931985073471852432599.0511105.0855784.0926.0FRFrance
16941985063565825518011.0613639.01026939.01113.0FRFrance
16951985053637302592795.0681809.011551074.01236.0FRFrance
16961985043424937390794.0459080.0770708.0832.0FRFrance
16971985033213901174689.0253113.0388317.0459.0FRFrance
169819850239758680949.0114223.0177147.0207.0FRFrance
169919850138548965918.0105060.0155120.0190.0FRFrance
\n", + "

1700 rows × 10 columns

\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low \\\n", + "0 201730 3 3759 1299.0 6219.0 6 2.0 \n", + "1 201729 3 5014 1989.0 8039.0 8 3.0 \n", + "2 201728 3 5271 2576.0 7966.0 8 4.0 \n", + "3 201727 3 3924 1432.0 6416.0 6 2.0 \n", + "4 201726 3 3171 1166.0 5176.0 5 2.0 \n", + "5 201725 3 837 0.0 1721.0 1 0.0 \n", + "6 201724 3 1566 248.0 2884.0 2 0.0 \n", + "7 201723 3 1664 203.0 3125.0 3 1.0 \n", + "8 201722 3 1305 92.0 2518.0 2 0.0 \n", + "9 201721 3 971 0.0 2046.0 1 0.0 \n", + "10 201720 3 2686 793.0 4579.0 4 1.0 \n", + "11 201719 3 3461 1490.0 5432.0 5 2.0 \n", + "12 201718 3 2102 515.0 3689.0 3 1.0 \n", + "13 201717 3 2071 428.0 3714.0 3 0.0 \n", + "14 201716 3 1380 222.0 2538.0 2 0.0 \n", + "15 201715 3 479 0.0 1242.0 1 0.0 \n", + "16 201714 3 1110 0.0 2549.0 2 0.0 \n", + "17 201713 3 7594 3808.0 11380.0 12 6.0 \n", + "18 201712 3 8780 4834.0 12726.0 13 7.0 \n", + "19 201711 3 7814 4329.0 11299.0 12 7.0 \n", + "20 201710 3 11802 7964.0 15640.0 18 12.0 \n", + "21 201709 3 13111 9099.0 17123.0 20 14.0 \n", + "22 201708 3 29545 23136.0 35954.0 45 35.0 \n", + "23 201707 3 59590 49764.0 69416.0 91 76.0 \n", + "24 201706 3 93628 82560.0 104696.0 144 127.0 \n", + "25 201705 3 193677 179255.0 208099.0 297 275.0 \n", + "26 201704 3 256428 240618.0 272238.0 394 370.0 \n", + "27 201703 3 267276 251345.0 283207.0 410 386.0 \n", + "28 201702 3 260588 245070.0 276106.0 400 376.0 \n", + "29 201701 3 255535 239743.0 271327.0 392 368.0 \n", + "... ... ... ... ... ... ... ... \n", + "1670 198530 3 11598 5507.0 17689.0 21 10.0 \n", + "1671 198529 3 13054 6474.0 19634.0 24 12.0 \n", + "1672 198528 3 14588 7659.0 21517.0 26 13.0 \n", + "1673 198527 3 19670 11761.0 27579.0 36 22.0 \n", + "1674 198526 3 18609 12637.0 24581.0 34 23.0 \n", + "1675 198525 3 19362 12454.0 26270.0 35 22.0 \n", + "1676 198524 3 19855 13577.0 26133.0 36 25.0 \n", + "1677 198523 3 19373 10010.0 28736.0 35 18.0 \n", + "1678 198522 3 24099 17190.0 31008.0 44 31.0 \n", + "1679 198521 3 26096 19621.0 32571.0 47 35.0 \n", + "1680 198520 3 27896 20885.0 34907.0 51 38.0 \n", + "1681 198519 3 43154 32821.0 53487.0 78 59.0 \n", + "1682 198518 3 40555 29935.0 51175.0 74 55.0 \n", + "1683 198517 3 34053 24366.0 43740.0 62 44.0 \n", + "1684 198516 3 50362 36451.0 64273.0 91 66.0 \n", + "1685 198515 3 63881 45538.0 82224.0 116 83.0 \n", + "1686 198514 3 134545 114400.0 154690.0 244 207.0 \n", + "1687 198513 3 197206 176080.0 218332.0 357 319.0 \n", + "1688 198512 3 245240 223304.0 267176.0 445 405.0 \n", + "1689 198511 3 276205 252399.0 300011.0 501 458.0 \n", + "1690 198510 3 353231 326279.0 380183.0 640 591.0 \n", + "1691 198509 3 369895 341109.0 398681.0 670 618.0 \n", + "1692 198508 3 389886 359529.0 420243.0 707 652.0 \n", + "1693 198507 3 471852 432599.0 511105.0 855 784.0 \n", + "1694 198506 3 565825 518011.0 613639.0 1026 939.0 \n", + "1695 198505 3 637302 592795.0 681809.0 1155 1074.0 \n", + "1696 198504 3 424937 390794.0 459080.0 770 708.0 \n", + "1697 198503 3 213901 174689.0 253113.0 388 317.0 \n", + "1698 198502 3 97586 80949.0 114223.0 177 147.0 \n", + "1699 198501 3 85489 65918.0 105060.0 155 120.0 \n", + "\n", + " inc100_up geo_insee geo_name \n", + "0 10.0 FR France \n", + "1 13.0 FR France \n", + "2 12.0 FR France \n", + "3 10.0 FR France \n", + "4 8.0 FR France \n", + "5 2.0 FR France \n", + "6 4.0 FR France \n", + "7 5.0 FR France \n", + "8 4.0 FR France \n", + "9 3.0 FR France \n", + "10 7.0 FR France \n", + "11 8.0 FR France \n", + "12 5.0 FR France \n", + "13 6.0 FR France \n", + "14 4.0 FR France \n", + "15 2.0 FR France \n", + "16 4.0 FR France \n", + "17 18.0 FR France \n", + "18 19.0 FR France \n", + "19 17.0 FR France \n", + "20 24.0 FR France \n", + "21 26.0 FR France \n", + "22 55.0 FR France \n", + "23 106.0 FR France \n", + "24 161.0 FR France \n", + "25 319.0 FR France \n", + "26 418.0 FR France \n", + "27 434.0 FR France \n", + "28 424.0 FR France \n", + "29 416.0 FR France \n", + "... ... ... ... \n", + "1670 32.0 FR France \n", + "1671 36.0 FR France \n", + "1672 39.0 FR France \n", + "1673 50.0 FR France \n", + "1674 45.0 FR France \n", + "1675 48.0 FR France \n", + "1676 47.0 FR France \n", + "1677 52.0 FR France \n", + "1678 57.0 FR France \n", + "1679 59.0 FR France \n", + "1680 64.0 FR France \n", + "1681 97.0 FR France \n", + "1682 93.0 FR France \n", + "1683 80.0 FR France \n", + "1684 116.0 FR France \n", + "1685 149.0 FR France \n", + "1686 281.0 FR France \n", + "1687 395.0 FR France \n", + "1688 485.0 FR France \n", + "1689 544.0 FR France \n", + "1690 689.0 FR France \n", + "1691 722.0 FR France \n", + "1692 762.0 FR France \n", + "1693 926.0 FR France \n", + "1694 1113.0 FR France \n", + "1695 1236.0 FR France \n", + "1696 832.0 FR France \n", + "1697 459.0 FR France \n", + "1698 207.0 FR France \n", + "1699 190.0 FR France \n", + "\n", + "[1700 rows x 10 columns]" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "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": 4, + "metadata": { + "collapsed": false + }, + "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
14721989193-NaNNaN-NaNNaNFRFrance
\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low inc100_up \\\n", + "1472 198919 3 - NaN NaN - NaN NaN \n", + "\n", + " geo_insee geo_name \n", + "1472 FR France " + ] + }, + "execution_count": 4, + "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": 5, + "metadata": { + "collapsed": false + }, + "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
0201730337591299.06219.062.010.0FRFrance
1201729350141989.08039.083.013.0FRFrance
2201728352712576.07966.084.012.0FRFrance
3201727339241432.06416.062.010.0FRFrance
4201726331711166.05176.052.08.0FRFrance
520172538370.01721.010.02.0FRFrance
620172431566248.02884.020.04.0FRFrance
720172331664203.03125.031.05.0FRFrance
82017223130592.02518.020.04.0FRFrance
920172139710.02046.010.03.0FRFrance
1020172032686793.04579.041.07.0FRFrance
11201719334611490.05432.052.08.0FRFrance
1220171832102515.03689.031.05.0FRFrance
1320171732071428.03714.030.06.0FRFrance
1420171631380222.02538.020.04.0FRFrance
1520171534790.01242.010.02.0FRFrance
16201714311100.02549.020.04.0FRFrance
17201713375943808.011380.0126.018.0FRFrance
18201712387804834.012726.0137.019.0FRFrance
19201711378144329.011299.0127.017.0FRFrance
202017103118027964.015640.01812.024.0FRFrance
212017093131119099.017123.02014.026.0FRFrance
2220170832954523136.035954.04535.055.0FRFrance
2320170735959049764.069416.09176.0106.0FRFrance
2420170639362882560.0104696.0144127.0161.0FRFrance
252017053193677179255.0208099.0297275.0319.0FRFrance
262017043256428240618.0272238.0394370.0418.0FRFrance
272017033267276251345.0283207.0410386.0434.0FRFrance
282017023260588245070.0276106.0400376.0424.0FRFrance
292017013255535239743.0271327.0392368.0416.0FRFrance
.................................
16701985303115985507.017689.02110.032.0FRFrance
16711985293130546474.019634.02412.036.0FRFrance
16721985283145887659.021517.02613.039.0FRFrance
167319852731967011761.027579.03622.050.0FRFrance
167419852631860912637.024581.03423.045.0FRFrance
167519852531936212454.026270.03522.048.0FRFrance
167619852431985513577.026133.03625.047.0FRFrance
167719852331937310010.028736.03518.052.0FRFrance
167819852232409917190.031008.04431.057.0FRFrance
167919852132609619621.032571.04735.059.0FRFrance
168019852032789620885.034907.05138.064.0FRFrance
168119851934315432821.053487.07859.097.0FRFrance
168219851834055529935.051175.07455.093.0FRFrance
168319851733405324366.043740.06244.080.0FRFrance
168419851635036236451.064273.09166.0116.0FRFrance
168519851536388145538.082224.011683.0149.0FRFrance
16861985143134545114400.0154690.0244207.0281.0FRFrance
16871985133197206176080.0218332.0357319.0395.0FRFrance
16881985123245240223304.0267176.0445405.0485.0FRFrance
16891985113276205252399.0300011.0501458.0544.0FRFrance
16901985103353231326279.0380183.0640591.0689.0FRFrance
16911985093369895341109.0398681.0670618.0722.0FRFrance
16921985083389886359529.0420243.0707652.0762.0FRFrance
16931985073471852432599.0511105.0855784.0926.0FRFrance
16941985063565825518011.0613639.01026939.01113.0FRFrance
16951985053637302592795.0681809.011551074.01236.0FRFrance
16961985043424937390794.0459080.0770708.0832.0FRFrance
16971985033213901174689.0253113.0388317.0459.0FRFrance
169819850239758680949.0114223.0177147.0207.0FRFrance
169919850138548965918.0105060.0155120.0190.0FRFrance
\n", + "

1699 rows × 10 columns

\n", + "
" + ], + "text/plain": [ + " week indicator inc inc_low inc_up inc100 inc100_low \\\n", + "0 201730 3 3759 1299.0 6219.0 6 2.0 \n", + "1 201729 3 5014 1989.0 8039.0 8 3.0 \n", + "2 201728 3 5271 2576.0 7966.0 8 4.0 \n", + "3 201727 3 3924 1432.0 6416.0 6 2.0 \n", + "4 201726 3 3171 1166.0 5176.0 5 2.0 \n", + "5 201725 3 837 0.0 1721.0 1 0.0 \n", + "6 201724 3 1566 248.0 2884.0 2 0.0 \n", + "7 201723 3 1664 203.0 3125.0 3 1.0 \n", + "8 201722 3 1305 92.0 2518.0 2 0.0 \n", + "9 201721 3 971 0.0 2046.0 1 0.0 \n", + "10 201720 3 2686 793.0 4579.0 4 1.0 \n", + "11 201719 3 3461 1490.0 5432.0 5 2.0 \n", + "12 201718 3 2102 515.0 3689.0 3 1.0 \n", + "13 201717 3 2071 428.0 3714.0 3 0.0 \n", + "14 201716 3 1380 222.0 2538.0 2 0.0 \n", + "15 201715 3 479 0.0 1242.0 1 0.0 \n", + "16 201714 3 1110 0.0 2549.0 2 0.0 \n", + "17 201713 3 7594 3808.0 11380.0 12 6.0 \n", + "18 201712 3 8780 4834.0 12726.0 13 7.0 \n", + "19 201711 3 7814 4329.0 11299.0 12 7.0 \n", + "20 201710 3 11802 7964.0 15640.0 18 12.0 \n", + "21 201709 3 13111 9099.0 17123.0 20 14.0 \n", + "22 201708 3 29545 23136.0 35954.0 45 35.0 \n", + "23 201707 3 59590 49764.0 69416.0 91 76.0 \n", + "24 201706 3 93628 82560.0 104696.0 144 127.0 \n", + "25 201705 3 193677 179255.0 208099.0 297 275.0 \n", + "26 201704 3 256428 240618.0 272238.0 394 370.0 \n", + "27 201703 3 267276 251345.0 283207.0 410 386.0 \n", + "28 201702 3 260588 245070.0 276106.0 400 376.0 \n", + "29 201701 3 255535 239743.0 271327.0 392 368.0 \n", + "... ... ... ... ... ... ... ... \n", + "1670 198530 3 11598 5507.0 17689.0 21 10.0 \n", + "1671 198529 3 13054 6474.0 19634.0 24 12.0 \n", + "1672 198528 3 14588 7659.0 21517.0 26 13.0 \n", + "1673 198527 3 19670 11761.0 27579.0 36 22.0 \n", + "1674 198526 3 18609 12637.0 24581.0 34 23.0 \n", + "1675 198525 3 19362 12454.0 26270.0 35 22.0 \n", + "1676 198524 3 19855 13577.0 26133.0 36 25.0 \n", + "1677 198523 3 19373 10010.0 28736.0 35 18.0 \n", + "1678 198522 3 24099 17190.0 31008.0 44 31.0 \n", + "1679 198521 3 26096 19621.0 32571.0 47 35.0 \n", + "1680 198520 3 27896 20885.0 34907.0 51 38.0 \n", + "1681 198519 3 43154 32821.0 53487.0 78 59.0 \n", + "1682 198518 3 40555 29935.0 51175.0 74 55.0 \n", + "1683 198517 3 34053 24366.0 43740.0 62 44.0 \n", + "1684 198516 3 50362 36451.0 64273.0 91 66.0 \n", + "1685 198515 3 63881 45538.0 82224.0 116 83.0 \n", + "1686 198514 3 134545 114400.0 154690.0 244 207.0 \n", + "1687 198513 3 197206 176080.0 218332.0 357 319.0 \n", + "1688 198512 3 245240 223304.0 267176.0 445 405.0 \n", + "1689 198511 3 276205 252399.0 300011.0 501 458.0 \n", + "1690 198510 3 353231 326279.0 380183.0 640 591.0 \n", + "1691 198509 3 369895 341109.0 398681.0 670 618.0 \n", + "1692 198508 3 389886 359529.0 420243.0 707 652.0 \n", + "1693 198507 3 471852 432599.0 511105.0 855 784.0 \n", + "1694 198506 3 565825 518011.0 613639.0 1026 939.0 \n", + "1695 198505 3 637302 592795.0 681809.0 1155 1074.0 \n", + "1696 198504 3 424937 390794.0 459080.0 770 708.0 \n", + "1697 198503 3 213901 174689.0 253113.0 388 317.0 \n", + "1698 198502 3 97586 80949.0 114223.0 177 147.0 \n", + "1699 198501 3 85489 65918.0 105060.0 155 120.0 \n", + "\n", + " inc100_up geo_insee geo_name \n", + "0 10.0 FR France \n", + "1 13.0 FR France \n", + "2 12.0 FR France \n", + "3 10.0 FR France \n", + "4 8.0 FR France \n", + "5 2.0 FR France \n", + "6 4.0 FR France \n", + "7 5.0 FR France \n", + "8 4.0 FR France \n", + "9 3.0 FR France \n", + "10 7.0 FR France \n", + "11 8.0 FR France \n", + "12 5.0 FR France \n", + "13 6.0 FR France \n", + "14 4.0 FR France \n", + "15 2.0 FR France \n", + "16 4.0 FR France \n", + "17 18.0 FR France \n", + "18 19.0 FR France \n", + "19 17.0 FR France \n", + "20 24.0 FR France \n", + "21 26.0 FR France \n", + "22 55.0 FR France \n", + "23 106.0 FR France \n", + "24 161.0 FR France \n", + "25 319.0 FR France \n", + "26 418.0 FR France \n", + "27 434.0 FR France \n", + "28 424.0 FR France \n", + "29 416.0 FR France \n", + "... ... ... ... \n", + "1670 32.0 FR France \n", + "1671 36.0 FR France \n", + "1672 39.0 FR France \n", + "1673 50.0 FR France \n", + "1674 45.0 FR France \n", + "1675 48.0 FR France \n", + "1676 47.0 FR France \n", + "1677 52.0 FR France \n", + "1678 57.0 FR France \n", + "1679 59.0 FR France \n", + "1680 64.0 FR France \n", + "1681 97.0 FR France \n", + "1682 93.0 FR France \n", + "1683 80.0 FR France \n", + "1684 116.0 FR France \n", + "1685 149.0 FR France \n", + "1686 281.0 FR France \n", + "1687 395.0 FR France \n", + "1688 485.0 FR France \n", + "1689 544.0 FR France \n", + "1690 689.0 FR France \n", + "1691 722.0 FR France \n", + "1692 762.0 FR France \n", + "1693 926.0 FR France \n", + "1694 1113.0 FR France \n", + "1695 1236.0 FR France \n", + "1696 832.0 FR France \n", + "1697 459.0 FR France \n", + "1698 207.0 FR France \n", + "1699 190.0 FR France \n", + "\n", + "[1699 rows x 10 columns]" + ] + }, + "execution_count": 5, + "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": 6, + "metadata": { + "collapsed": false + }, + "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": 7, + "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": 8, + "metadata": { + "collapsed": false + }, + "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": [ + "Les incidences hebdomadaires ne sont pas des entiers mais des chaînes de caractères. Ceci est dû au point manquant montré ci-dessous, pour lequel la valeur fournie est \"-\".\n", + "\n", + "Nous convertissons ces chaînes de caractères en entiers." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "sorted_data['inc'] = sorted_data['inc'].astype(int)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Un premier regard sur les données !" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\nrkJggg==\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "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": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\niEgn/x+bG6CRG/BGAAAAAABJRU5ErkJggg==\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "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." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "first_august_week = [pd.Period(pd.Timestamp(y, 8, 1), 'W')\n", + " for y in range(sorted_data.index[0].year,\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": { + "collapsed": false + }, + "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": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\nRK5CYII=\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "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": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "2014 1600941\n", + "1991 1659249\n", + "1995 1840410\n", + "2012 2175217\n", + "2003 2234584\n", + "2006 2307352\n", + "2001 2529279\n", + "1992 2574578\n", + "1993 2703886\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": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYoAAAEPCAYAAABcA4N7AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAH3JJREFUeJzt3X+YZFV95/H3d2ZwYAaGNoKMwkorwQREbFA0itFa1MRA\nxCeGZ1E02hoNMRpcze7K40oQsyaCv1Z3MVkSZdAIuBKyK/6IGMklggZQaEAFcRdGfgmKgAhsgHG+\n+8e5NVT3TFXdnrm3vud0f17PM8/Uraqu86lT1XXqfr+3qs3dERERGWZFdAAREcmbFgoRERlJC4WI\niIykhUJEREbSQiEiIiNpoRARkZE6WSjM7O1m9h0zu8bMPmNmj+liHBER6V7rC4WZPRH4Y+BQdz8Y\nWAW8su1xRERkMlZ1dLsrgbVmthlYA9ze0TgiItKx1vco3P124EPAzcBtwL3u/o9tjyMiIpPRRelp\nCng5sC/wRGBXMzuu7XFERGQyuig9vRi40d3vBjCz84HnAWcPXsnM9CVTIiLbwd1tkuN1cdTTzcCv\nmdnOZmbAi4DrtnVFd8/+38knnxyeISpn/Si1+O/k7fiZyT9PlvNjrpzxOcb9i9BFj+Jy4DzgKuBq\nwIAz2h5nUjZu3BgdoZEycm6MDtBIGXOpnG0rJWeETo56cvdTgFO6uG0REZksfTJ7jNnZ2egIjZSR\nczY6QCNlzKVytq2UnBEsquZlZh41tjSTWkzRj5GF1WVFcmRm+BJoZi8pVVVFR2ikjJxVdIBGyphL\n5WxbKTkjaKEQEZGRVHqSoVR6EsmPSk8iIpIdLRRjlFK3LCNnFR2gkTLmUjnbVkrOCFooRERkJPUo\nZCj1KETyox6FiIhkRwvFGKXULcvIWUUHaKSMuVTOtpWSM4IWChERGUk9ChlKPQqR/KhHISIi2dFC\nMUYpdcsyclbRARopYy6Vs22l5IyghUJEREZSj0KGUo9CJD/qUYiISHa0UIxRSt2yjJxVdIBGyphL\n5WxbKTkjtL5QmNlTzewqM7uy/v9nZnZC2+OIiMhkdNqjMLMVwK3Ac9z9lgWXqUeROfUoRPKzFHsU\nLwb+78JFQkREytH1QnEscE7HY3SqlLplGTmr6ACNlDGXytm2UnJG6GyhMLOdgKOBz3U1hoiIdG9V\nh7f9W8C33f0nw64wOzvL9PQ0AFNTU8zMzNDr9YBHV3dtN9vun9f27T+qv93bwe3F3h6LytvGdq/X\n27L9ylfOcuedPyTKXnvtyx13bBz7+EQ//5rOZw55Rm335ZKnP3cbNmwA2PJ6OWmdNbPN7BzgH9z9\nrCGXq5mdOTWzc5gDNfNlviXTzDazNaRG9vld3P4kbf3OOk9l5KyiAzRSxlwqZ9tKyRmhk9KTuz8I\n7NnFbYuIyGTpu55kqPiyC0SXXuLnQKUnmW/JlJ5ERGTp0EIxRil1yzJyVtEBGiljLpWzbaXkjKCF\nQkRERlKPQoaKr89DdI0+fg7Uo5D51KMQEZHsaKEYo5S6ZRk5q+gAjZQxl8rZtlJyRtBCISIiI6lH\nIUPF1+chukYfPwfqUch86lGIiEh2tFCMUUrdsoycVXSARsqYS+VsWyk5I2ihEBGRkdSjkKHi6/MQ\nXaOPnwP1KGQ+9ShERCQ7WijGKKVuWUbOKjpAI2XMpXK2rZScEbRQiIjISOpRyFDx9XmIrtHHz4F6\nFDKfehQiIpIdLRRjlFK3LCNnFR2gkTLmUjnbVkrOCJ0sFGa2u5l9zsyuM7PvmtlzuhhHRES610mP\nwsw2ABe7+5lmtgpY4+73LbiOehSZi6/PQ3SNPn4O1KOQ+SJ6FK0vFGa2DrjK3fcbcz0tFJmLf5GE\n6BfK+DnQQiHzLZVm9pOBu8zsTDO70szOMLNdOhhnIkqpW5aRs4oO0EgZc6mcbSslZ4QuFopVwKHA\n6e5+KPAgcGIH44iIyASs6uA2bwVucfdv1dvnAe/c1hVnZ2eZnp4GYGpqipmZGXq9HvDo6q7tZtv9\n89q+/Uf1t3s7uL3Y22NRedvY7vV6Hd7/xW4zMu+4y3PYHpzPHPKM2u7LJU9/7jZs2ACw5fVy0rpq\nZl8MvMndbzCzk0nN7HcuuI56FJmLr89DdI0+fg7Uo5D5lkqPAuAE4DNmNgc8A/jzjsbp3NbvLPNU\nRs4qOkAjZcylcratlJwRuig94e5XA4d1cdsiIjJZ+q4nGSq+7ALRpZf4OVDpSeZbSqUnERFZIrRQ\njFFK3bKMnFV0gEbKmEvlbFspOSNooRARkZHUo5Ch4uvzEF2jj58D9ShkPvUoREQkO1ooxiilbllG\nzio6QCNlzKVytq2UnBG0UIiIyEjqUchQ8fV5iK7Rx8+BehQyn3oUIiKSHS0UY5RStywjZxUdoJEy\n5lI521ZKzghaKEREZCT1KGSo+Po8RNfo4+dAPQqZTz0KERHJjhaKMUqpW5aRs4oO0EgZc6mcbSsl\nZwQtFCIiMpJ6FDJUfH0eomv08XOgHoXMpx6FiIhkRwvFGKXULcvIWUUHaKSMuVTOtpWSM0InfzPb\nzDYCPwM2A4+4+7O7GEdERLrXSY/CzG4Enunu94y4jnoUmYuvz0N0jT5+DtSjkPmWUo/COrxtERGZ\noK5ezB34qpldYWZv6miMiSilbllGzio6QCNlzKVytq2UnBE66VEAh7v7j8xsT9KCcZ27X9LRWCIi\n0qFOFgp3/1H9/0/M7O+BZwNbLRSzs7NMT08DMDU1xczMDL1eD3h0ddd2s+3+eW3f/qP6270d3F7s\n7bGovG1s93q9Du//YrcZmXfc5TlsD85nDnlGbfflkqc/dxs2bADY8no5aa03s81sDbDC3e83s7XA\nhcAp7n7hguupmZ25+EYuRDdz4+dAzWyZb6k0s/cCLjGzq4B/AS5YuEiUZOt3lnkqI2cVHaCRMuZS\nOdtWSs4IrZee3P0mYKbt2xURkRj6ricZKr7sAtGll/g5UOlJ5lsqpScREVlCtFCMUUrdsoycVXSA\nRsqYS+VsWyk5I2ihEBGRkdSjkKHi6/MQXaOPnwP1KGQ+9ShERCQ7WijGKKVuWUbOKjpAI2XMpXK2\nrZScEbRQiIjISOpRyFDx9XmIrtHHz4F6FDKfehQiIpIdLRRjlFK3LCNnFR2gkTLmUjnbVkrOCFoo\nRERkJPUoZKj4+jxE1+jj50A9CplPPQoREcmOFooxSqlblpGzig7QSBlzqZxtKyVnBC0UIiIyknoU\nMlR8fR6ia/Txc6AehcynHoWIiGRHC8UYpdQty8hZRQdopIy5VM62lZIzQmcLhZmtMLMrzezzXY0h\nIiLd66xHYWZvB54JrHP3o7dxuXoUmYuvz0N0jT5+DtSjkPmWTI/CzPYBjgT+povbFxGRyemq9PQR\n4D8S/3Z0h5VStywjZxUdoJEy5lI521ZKzgitLxRmdhRwp7vPAVb/ExGRQq3q4DYPB442syOBXYDd\nzOxT7v7ahVecnZ1lenoagKmpKWZmZuj1esCjq7u2m233z2v79h/V3+7t4PZib49F5W1ju9frdXj/\nF7vNyLzjLs9he3A+c8gzarsvlzz9uduwYQPAltfLSev0A3dm9kLgT9TMLlN8Ixeim7nxc6Bmtsy3\nZJrZS8nW7yzzVEbOKjpAI2XMpXK2rZScEbooPW3h7hcDF3c5hoiIdEvf9SRDxZddILr0Ej8HKj3J\nfCo9iYhIdrRQjFFK3bKMnFV0gEbKmEvlbFspOSNooRARkZHUo5Ch4uvzEF2jj58D9ShkPvUoREQk\nO1ooxiilbllGzio6QCNlzKVytq2UnBG0UIiIyEjqUchQ8fV5iK7Rx8+BehQyn3oUIiKSHS0UY5RS\ntywjZxUdoJEy5lI521ZKzghaKEREZCT1KGSo+Po8RNfo4+dAPQqZTz0KERHJjhaKMUqpW5aRs4oO\n0EgZc6mcbSslZwQtFCIiMpJ6FDJUfH0eomv08XOgHoXMpx6FiIhkRwvFGKXULcvIWUUHaKSMuVTO\ntpWSM0LrfzPbzFYD/ww8pr7989z9lLbHERGRyeikR2Fma9z9QTNbCVwKnODuly+4jnoUmYuvz0N0\njT5+DtSjkPmWTI/C3R+sT64m7VXomS4iUqjWS08AZrYC+DawH3C6u1+x2Nt44IEH2LRpU+vZmlq1\nahVr166lqip6vV5YjqbKyFkBveAM45Uxl8rZtlJyRuhkoXD3zcAhZrYO+F9mdqC7f2/h9WZnZ5me\nngZgamqKmZkZer0eN998M/vt91RgJStWpIibN6dFY3LbD7FmzW7cd99dOzod281sNe4PhY0/X1X/\n39uB7bnt+Pl6q2409n+RJ7U9kKBh3ra3GZpvbm5u4vOxlLeHzef69dPceecPibTzzms59thjtrxe\nTlrnn6Mws5OAB9z9wwvOH9qjuPbaa3n+84/jvvuu7TTbKOvWHVyPH1ufXt7jpwzqUUQ/Bstb/HMA\nBp8HS6JHYWZ7mNnu9eldgJcA17c9joiITEYXzewnAP9kZnPAZcBX3P1LHYwzIVV0gIaq6AANVNEB\nGinleHrlbFcpOSO03qNw92uBQ9u+XRERiZHldz2pR9EXXRuNHj9lUI8i+jFY3uKfA7DkehQiIrK0\naKEYq4oO0FAVHaCBKjpAI6XUqpWzXaXkjKCFQkRERlKPYgj1KHIYP2VQjyL6MVje4p8DoB6FiIhk\nTQvFWFV0gIaq6AANVNEBGimlVq2c7SolZwQtFCIiMpJ6FEOoR5HD+CmDehTRj8HyFv8cAPUoREQk\na1ooxqqiAzRURQdooIoO0EgptWrlbFcpOSNooRARkZHUoxhCPYocxk8Z1KOIfgyWt/jnAKhHISIi\nWdNCMVYVHaChKjpAA1V0gEZKqVUrZ7tKyRlBC4WIiIykHsUQ6lHkMH7KoB5F9GOwvMU/B0A9ChER\nyZoWirGq6AANVdEBGqiiAzRSSq1aOdtVSs4IrS8UZraPmV1kZt81s2vN7IS2xxARkclpvUdhZuuB\n9e4+Z2a7At8GXu7u1y+4nnoUY0XXRqPHTxnUo4h+DJa3+OcALLkehbvf4e5z9en7geuAvdseR0RE\nJqPTHoWZTQMzwGVdjtOtKjpAQ1V0gAaq6ACNlFKrVs52lZIzwqqubrguO50HvK3es9jK7Ows09PT\nAExNTTEzM0Ov1wNg06b7SS8svfraVf3/ZLbT+IMmO/7WL6rjrj8XPH6T7bnt+PnV9a5/tKr+vzfh\n7fj7v9de+3LuuRsAtvx+9l9Ul9L23Nzc0MvjHv/eltODr5eT1snnKMxsFfAF4Mvu/tEh11GPYqzo\n2mj0+DlkWO7jpwzLuU+iHkV3padPAt8btkiIiEg5ujg89nDg1cARZnaVmV1pZi9te5zJqaIDNFRF\nB2igig7QUBUdoKEqOkAjpdT+S8kZofUehbtfCqxs+3ZFRCSGvutpCPUochg/hwzLffyUQT2K6Pu/\nNHsUIiKyRGihGKuKDtBQFR2ggSo6QENVdICGqugAjZRS+y8lZwQtFCIiMpJ6FEOoR5HD+DlkWO7j\npwzqUUTff/UoREQkY1ooxqqiAzRURQdooIoO0FAVHaChKjpAI6XU/kvJGUELhYiIjKQexRDqUeQw\nfg4Zlvv4KYN6FNH3Xz0KERHJmBaKsaroAA1V0QEaqKIDNFRFB2ioig7QSCm1/1JyRtBCISIiI6lH\nMYR6FDmMn0OG5T5+yqAeRfT9V49CREQypoVirCo6QENVdIAGqugADVXRARqqogM0Ukrtv5ScEbRQ\niIjISOpRDKEeRQ7j55BhuY+fMqhHEX3/1aMQEZGMaaEYq4oO0FAVHaCBKjpAQ1V0gIaq6ACNlFL7\nLyVnhE4WCjP7hJndaWbXdHH7IiIyOZ30KMzs+cD9wKfc/eAh11GPYqzo2mj0+DlkWO7jpwzqUUTf\n/yXYo3D3S4B7urhtERGZLPUoxqqiAzRURQdooIoO0FAVHaChKjpAI6XU/kvJGWFV5OCzs7NMT08D\nMDU1xczMDL1eD4BNm+4n/SL06mtX9f+T2U7jD5rs+Fu/CIy7/lzw+E2254LH357tnMffnvncvu3+\ni2j/93Mpbs/NzQ29PO7x7205Pfh6OWmdfY7CzPYFLlCPYkdE10ajx88hw3IfP2VQjyL6/i/BHkXN\n6n8iIlKwrg6PPRv4BvBUM7vZzF7fxTiTUUUHaKiKDtBAFR2goSo6QENVdIBGSqn9l5IzQic9Cnc/\nrovbFRGRydN3PQ2hHkUO4+eQYbmPnzKoRxF9/5duj0JERJYALRRjVdEBGqqiAzRQRQdoqIoO0FAV\nHaCRUmr/peSMoIVCRERGUo9iCPUochg/hwzLffyUQT2K6PuvHoWIiGRMC8VYVXSAhqroAA1U0QEa\nqqIDNFRFB2iklNp/KTkjaKEQEZGR1KMYQj2KHMbPIcNyHz9lUI8i+v6rRyEiIhnTQjFWFR2goSo6\nQANVdICGqugADVXRARoppfZfSs4IWihERGQk9SiGUI8ih/FzyLDcx08Z1KOIvv/qUYiISMa0UIxV\nRQdoqIoO0EAVHaChKjpAQ1V0gEZKqf2XkjOCFgoRERlJPYoh1KPIYfwcMiz38VMG9Sii7796FCIi\nkrGu/mb2S83sejO7wcze2cUYk1NFB2ioig7QQBUdoKEqOkBDVXSARkqp/ZeSM0LrC4WZrQD+O/Cb\nwNOAV5nZr7Y9zuTMRQdoqIScJWQE5WzX3Jxylq6LPYpnAz9w9x+6+yPAucDLOxhnQu6NDtBQCTlL\nyAjK2a5771XO0nWxUOwN3DKwfWt9noiIFGhVdIBhHn74HuBvw8Z/5JF76lMbwzIszsboAA1sjA7Q\n0MboAA1tjA7QyMaNG6MjNFJKzgitHx5rZr8GvMfdX1pvnwi4u5+64HrRx5uJiBRp0ofHdrFQrAS+\nD7wI+BFwOfAqd7+u1YFERGQiWi89ufsvzOytwIWkHsgntEiIiJQr7JPZIiJSBn0yW0RERipyoTCz\nvc0s+0NuzewpZvYOMzsiOsswJWQE5WxbCTlLyNhXStbtzVnUQmFm02Z2MfAV4ANm9uvRmYYxs+cD\nXwUOAP7QzN4cHGkrJWQE5WxbCTlLyNhXStYdyunuWf8Ddh44/Qrgg/Xp1wGfA55eb1twziOAJ/ez\nAH8KvKbefg5wAdCLzFpCRuVcnjlLyFha1jZzZrlHYWbrzOyvzOwG4INmtm990e8AN9enzwX+D/DG\n/o9NOGYa1OxAM7sGeA9wppkd4WnmDwTWA7j7ZcA3gDdEZC0ho3Iuz5wlZCwtaxc5s1wogJcCO5Pu\n2MPAn5rZLqTdppcBuPtDwHnAC+rtzZMIZmb7mNm6gbOOBf7O3V9AWryOM7P9gbP7WWt/DxxkZqu7\nzlpCRuVcnjlLyFha1knkDFsoLFllZr9vZl83s7eZ2X71xb8MPOzum4CPAPcAryZ9NuMJZvZL9fVu\nAG42s+dOIO8BZvYl4BLgvWbW/6LDfwXW1Kf/J3AHcBRptX7cwN7Q3cD1wDOWc0blXJ45S8hYWtZJ\n5gxbKOpdoRcCrwVOA1YDf11ffAfw43qlu4X0Se/9SRPwXeAP6uvtBPy0Pr91ZrZ2YHMGuNXdp4GL\ngA/W598NPGRmu7n73cAPSF+C+K+kB+Yd9fUeA/yClr+gp4SMyrk8c5aQsbSsUTkntlCY2XPN7FQz\nm623jdR9/wd3v8DdTwP2NbPnAbeRVsQD6x+/Dlhbn3c6cKSZvYy0yOwFXN1izsea2QYzuwJ4v5nt\nWWd9OnCpmZm7fx6418yOIu3V7FZfTr29J7CZtDf0eDP7a+AcYJO7/3g5ZFTO5ZmzhIylZc0h50QW\nCjN7GvCXwM+Bf2dm76jH3hv4eX2nATaQSkxXA48A/ZLSlaQO/oPu/s/AicAscDjwZ+6+eeA2dtQL\n6rGPJDV43gWsA1YC6+s9IYCz6qyX1/frtwDc/Zv1bazy9NUlx5P2gv7c3V+/jDIq5/LMWULG0rLG\n5xx2ONT2/gN2JR2JNFMHA/gwcEJ9+lnAx4BjgJeQ9ij6P/tvSLtSkBaGq4BfAQ4B/jfwhIHr7tBh\nZ/UkHw9cTCpl7VGf/7mBrE8G3l9ffhjwdWDlwP38SX07e5P2et4KnAl8HFjbwlxmn1E5l2fOEjKW\nljXnnK3uUZjZDKnh/HLgZODd9UW3kY7bhbSSXQr8LvCPwHozO9jMdvLUj7jNzH7d3S8CzgBOBc4H\nznH3H/XH8npmdsBvA0cDp5D2XE6rz78QeF59+hbSA3Gku19BWs3/bT3+/cBlwGHufhvwe6Qy2B3A\nu939ge0NNrB39LJcMy6Q7VyC5rPNnAXOJWQ8n1DGnO7Qt8ea2bNJTeYL3f0npL2FG9x91swOBd5n\nZs8irZC/aWZr3P1BM7uadAjXelKd7E3Ax8zs/wHXAjfVQ/wVcLa7/2w785m7u5kdBhxHmuAvejq0\n9qnAje5+kZndRPqk928A3wZ+x8z2cPe7zOwHwP1m9iTS3wJ/jZk9HtiH1Ei/HMDdvwV8a3ty1lmf\nRdoT+znwAeDHwFNyyVjSXNZ5NZ/L5LlZZyxmPuu82c/poEXtUViyk5m91syuIjVGpoD+C/kvgI31\n3sGVpF2f5wL3k/42xVH19R4hTcxepL2G75D6ExcDd7n7rZD2GlpYJF4AfJLU8X8x8Bf1VTYDN5jZ\nLu5+U531YOA+4HbSQta/TytJc/V3dd5XA88EzvAdPE7azHY3szPr274J+Ki7/9jMVpDeLeSQcWU9\nly8k7cbmOpdmZrua2Qbyns9d6vnskelz08xWm9na3Oeyzrou9/msc+5qZjub2VlkPqdbaVKfIh1x\n9Lz69FQd7GPbuN7bSB8T37vePobUj9iX9JUbF9fn7wx8jboGV593CPCYJnlG5FxDqvGdTdpL2Qn4\n98Bb6ssfC1xTj3UsqdY3XV92FOnw3D1Iu6rXALuTeiVfGswGrGgh4znA60l1xVOB4weu0+/tvBX4\nL5POOPCYv5H0RPwTUvMsq7lckPP8+vm3Z47zWd/GbsAXgU/W22/PcD53q2/zf9Tbp2U6l2tIrylf\nI324LNf57Oe8CPhsfV6Wz89R/8buUZjZu4AbgS+a2V7ufi+pDnZ73Vs42h79wNs3Sbs//Q/OXUpq\naj/o7mcBd5vZp0lN6u8DW2pm7n6Vuz88Ls+InOuBLwA94NOkZs8rSHs0m+ox7gE+T3pB+SrpReWA\n+ia+Tjoy4GF3/wLpncl5pMNxzyLtBfWzbteKvSDjp4A31xlvAH7FzN5fv4N7g6UPFX6ZVJ6bWMY6\n51rSL+ARpCfqb5B6SoeR3p2Fz+U2cp5BOsrjFcD3gANymc8Bu5A+L7Sfme1B+j1ZWd9++HwOZHwM\n6fn4xHrsp5vZX+Qyl2a2E6nXeQzwAXf/3fqiQwbGCJ/PBTlPc/f+HsG1wIE5zelYDVbEHmn352+A\nt9fnHUZ6wbutDn428KH6svcB7x34+SuAQ+rTq0mHeB3W9opHeoI/Z2B7lvRu6HXA5QPnPxG4vT79\nFtJH3B9b//wFwJMGrrtHxxlfSzoaYX/gs6RPUb4K+K/UR4NNOuPA7U4NnP5PwAnUh97lMJdDcv4H\n0qGDT8ltPuvbfh2pHn0S8Puk5uUVmc1nP+O7SS+yj6vn8bOZzeX5wKsXnHcscFlm87mtnE+qs2T1\n/Bx5Pxrc0f6hV8cCVX16J9K7uN3r7X1JexOHkXZdzyO9w/syaeVb3fkdSfU9gy1/te9QHi11/ZR0\nvHH/ul+lfsEm7epdWF/nnRPOeAhwSf9JPXC9nYAKOKLeft+kMi7Iu47UO7oTeG+9/VNgr+i5HJLz\njjrDWuryZw7zOfB4vx74Q9Jez2fq8+7KYT6HZDy3Pm/wsPRcnpu/TdoT/zDwT6SS976kTyU/Pno+\nR+R8D6nqks3zs9H9WMQdfhzpg29Pq7dXLbh8A3BM/4lFKqsczwQWiQU5+k/4s4C31ac/DZxan/4l\n0t7RkwYepIMY+DrzCWd8y+B59en19XweHJVxIMsfkY7dPoPUC/hG/UtpOczlNnKeTjq88Jdzm0/S\n8fArSXXmi0nv2r8DnJTRc3Mw49dIRx4emttc1mN/BfjPpM9ffZa0B/TN3J6fC3J+hvRVG/vnOKfD\n/i3qb2ab2ceB+9z9xHp7BenIpbcATwOO9R3oM7TFzPYBPgH8sbvfYOnLBv+AlHFv4Cp3f8Oo25hg\nxje7+431eYeQSnNHAXPu/keBEecxs2eQFv5/IdVQDyK9Mwqfy0FmdhCp/PTfgAdJ7+jC59PMdiWV\ndFaT5u9XSV/m9i7Su/j9CZ7PbWTcn9TveQmp1/gi0nxm8dy0+nD7+vQzSL/jl5K+uiKb5+eCnAeR\nvlnio6Rvxs7i+TnOYj9HcQbw0bpJcwDpCX446cF5Vw6LRO0Q6s9jmNkbgVtJv5DHAtd7OnQ3Wj/j\nzXXGm0hPmE2kvYyrIsNtw92kb/U9yd0/ZWavAb6bYc57SUeJfIf0mO9EHvO5iXQEzCOkPYlfkH5n\nrgXeUc/n94Kfm8MyPmRmR5MWkBzmEoD+i2/tXtLnJU5y97Nzen4uyPlz0pvr60h7Gbk8P0da7B7F\nK0mN64dI30B4kbt/v6Ns283MLiU1NDeSjj8+xd2vCQ21wIKMdwAn5jaXZrY76V3kcaQvaDwDON3d\nHxn5gxO2jZyfcPcPxaYarf6wVL8PcEd0nm2pMx4DnOnpKKKsmNlq0t+u+T1SteAvgY97+vME2dhG\nzjPc/SOxqRan8UJhZgeTjv89j9SI6+SrvXdUvbdzMukd+t96+mRmVkrICGBmq0jlpodIOXN9zIvI\nCenDi8BmX8w7tAkrIWOfmR1POmT705k/7kXkHGZRexQiIrL85PqnUEVEJBNaKEREZCQtFCIiMpIW\nChERGUkLhYiIjKSFQkRERtJCISIiI2mhEBGRkf4/SkyAklJi0kMAAAAASUVORK5CYII=\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "yearly_incidence.hist(xrot=20)" + ] + } + ], + "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.5.2" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/module3/ressources/analyse-syndrome-grippal-orgmode.org b/module3/ressources/analyse-syndrome-grippal-orgmode.org new file mode 100644 index 0000000000000000000000000000000000000000..5abc6c73e08d32914cc3c057ad839a8370cbe5e1 --- /dev/null +++ b/module3/ressources/analyse-syndrome-grippal-orgmode.org @@ -0,0 +1,208 @@ +#+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 26 +Une version plus ancienne d'Emacs devrait suffire, mais en ce cas il est prudent d'installer une version récente (9.x) d'org-mode. +** Python 3.6 +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 en format CSV dont chaque ligne correspond à une semaine de la période demandée. Les dates de départ et de fin sont codées dans l'URL: "wstart=198501" pour semaine 1 de l'année 1985 et "wend=201730" pour semaine 30 de l'année 2017. L'URL complet est: +#+NAME: data-url +http://websenti.u707.jussieu.fr/sentiweb/api/data/rest/getIncidenceFlat?indicator=3&wstart=198501&wend=201730&geo=PAY1&$format=csv + +Voici l'explication des colonnes donnée sur 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('ascii').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 + +** 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 table] +assert week[0] == 'week' +del week[0] +inc = [row[2] for row in table] +assert inc[0] == 'inc +del inc[0] +raw_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] + raw_data[:5] + [None] + raw_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 raw_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 + +La vérification a mis en évidence un point manquant dans le jeux de données. Nous l'éliminons, ce qui n'a pas d'impact fort sur notre analyse qui est assez simple. +#+BEGIN_SRC python :results silent +valid_data = [record for record in raw_data if record[1] != '-'] +#+END_SRC + +** 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 +data = [(datetime.datetime.strptime(year_and_week + ":1" , '%G%V:%u').date(), + int(inc)) + for year_and_week, inc in valid_data] +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 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 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 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 janvier 1985, ce qui ne permet pas de quantifier complètement le pic attribué à cette année. Nous le supprimons donc de notre analyse. Par contre, les données se terminent en été 2017, peu avant le 1er août, ce qui nous permet d'inclure cette année dans l'analyse. +#+BEGIN_SRC R :results silent +annees <- 1986:2017 +#+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/ressources/analyse-syndrome-grippal-rstudio.Rmd b/module3/ressources/analyse-syndrome-grippal-rstudio.Rmd new file mode 100644 index 0000000000000000000000000000000000000000..1501796da4d87aab79b372fdee069f265addc4c8 --- /dev/null +++ b/module3/ressources/analyse-syndrome-grippal-rstudio.Rmd @@ -0,0 +1,173 @@ +--- +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 en format CSV dont chaque ligne correspond à une semaine de la période demandée. Les dates de départ et de fin sont codées dans l'URL: "wstart=198501" pour semaine 1 de l'année 1985 et "wend=201730" pour semaine 30 de l'année 2017. L'URL complet est: +```{r} +data_url = "http://websenti.u707.jussieu.fr/sentiweb/api/data/rest/getIncidenceFlat?indicator=3&wstart=198501&wend=201730&geo=PAY1&$format=csv" +``` + +Voici l'explication des colonnes donnée sur 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) | + +### 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) +``` + +La colonne `inc` est de classe `factor` à cause du point manquant dont la valeur de `inc` est `'-'`. Pour faciliter le traîtement ultérieur, nous relisons les données en demandant à `R` de traiter cette valeur comme `na`: +```{r} +data = read.csv(data_url, skip=1, na.strings="-") +head(data) +``` + +Maintenant les deux colonnes `week` et `inc` sont de classe `integer`: +```{r} +class(data$week) +class(data$inc) +``` + +### 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(sapply(data$week, convert_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 janvier 1985, ce qui ne permet pas de quantifier complètement le pic attribué à cette année. Nous l'enlevons donc de notre analyse. Par contre, les données se terminent en été 2017, peu avant le 1er août, ce qui nous permet d'inclure cette année. +```{r} +annees = 1986:2017 +``` + +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="") +```