"Pour ce jeu de données, les 4 premières colonnes sont des dates, et seule la colonne 5 contient des mesures brutes. Nous allons conserver uniquement les informations sur l'année, la date, et la valeur brute de la mesure."
"Pour ce jeu de données, les 4 premières colonnes sont des dates, et seule la colonne 5 contient des mesures brutes. Nous allons conserver uniquement les informations sur l'année, le mois, et la valeur brute de la mesure."
"On souhaite maintenant convertir l'année et le mois en un format plus adapté à Pandas, et à l'utiliser comme index. Un méthode possible est présentée ici, en rassemblant les deux informations puis en appliquant une fonction pour une mise au format Pandas."
]
},
{
{
"cell_type": "code",
"cell_type": "code",
"execution_count": 10,
"execution_count": 10,
...
@@ -696,123 +1670,123 @@
...
@@ -696,123 +1670,123 @@
" </thead>\n",
" </thead>\n",
" <tbody>\n",
" <tbody>\n",
" <tr>\n",
" <tr>\n",
" <th>1958-01-13/1958-01-19</th>\n",
" <th>1958-03</th>\n",
" <td>315.70</td>\n",
" <td>315.70</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1958-01-20/1958-01-26</th>\n",
" <th>1958-04</th>\n",
" <td>317.46</td>\n",
" <td>317.46</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1958-01-27/1958-02-02</th>\n",
" <th>1958-05</th>\n",
" <td>317.51</td>\n",
" <td>317.51</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1958-02-10/1958-02-16</th>\n",
" <th>1958-07</th>\n",
" <td>315.86</td>\n",
" <td>315.86</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1958-02-17/1958-02-23</th>\n",
" <th>1958-08</th>\n",
" <td>314.93</td>\n",
" <td>314.93</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1958-02-24/1958-03-02</th>\n",
" <th>1958-09</th>\n",
" <td>313.21</td>\n",
" <td>313.21</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1958-03-10/1958-03-16</th>\n",
" <th>1958-11</th>\n",
" <td>313.33</td>\n",
" <td>313.33</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1958-03-17/1958-03-23</th>\n",
" <th>1958-12</th>\n",
" <td>314.67</td>\n",
" <td>314.67</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1958-12-29/1959-01-04</th>\n",
" <th>1959-01</th>\n",
" <td>315.58</td>\n",
" <td>315.58</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1959-01-05/1959-01-11</th>\n",
" <th>1959-02</th>\n",
" <td>316.49</td>\n",
" <td>316.49</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1959-01-12/1959-01-18</th>\n",
" <th>1959-03</th>\n",
" <td>316.65</td>\n",
" <td>316.65</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1959-01-19/1959-01-25</th>\n",
" <th>1959-04</th>\n",
" <td>317.72</td>\n",
" <td>317.72</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1959-01-26/1959-02-01</th>\n",
" <th>1959-05</th>\n",
" <td>318.29</td>\n",
" <td>318.29</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1959-02-02/1959-02-08</th>\n",
" <th>1959-06</th>\n",
" <td>318.15</td>\n",
" <td>318.15</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1959-02-09/1959-02-15</th>\n",
" <th>1959-07</th>\n",
" <td>316.54</td>\n",
" <td>316.54</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1959-02-16/1959-02-22</th>\n",
" <th>1959-08</th>\n",
" <td>314.80</td>\n",
" <td>314.80</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1959-02-23/1959-03-01</th>\n",
" <th>1959-09</th>\n",
" <td>313.84</td>\n",
" <td>313.84</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1959-03-02/1959-03-08</th>\n",
" <th>1959-10</th>\n",
" <td>313.33</td>\n",
" <td>313.33</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1959-03-09/1959-03-15</th>\n",
" <th>1959-11</th>\n",
" <td>314.81</td>\n",
" <td>314.81</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1959-03-16/1959-03-22</th>\n",
" <th>1959-12</th>\n",
" <td>315.58</td>\n",
" <td>315.58</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1960-01-04/1960-01-10</th>\n",
" <th>1960-01</th>\n",
" <td>316.43</td>\n",
" <td>316.43</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1960-01-11/1960-01-17</th>\n",
" <th>1960-02</th>\n",
" <td>316.98</td>\n",
" <td>316.98</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1960-01-18/1960-01-24</th>\n",
" <th>1960-03</th>\n",
" <td>317.58</td>\n",
" <td>317.58</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1960-01-25/1960-01-31</th>\n",
" <th>1960-04</th>\n",
" <td>319.03</td>\n",
" <td>319.03</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1960-02-01/1960-02-07</th>\n",
" <th>1960-05</th>\n",
" <td>320.04</td>\n",
" <td>320.04</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1960-02-08/1960-02-14</th>\n",
" <th>1960-06</th>\n",
" <td>319.58</td>\n",
" <td>319.58</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1960-02-15/1960-02-21</th>\n",
" <th>1960-07</th>\n",
" <td>318.18</td>\n",
" <td>318.18</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1960-02-22/1960-02-28</th>\n",
" <th>1960-08</th>\n",
" <td>315.90</td>\n",
" <td>315.90</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1960-02-29/1960-03-06</th>\n",
" <th>1960-09</th>\n",
" <td>314.17</td>\n",
" <td>314.17</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>1960-03-07/1960-03-13</th>\n",
" <th>1960-10</th>\n",
" <td>313.83</td>\n",
" <td>313.83</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
...
@@ -820,123 +1794,123 @@
...
@@ -820,123 +1794,123 @@
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2017-03-13/2017-03-19</th>\n",
" <th>2017-11</th>\n",
" <td>405.17</td>\n",
" <td>405.17</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2017-03-20/2017-03-26</th>\n",
" <th>2017-12</th>\n",
" <td>406.75</td>\n",
" <td>406.75</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-01-01/2018-01-07</th>\n",
" <th>2018-01</th>\n",
" <td>408.05</td>\n",
" <td>408.05</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-01-08/2018-01-14</th>\n",
" <th>2018-02</th>\n",
" <td>408.34</td>\n",
" <td>408.34</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-01-15/2018-01-21</th>\n",
" <th>2018-03</th>\n",
" <td>409.25</td>\n",
" <td>409.25</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-01-22/2018-01-28</th>\n",
" <th>2018-04</th>\n",
" <td>410.30</td>\n",
" <td>410.30</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-01-29/2018-02-04</th>\n",
" <th>2018-05</th>\n",
" <td>411.30</td>\n",
" <td>411.30</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-02-05/2018-02-11</th>\n",
" <th>2018-06</th>\n",
" <td>410.88</td>\n",
" <td>410.88</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-02-12/2018-02-18</th>\n",
" <th>2018-07</th>\n",
" <td>408.90</td>\n",
" <td>408.90</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-02-19/2018-02-25</th>\n",
" <th>2018-08</th>\n",
" <td>407.10</td>\n",
" <td>407.10</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-02-26/2018-03-04</th>\n",
" <th>2018-09</th>\n",
" <td>405.59</td>\n",
" <td>405.59</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-03-05/2018-03-11</th>\n",
" <th>2018-10</th>\n",
" <td>405.99</td>\n",
" <td>405.99</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-03-12/2018-03-18</th>\n",
" <th>2018-11</th>\n",
" <td>408.12</td>\n",
" <td>408.12</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-03-19/2018-03-25</th>\n",
" <th>2018-12</th>\n",
" <td>409.23</td>\n",
" <td>409.23</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2018-12-31/2019-01-06</th>\n",
" <th>2019-01</th>\n",
" <td>410.92</td>\n",
" <td>410.92</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2019-01-07/2019-01-13</th>\n",
" <th>2019-02</th>\n",
" <td>411.66</td>\n",
" <td>411.66</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2019-01-14/2019-01-20</th>\n",
" <th>2019-03</th>\n",
" <td>412.00</td>\n",
" <td>412.00</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2019-01-21/2019-01-27</th>\n",
" <th>2019-04</th>\n",
" <td>413.52</td>\n",
" <td>413.52</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2019-01-28/2019-02-03</th>\n",
" <th>2019-05</th>\n",
" <td>414.83</td>\n",
" <td>414.83</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2019-02-04/2019-02-10</th>\n",
" <th>2019-06</th>\n",
" <td>413.96</td>\n",
" <td>413.96</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2019-02-11/2019-02-17</th>\n",
" <th>2019-07</th>\n",
" <td>411.85</td>\n",
" <td>411.85</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2019-02-18/2019-02-24</th>\n",
" <th>2019-08</th>\n",
" <td>410.08</td>\n",
" <td>410.08</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2019-02-25/2019-03-03</th>\n",
" <th>2019-09</th>\n",
" <td>408.55</td>\n",
" <td>408.55</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2019-03-04/2019-03-10</th>\n",
" <th>2019-10</th>\n",
" <td>408.43</td>\n",
" <td>408.43</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2019-03-11/2019-03-17</th>\n",
" <th>2019-11</th>\n",
" <td>410.29</td>\n",
" <td>410.29</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2019-03-18/2019-03-24</th>\n",
" <th>2019-12</th>\n",
" <td>411.85</td>\n",
" <td>411.85</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2019-12-30/2020-01-05</th>\n",
" <th>2020-01</th>\n",
" <td>413.37</td>\n",
" <td>413.37</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2020-01-06/2020-01-12</th>\n",
" <th>2020-02</th>\n",
" <td>414.09</td>\n",
" <td>414.09</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2020-01-13/2020-01-19</th>\n",
" <th>2020-03</th>\n",
" <td>414.51</td>\n",
" <td>414.51</td>\n",
" </tr>\n",
" </tr>\n",
" <tr>\n",
" <tr>\n",
" <th>2020-01-20/2020-01-26</th>\n",
" <th>2020-04</th>\n",
" <td>416.18</td>\n",
" <td>416.18</td>\n",
" </tr>\n",
" </tr>\n",
" </tbody>\n",
" </tbody>\n",
...
@@ -945,69 +1919,69 @@
...
@@ -945,69 +1919,69 @@
"</div>"
"</div>"
],
],
"text/plain": [
"text/plain": [
" CO2\n",
" CO2\n",
"period \n",
"period \n",
"1958-01-13/1958-01-19 315.70\n",
"1958-03 315.70\n",
"1958-01-20/1958-01-26 317.46\n",
"1958-04 317.46\n",
"1958-01-27/1958-02-02 317.51\n",
"1958-05 317.51\n",
"1958-02-10/1958-02-16 315.86\n",
"1958-07 315.86\n",
"1958-02-17/1958-02-23 314.93\n",
"1958-08 314.93\n",
"1958-02-24/1958-03-02 313.21\n",
"1958-09 313.21\n",
"1958-03-10/1958-03-16 313.33\n",
"1958-11 313.33\n",
"1958-03-17/1958-03-23 314.67\n",
"1958-12 314.67\n",
"1958-12-29/1959-01-04 315.58\n",
"1959-01 315.58\n",
"1959-01-05/1959-01-11 316.49\n",
"1959-02 316.49\n",
"1959-01-12/1959-01-18 316.65\n",
"1959-03 316.65\n",
"1959-01-19/1959-01-25 317.72\n",
"1959-04 317.72\n",
"1959-01-26/1959-02-01 318.29\n",
"1959-05 318.29\n",
"1959-02-02/1959-02-08 318.15\n",
"1959-06 318.15\n",
"1959-02-09/1959-02-15 316.54\n",
"1959-07 316.54\n",
"1959-02-16/1959-02-22 314.80\n",
"1959-08 314.80\n",
"1959-02-23/1959-03-01 313.84\n",
"1959-09 313.84\n",
"1959-03-02/1959-03-08 313.33\n",
"1959-10 313.33\n",
"1959-03-09/1959-03-15 314.81\n",
"1959-11 314.81\n",
"1959-03-16/1959-03-22 315.58\n",
"1959-12 315.58\n",
"1960-01-04/1960-01-10 316.43\n",
"1960-01 316.43\n",
"1960-01-11/1960-01-17 316.98\n",
"1960-02 316.98\n",
"1960-01-18/1960-01-24 317.58\n",
"1960-03 317.58\n",
"1960-01-25/1960-01-31 319.03\n",
"1960-04 319.03\n",
"1960-02-01/1960-02-07 320.04\n",
"1960-05 320.04\n",
"1960-02-08/1960-02-14 319.58\n",
"1960-06 319.58\n",
"1960-02-15/1960-02-21 318.18\n",
"1960-07 318.18\n",
"1960-02-22/1960-02-28 315.90\n",
"1960-08 315.90\n",
"1960-02-29/1960-03-06 314.17\n",
"1960-09 314.17\n",
"1960-03-07/1960-03-13 313.83\n",
"1960-10 313.83\n",
"... ...\n",
"... ...\n",
"2017-03-13/2017-03-19 405.17\n",
"2017-11 405.17\n",
"2017-03-20/2017-03-26 406.75\n",
"2017-12 406.75\n",
"2018-01-01/2018-01-07 408.05\n",
"2018-01 408.05\n",
"2018-01-08/2018-01-14 408.34\n",
"2018-02 408.34\n",
"2018-01-15/2018-01-21 409.25\n",
"2018-03 409.25\n",
"2018-01-22/2018-01-28 410.30\n",
"2018-04 410.30\n",
"2018-01-29/2018-02-04 411.30\n",
"2018-05 411.30\n",
"2018-02-05/2018-02-11 410.88\n",
"2018-06 410.88\n",
"2018-02-12/2018-02-18 408.90\n",
"2018-07 408.90\n",
"2018-02-19/2018-02-25 407.10\n",
"2018-08 407.10\n",
"2018-02-26/2018-03-04 405.59\n",
"2018-09 405.59\n",
"2018-03-05/2018-03-11 405.99\n",
"2018-10 405.99\n",
"2018-03-12/2018-03-18 408.12\n",
"2018-11 408.12\n",
"2018-03-19/2018-03-25 409.23\n",
"2018-12 409.23\n",
"2018-12-31/2019-01-06 410.92\n",
"2019-01 410.92\n",
"2019-01-07/2019-01-13 411.66\n",
"2019-02 411.66\n",
"2019-01-14/2019-01-20 412.00\n",
"2019-03 412.00\n",
"2019-01-21/2019-01-27 413.52\n",
"2019-04 413.52\n",
"2019-01-28/2019-02-03 414.83\n",
"2019-05 414.83\n",
"2019-02-04/2019-02-10 413.96\n",
"2019-06 413.96\n",
"2019-02-11/2019-02-17 411.85\n",
"2019-07 411.85\n",
"2019-02-18/2019-02-24 410.08\n",
"2019-08 410.08\n",
"2019-02-25/2019-03-03 408.55\n",
"2019-09 408.55\n",
"2019-03-04/2019-03-10 408.43\n",
"2019-10 408.43\n",
"2019-03-11/2019-03-17 410.29\n",
"2019-11 410.29\n",
"2019-03-18/2019-03-24 411.85\n",
"2019-12 411.85\n",
"2019-12-30/2020-01-05 413.37\n",
"2020-01 413.37\n",
"2020-01-06/2020-01-12 414.09\n",
"2020-02 414.09\n",
"2020-01-13/2020-01-19 414.51\n",
"2020-03 414.51\n",
"2020-01-20/2020-01-26 416.18\n",
"2020-04 416.18\n",
"\n",
"\n",
"[741 rows x 1 columns]"
"[741 rows x 1 columns]"
]
]
...
@@ -1018,11 +1992,10 @@
...
@@ -1018,11 +1992,10 @@
}
}
],
],
"source": [
"source": [
"def convertIntoPeriod(anneeEtSemaine):\n",
"def convertIntoPeriod(anneeEtMois):\n",
" y = (int)(anneeEtSemaine/100)\n",
" y = (int)(anneeEtMois/100)\n",
" w = (int)(anneeEtSemaine%100)\n",
" m = (int)(anneeEtMois%100)\n",
" per = isoweek.Week(y,w)\n",
" return pd.Period(pd.Timestamp(y,m,1), 'M')\n",
" return pd.Period(per.day(0), 'W')\n",
"useful_data['period'] = [convertIntoPeriod(date) for date in useful_data['period']]\n",
"useful_data['period'] = [convertIntoPeriod(date) for date in useful_data['period']]\n",
"useful_data.set_index('period')"
"useful_data.set_index('period')"
]
]
...
@@ -1035,7 +2008,7 @@
...
@@ -1035,7 +2008,7 @@
{
{
"data": {
"data": {
"text/plain": [
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x7f385044a278>"
"<matplotlib.axes._subplots.AxesSubplot at 0x7fce2c0686a0>"
]
]
},
},
"execution_count": 14,
"execution_count": 14,
...
@@ -1059,6 +2032,45 @@
...
@@ -1059,6 +2032,45 @@
"useful_data['CO2'].plot()"
"useful_data['CO2'].plot()"
]
]
},
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x7fce25e19e10>"
"On voit de prime abord une augmentation globale, et des oscillations assez régulières avec des minima locaux les mois de Septembre / Octobre et des maxima locaux les mois de Mai et Juin."