diff --git a/module3/exo3/exercice_fr.ipynb b/module3/exo3/exercice_fr.ipynb index 61155e4dcfab14924eb980f1fc3e76e87d5bbe9e..c2e25b18a8c51b8effde2ee6dfb5b5e92025017d 100644 --- a/module3/exo3/exercice_fr.ipynb +++ b/module3/exo3/exercice_fr.ipynb @@ -813,7 +813,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 8, @@ -870,7 +870,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 9, @@ -930,7 +930,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 11, @@ -958,7 +958,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Parfait. Maintenant, trouvons les deux données minimales (au début et à la fin de l'oscillation respectivement) afin de trouver la pente de $f$. $f$ étant croissante, le premier minimum est le minimum de l'année isolée. Les valeurs de début d'année 2024 étant supérieures au deuxième minimum, nous pouvons le trouver en contraignant `year == 2024`. On vérifie par la suite que les minima trouvés sont bien ceux attendus par analyse graphique.\n", + "Parfait. Maintenant, trouvons les deux données minimales (au début et à la fin de l'oscillation respectivement) afin de trouver la pente de $f$. $f$ étant croissante, le premier minimum est le minimum de l'année isolée. Les valeurs de début d'année 2024 étant supérieures au deuxième minimum, nous pouvons le trouver en contraignant `year == 2024`. On vérifie par la suite que les minima trouvés sont bien ceux attendus par l'analyse graphique.\n", "\n", "Nous pourrons ensuite enlever cette contribution lente pour avoir une oscillation brute, et mesurer son amplitude.\n", "\n", @@ -967,7 +967,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 19, "metadata": {}, "outputs": [ { @@ -977,16 +977,17 @@ "2023-09-23 417.77\n", "Freq: 7D, dtype: float64\n", "2024-09-14 421.39\n", - "Freq: 7D, dtype: float64\n" + "Freq: 7D, dtype: float64\n", + "3.57980392156864\n" ] }, { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 12, + "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, @@ -1024,9 +1025,17 @@ "data_last_year_filtered -= f\n", "data_last_year_filtered.index = data_last_year.index\n", "amp = data_last_year_filtered.max() / 2\n", + "print(amp)\n", "data_last_year_filtered.plot()" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nous obtenons une amplitude de 3.6 ppm, soit un écart entre minimum et maximum annuel d'environ 7.2 ppm. De plus, nous pouvons voir que pour la variation annuelle, la croissance est plus lente que la décroissance, et donc le maximum n'est pas exactement 6 mois après le minimum. Nous négligerons cette déviation par rapport à notre modèle." + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -1043,101 +1052,158 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAD8CAYAAAB5Pm/hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzt3Xl8VPW9//HXhwBhJywJW9jXArIZoigiUlSquLRqxaVSUVHqdeltq/LTLl5rW2uvtnVpixvUhcUN96uoRWUnYZMAkUS2sCWsIQSyzff3xxzsFBOSQCZnZvJ+Ph555MyZc2beSSbvnHzPMuacQ0REYlc9vwOIiEh4qehFRGKcil5EJMap6EVEYpyKXkQkxqnoRURinIpeRCTGqehFRGKcil5EJMbV9zsAQNu2bV23bt38jiEiElXS09P3OOcSK1suIoq+W7dupKWl+R1DRCSqmNmWqiynoRsRkRinohcRiXEqehGRGKeiFxGJcSp6EZEYp6IXEYlxKnoRkRinohcR8cn0hZtYsHFP2J9HRS8i4oMVW/fz0HvreS19W9ifS0UvIlLLDhQWc8crK+nQshEPXjow7M8XEZdAEBGpK5xz3D93Lbvzj/L6lLNo2aRB2J9TW/QiIrVo7qrtvLdmJz89vw+DOyfUynNWuejNLM7MVprZu97tR81sg5mtMbM3zSwhZNmpZpZlZplmdmE4gouIRJuc/YX8am4Gw7u14rZze9ba81Zni/4uYH3I7XnAQOfcIOArYCqAmfUHJgADgHHA02YWVzNxRUSiU2lZgLtnrcIBj/1wCHH1rNaeu0pFb2bJwMXAs8fmOec+cs6VejeXAMne9GXALOdckXNuE5AFpNZcZBGR6LN8835WbN3Pby8fSOfWTWr1uau6M/bPwD1A8wrunwTM9qY7ESz+Y3K8eSIiddaInm2Y99/n0jOxWa0/d6Vb9GY2Hsh1zqVXcP/9QCnw8rFZ5SzmyllvspmlmVlaXl5eNSKLiEQnP0oeqjZ0czZwqZltBmYBY8zsJQAzmwiMB65zzh0r8xygc8j6ycCO4x/UOTfNOZfinEtJTKz0nbBEROQkVVr0zrmpzrlk51w3gjtZP3XOXW9m44B7gUudc4Uhq7wNTDCzeDPrDvQGloUhu4hIRMo/WsLtr6wgK/eQ31GAUzth6kkgHphnZgBLnHO3OecyzGwOsI7gkM7tzrmyU48qIhL5tu0rZNL05Wzac5gLB7SnV1JFuzZrT7WK3jk3H5jvTfc6wXIPAw+fSjARkWizOHsv//XKCkrKAvzzplTO6tnW70iALoEgInLKnHM8t2ATv3t/PcmtmvD8j4fTK8mfHa/lUdGLiJyC4tIAD8z9kjlpOXxvYHsevWowzeIjq1ojK42ISBTZW1DElJdWsGzzPu4c04u7x/ahXi2e8VpVKnoRkZOwbkc+k19MI+9QEU9cM5RLBnf0O1KFVPQiItX0xcY8bn0xneaN6jPn1hG1dhXKk6WiFxGphoKiUu6YuZIurZvwz0mpJLVo5HekSqnoRUSqoVl8fZ6bmEKvxOa18qYhNUFFLyJSTad3be13hGrRO0yJiMQ4Fb2IyAk8+8XXPPnpRv593cboo6IXEanACws38dv31rNuZz5R3PMqehGR8ry3ZicPvrOO8/u34/Grh0TkiVBVpaIXETlO2uZ9/HTOKlK6tuKJa4YSXz+63/ZaRS8iEmLbvkImv5hOp4TGPHNDCo0aRHfJg4peROQbh46WcPOMNErLAjw3MYVWTRv6HalG6Dh6ERHgSHEZt76YTnZeAdNvTKWHT+/vGg4qehGp87JyD3H7yyv5KvcQj/1wMCN7R8YbhtQUFb2I1GlvrMjh/jfX0qRhHDNuTGVUn0S/I9U4Fb2I1ElHisv49dtrmZOWQ2r31jxxzVDaRcEFyk6Gil5E6pys3EP85OUVbMwt4I4xvbjru72pHxe7x6ao6EWkTtm85zBX/X0xcfUsZodqjqeiF5E646OMXdzz+hoMeO22s+jWtqnfkWpF7P6vIiIS4oMvdzL5xXSSWzXmjZ+cXWdKHrRFLyJ1wMqt+7l79iqGdUnglVvOjImzXatDW/QiEtO27Svkln+m0a5Fo5i5pEF1qehFJGYdLirl5hlplJQ5XrhxOG2axfsdyRcauhGRmPW799fzVe4h/jkplZ4xdEmD6tIWvYjEpIVZe3h56VZuHtmdc3rH/iGUJ1LlojezODNbaWbverdbm9k8M9vofW4VsuxUM8sys0wzuzAcwUVEKpJ76Cg/nb2KHm2b8rML+vodx3fV2aK/C1gfcvs+4BPnXG/gE+82ZtYfmAAMAMYBT5tZ3dv7ISK+KPDG5fOPlvD09cPq5M7X41Wp6M0sGbgYeDZk9mXADG96BnB5yPxZzrki59wmIAtIrZm4IiIV27L3MFf+bREZO/J58pph9Gvfwu9IEaGqW/R/Bu4BAiHz2jnndgJ4n5O8+Z2AbSHL5Xjz/oOZTTazNDNLy8vLq3ZwEZFQn6zfzfgnFrDz4FGenZjC2P7t/I4UMSotejMbD+Q659Kr+JjlvYPut94/3Tk3zTmX4pxLSUys2ztKROTklQUcj32UyU0z0ujSugnv3jGS8/omVb5iHVKVwyvPBi41s4uARkALM3sJ2G1mHZxzO82sA5DrLZ8DdA5ZPxnYUZOhRUQA9h8u5q7Zq/j8qzyuOj2Zhy4fqDH5clS6Re+cm+qcS3bOdSO4k/VT59z1wNvARG+xicBb3vTbwAQzizez7kBvYFmNJxeROu3LnIOMf2IBS7L38vsfnMYfrxykkq/AqZww9QdgjpndBGwFrgJwzmWY2RxgHVAK3O6cKzvlpCIino8ydnHHzJW0adqQV28bweDOCX5Himjm3LeGz2tdSkqKS0tL8zuGiEQ45xz/+PxrHv0wk4GdWvL8xJQ6e1kDADNLd86lVLacLoEgIlEhEHD8+u0MXlyyhYsHdeCRKwbRLF4VVhX6LolIVJiTto0Xl2zh1lE9uO97/TAr7wA/KY+KXkSiwpWnJ5PQpAHjBnbwO0rU0UXNRCQq1I+rp5I/SSp6EZEYp6IXkYi0bke+3xFihopeRCKKc44nP93IRX/9gg8zdvkdJyZoZ6yIRIxAwPGrt9fy0pKtXD6kI6P76jpYNUFFLyIR4UhxGfe8voZ3Vu/g1nN7cN84HUJZU1T0IuK71dsOcOeslWzZW8h93+vHraN6qORrkIpeRHw1Z/k2Hpi7lsTm8bxyyxmc1bOt35FijopeRHyRvmU/f/hgPcs37+fsXm144pphtG7a0O9YMUlFLyK17s2VOfxszmoSm8fzq/H9uWFEV+rH6SDAcFHRi0itmpO2jXtfX8OZ3dvwzMQUXZisFug7LCK15qUlW3hg7lrO6d2WaT9KoXFDvVFIbVDRi0iteD09hwfmruW7/ZJ4+vphxNdXydcWDYqJSNi9tWo7P39tNWf2aK2S94G26EUkbAIBx/MLN/G799czvFtrnp04XCXvAxW9iIRF7qGj/Pfs1SzI2sMF/dvx+NVDaKodr77Qd11EatyyTfu4ecZyikoD/O77pzFheGfq1dOZrn5R0YtIjSktCzB90Wb+9FEmHRMaM+1HKfRKauZ3rDpPRS8iNWLHgSNMfjGNtdvzOa9vIo9eNZi2zeL9jiWo6EWkBqRt3sftr6ygsKiMp68bxvcGttdFySKIil5ETtqBwmLun7uW99bspFNCY16dkkq/9i38jiXHUdGLyEl7a9UOPsrYxd1je3PLOT10VE2E0k9FRE7aDSO6cnavNvRKau53FDkBnRkrIifNzFTyUUBFLyIS4yotejNrZGbLzGy1mWWY2YPe/CFmtsTMVplZmpmlhqwz1cyyzCzTzC4M5xcgIiInVpUx+iJgjHOuwMwaAAvM7APgf4AHnXMfmNlFwB+B0WbWH5gADAA6Ah+bWR/nXFmYvgYRETmBSrfoXVCBd7OB9+G8j2PHUbUEdnjTlwGznHNFzrlNQBaQioiI+KJKR92YWRyQDvQCnnLOLTWzu4EPzexPBP9gnOUt3glYErJ6jjfv+MecDEwG6NKly0l/ASIicmJV2hnrnCtzzg0BkoFUMxsITAF+6pzrDPwUeM5bvLzT4Vw5jznNOZfinEtJTEw8ufQiIlKpah1145w7AMwHxgETgTe8u17l38MzOUDnkNWS+fewjoiI1LKqHHWTaGYJ3nRjYCywgWB5n+stNgbY6E2/DUwws3gz6w70BpbVdHARqVm5+Uf9jiBhUpUx+g7ADG+cvh4wxzn3rpkdAP5iZvWBo3jj7c65DDObA6wDSoHbdcSNSOQ6WlLG0/Oz+fv8bGZOPoPTu7b2O5LUsEqL3jm3BhhazvwFwOkVrPMw8PAppxORsCosLuXivy5g057DfH9oJ53lGqN0rRuROqxJw/pcPqQTp3dtxcjebf2OI2Giohep4+4a29vvCBJmutaNiEiMU9GLiMQ4Fb1IHbBhVz7XPbuEPQVFfkcRH2iMXiTGZecVcMNzyzALHkopdY+KXiSGrd+Zz4+eWwrAKzefSXKrJj4nEj9o6EYkRqVv2ceEaUuoX68es28dQZ92Oka+rlLRi8SgT9bv5rpnl9K6aUNevW0EPROb+R1JfKShG5EYUlhcyl8+3sg/Pv+agZ1aMP3GVNo2i/c7lvhMRS8SIxZn7+W+N9awZW8h16R24deX9KdRgzi/Y0kEUNGLRLlt+wp58J0MPl6fS6eExsy85UxG9GzjdyyJICp6kShVUhbgxcVbeGzeVwDcM64vk87urq14+RYVvUgUWpy9l1+9tZaNuQWc07stv//BaTp0UiqkoheJEmUBx+cb85i9bBv/l7GLzq0b88wNKYz9ThJm5b2Dp0iQil4kwm3bV8js5dt4LT2HXflHad20IVNG9+TOMb1p3FDDNFI5Fb1IhDpQWMz/vLOOt1bvwDnH6L5J/ObS/ozp146G9XUKjFSdil4kAu08eIQbnlvGlr2FTDq7G5NGdqdDy8Z+x5IopaIXiTDHLkJ28EgJMyal6lBJOWUqepEIsqegiOufXUpJWYBZk89kYKeWfkeSGKCiF4kQZQHHXbNWsu9wMa9POUslLzVGRS8SIf7yyUYWZu3lkStOU8lLjdKue5EI8GraNp74dCNXnp7MD1M6+x1HYoy26EV8FAg4/vZZNo9+mMk5vdvy28sH6uQnqXEqehEfFJcG+Hj9bp5bsIn0Lfu5ZHBHHr1ykK5TI2GhohepRbn5R3k1PYcXFm5mT0ERnRIa88gVp/HDlM7akpewUdGL1IKjJWX85ZONvLBwE0dLAgzv1opHrxzEqD6JxNVTwUt4qehFwiwr9xD/9cpKNuw6xOVDOnL32D50a9vU71hSh1R61I2ZNTKzZWa22swyzOzBkPvuMLNMb/4fQ+ZPNbMs774LwxVeJJI555i1bCvjn1hA7qEipt84nD9PGKqSl1pXlS36ImCMc67AzBoAC8zsA6AxcBkwyDlXZGZJAGbWH5gADAA6Ah+bWR/nXFl4vgSRyLP/cDH3z/2S97/cxchebXns6sEkNW/kdyypoyoteuecAwq8mw28DwdMAf7gnCvylsv1lrkMmOXN32RmWUAqsLiGs4tEpKzcQ9w4fTm7Dh7l3nH9uHVUD+ppHF58VKUTpswszsxWAbnAPOfcUqAPcI6ZLTWzz8xsuLd4J2BbyOo53rzjH3OymaWZWVpeXt6pfRUiEWJx9l5+8PQijhQHePW2s5gyuqdKXnxXpaJ3zpU554YAyUCqmQ0k+N9AK+BM4BfAHAseH1beq9qV85jTnHMpzrmUxMTEk/4CRCJBIOB48tONXPfsEpJaNOLNn5zFkM4JfscSAap51I1z7oCZzQfGEdxSf8Mb2llmZgGgrTc/9BzuZGBHzcQViTwFRaX8bM4qPszYzSWDO/LbywfSsnEDv2OJfKMqR90kmlmCN90YGAtsAOYCY7z5fYCGwB7gbWCCmcWbWXegN7AsPPFF/LV+Zz6XP7WQj9fn8svx/fnrhCEqeYk4Vdmi7wDMMLM4gn8Y5jjn3jWzhsDzZrYWKAYmelv3GWY2B1gHlAK364gbiTXFpQGe+eJr/vLxRlo2acCLk1I5q1dbv2OJlMuC3eyvlJQUl5aW5ncMkUrtKSjis8w8/vZZNlm5BXxvYHt+e/lA2jSL9zua1EFmlu6cS6lsOZ0ZK1IB5xxpW/azfPM+Nu4uYP3OfDJ3H8I56NK6Cc//OIUx/dr5HVOkUip6kRClZQE+3ZDLZ1/l8fnGPLbtOwJAh5aN6Nu+ORef1oHRfZMY0LGFDpuUqKGiFwEOFpbw9GdZvJqWw77DxTRtGMeInm2447zejDutPS0aaQerRC8VvdR5a3IO8JOXV7DjwBEu6N+eK09PZnTfROrH6Q3YJDao6KXO2nnwCE/9K4tZy7bRrkUjXptyFsO6tPI7lkiNU9FLnbN1byF/+yyL19JzcA4mpHbmZ+f3pVXThn5HEwkLFb3UGdl5BTz9r2zmrtpOnBlXD+/Mbef2JLlVE7+jiYSVil5i3pc5B/nbZ1l8sHYX8fXrMXFEN249twftWuiywVI3qOglZuUfLeH3729g1vKttGjUgMmjenDLOT1oq5ObpI5R0UtMWrF1P5P/mca+w8XcdHZ37hzbW4dISp2lopeYM2/dbu6YuYJ2LRox/cZUBnZq6XckEV+p6CWmvLx0C7+cu5bTOrXkuR8P1zCNCCp6iRGBgON/52Xy1L+yOa9vIk9dN4wmDfXyFgEVvcQA5xz3z13LzGVbuSa1Mw9dNlBntYqEUNFLVNt3uJh7X1/DvHW7mTK6J/dc2JfgO1qKyDEqeolKzjne/3IXv3kng4OFJTxw8Xe4aWR3lbxIOVT0EnW27SvkV2+t5V+ZeQzs1IIZN6bSv2MLv2OJRCwVvUSNkrIALyzcxOPzNmIGvxzfn4kjumo8XqQSKnqJClm5BdwxcyXrd+Yz9jvtePCyAXRKaOx3LJGooKKXqNCqSfCs1n/86HQuHNDe5zQi0UVFLxHnaEkZryzdSkq3VgxKTgCgTbN43r9zpHa2ipwEFb1ElOWb93HHKyvZlX+UKaN7flP0gEpe5CSp6CWidG3dhF5JzXj86iGM6NnG7zgiMUFFL74qLQv8x1EzSS0a8dLNZ/iYSCT26Lg08c2nG3Zz/uOfs+PAEb+jiMQ0Fb344qUlW7h5RhpN4+PQ0LtIeGnoRmpVaVmA3763numLNusqkyK1pNItejNrZGbLzGy1mWWY2YPH3f9zM3Nm1jZk3lQzyzKzTDO7MBzBJfps2XuYa59dyvRFm7l5ZHeenThcJS9SC6ryW1YEjHHOFZhZA2CBmX3gnFtiZp2B84GtxxY2s/7ABGAA0BH42Mz6OOfKwpBfIlxJWYB3Vu9g+qLNrMk5SJOGcTx+9WC+PzTZ72gidUalRe+cc0CBd7OB9+G8248D9wBvhaxyGTDLOVcEbDKzLCAVWFxToSXyHSkuY/byrTzzxSa2HzhCn3bN+MWFfbliWDLtWzbyO55InVKl/5vNLA5IB3oBTznnlprZpcB259zq405k6QQsCbmd482TOmDf4WJeWrKF6Ys2s+9wMcO7teKhywdwXt8knfAk4pMqFb037DLEzBKAN81sEHA/cEE5i5f32+y+tZDZZGAyQJcuXaocWCLT4uy9PPPF18zPzCXg4Lv9krhtdE+Gd2vtdzSROq9ae8KccwfMbD7B4ZnuwLGt+WRghZmlEtyC7xyyWjKwo5zHmgZMA0hJSfnWHwKJDjn7C/nd++t5/8tdJDaP59Zze3L5kE70bd/c72gi4qm06M0sESjxSr4xMBZ4xDmXFLLMZiDFObfHzN4GXjGzxwjujO0NLAtLevHVy0u38NC76wD47/P7MHlUDxo1iPM5lYgcrypb9B2AGd44fT1gjnPu3YoWds5lmNkcYB1QCtyuI25iS/7REu5/cy3vrN7BqD6J/P4Hp+na8CIRrCpH3awBhlayTLfjbj8MPHxKySQiLd+8j5+/upqc/Uf4+QV9mDK6F3H1tJNVJJLpbBWpksxdh3j0ww18vD6XDi0bMXvymaRoR6tIVFDRywnl7C/k8XkbeWNlDs0a1ucXF/blxrO76YxWkSii31Yp1/7DxTz1ryz+uXgLGNw8sjs/Gd2LVk0b+h1NRKpJRS//oSzgmLlsK3/6KJP8IyVcMSyZu8/vo52tIlFMRS/fWL8zn/teX8PqnIOc2aM1v7l0AP3at/A7loicIhW9ADB7+VYemLuWFo0a8JcJQ7h0cEddskAkRqjo67ji0gAPvpPBy0u3ck7vtvx1wlCNw4vEGBV9HZabf5QpL68gfct+bju3J7+4sK+OiReJQSr6OixjZz4bdubz5LVDGT+oo99xRCRMVPR1xJHiMt77cicjerb55gia8/om8cW9Y2itoRqRmKaij3F7Cop4ackWZizazP7CEn59SX9uPLv7N/er5EVin4o+Bh0tKWN+Zh6vpW9jfmYepQHH2O8kccs5PUjtrssWiNQ1KvooV1waYGHWHrLzCth+4AjZeYdZkr2X4rIASc3juWlkd65KSaZXkq4PL1JXqeij1MHCEl5cspkZi7eQd6gIgKYN40hu1YTrzuzCqD6JnNOrLfXj6vmcVET8pqKPQjsPHuHaZ5ayac9hRvVJ5JErujK0cysSmjTQSU4i8i0q+iizt6CI655Zyp5DRcyefCZn9GjjdyQRiXAq+iiy6+BRbpqxnO0HjvDSzWfojbdFpEpU9FHio4xd3D93LYVFpfz9R6er5EWkylT0ESwQcCzM3sMLCzfz6YZc+rVvzos3peqKkiJSLSr6CBMIODJ25DM/M5d31+wkc/chmsfX5/9d1I8bz+5OAx1FIyLVpKL3mXOO5Zv3Mz8zly17C1mUvYf9hSUADE5uyf9eNZhxA9vTNF4/KhE5OWoPn+TsL+SDL3cxc/lWvs47TFw9o22zhpzXL4mze7ZlVJ9EEpvH+x1TRGKAir6WrduRz9Pzs3j/y50EHAzpnMCfrhrMRae11xtui0hYqFlqSf7REv7wwQZmLttKs4b1uWVUD65L7UqXNk38jiYiMU5FH2bOOd7/chcPvpNBXkERk87uzp1jetOySQO/o4lIHaGiD5OSsgBfbMxj+qItfP5VHgM7teDZiSkMSk7wO5qI1DEq+hq2t6CId1bv4G+fZbM7v4iEJg345fj+TBzRVRcYExFfqOhrSFnAce0zS1i2eR/OQUrXVjx02UBG902iYX0VvIj4p9KiN7NGwOdAvLf8a865X5vZo8AlQDGQDdzonDvgrTMVuAkoA+50zn0YpvwRI66e0SupGWf0aMO4Ae35TofmupKkiEQEc86deIFgWzV1zhWYWQNgAXAX0AL41DlXamaPADjn7jWz/sBMIBXoCHwM9HHOlVX0HCkpKS4tLa1GvqBwKi0L8MaK7VxxejJx9VTiIuIvM0t3zqVUtlylW/Qu+JegwLvZwPtwzrmPQhZbAlzpTV8GzHLOFQGbzCyLYOkvrkb+iOKcI23Lfh56dx1rcg7SonEDxg1s73csEZEqqdIYvZnFAelAL+Ap59zS4xaZBMz2pjsRLP5jcrx5UWft9oMsyt7Dq2k5bMwtoE3Thjx17TCVvIhElSoVvTfsMsTMEoA3zWygc24tgJndD5QCL3uLlzem8a3xITObDEwG6NKly0lED7+Xl25l5rKtDO2SwCNXnMb4QR11zRkRiTrVai3n3AEzmw+MA9aa2URgPPBd9+/B/hygc8hqycCOch5rGjANgmP01Y8efneM6cV/jelFp4TGfkcRETlplR73Z2aJ3pY8ZtYYGAtsMLNxwL3Apc65wpBV3gYmmFm8mXUHegPLaj561RwsLOGtVduZsWhztdftmNBYJS8iUa8qW/QdgBneOH09YI5z7l1vJ2s8MM87jHCJc+4251yGmc0B1hEc0rn9REfchEMg4PjsqzxmLd/KJ+tzKQ04+rVvzg0juuqQRxGpc6py1M0aYGg583udYJ2HgYdPLVrVlQUcX+0+xKptB8jcdYjF2XvJ3H2Its0aMmlkdy7o345hXVqp5EWkTorqPYtrtx/krlkr2bbvCMVlAQAaN4ijX4fm/O9Vg7lkcEedlSoidV5UF32rpg3pldSMsd9pR592zUnp1orOrZpQTycziYh8I6qLvlNCY/7xo0pPChMRqdM0riEiEuNU9CIiMU5FLyIS41T0IiIxTkUvIhLjVPQiIjFORS8iEuNU9CIiMa7StxKslRBmh4DMk1y9C7C1BuMcryVwMEyPHc3ZIbz5ozk76HVzInrdVKy6+fs655pXtlCkFH1aVd73sIJ185xziTWdKeTxpznnJofpsaM2u/f4Ycsfzdm9x9frpuLH1+um4sevVv6qdmcsDN0cCPPjvxPGx47m7BDe/NGcHfS6ORG9bioWlvyxUPTh/DcN51w4XzjRnB3CmD+as4NeN5XQ66YC4cofKUU/zad1/RbN2SG68yu7f6I5f6Rlr1KeiBijFxGR8ImULXoREQmTiCt6M3vezHLNbG3IvMFmttjMvjSzd8ysRch9g7z7Mrz7G3nzT/duZ5nZX62W3kewOvnN7DozWxXyETCzIX7lr2b2BmY2w5u/3symhqwT6dkbmtkL3vzVZjba5+ydzexf3vcxw8zu8ua3NrN5ZrbR+9wqZJ2pXsZMM7swmvKbWRtv+QIze/K4x6rV/CeR/XwzS/cyppvZGL+yV4tzLqI+gFHAMGBtyLzlwLne9CTgIW+6PrAGGOzdbgPEedPLgBGAAR8A34u0/MetdxrwdcjtWs9fze/9tcAsb7oJsBnoFiXZbwde8KaTgHSgno/ZOwDDvOnmwFdAf+CPwH3e/PuAR7zp/sBqIB7oDmT7+bo/ifxNgZHAbcCTxz1WreY/iexDgY7e9EBgu1/Zq/V1+h2ggm9+t+N+YfP59/6EzsA6b/oi4KUKfngbQm5fA/wj0vIft87vgIf9zl+N7/01BA8Fq0/wD+xXQOsoyf4UcH3Icp8AqX6/bkKe9y3gfIInEXYIeU1ketNTgakhy3/oFUxU5A9Z7seEFH0k5K9qdm++AXsJ/sH1PfuJPiJu6KYCa4FLvemrCP7SAvQBnJksLp+FAAAC2ElEQVR9aGYrzOweb34nICdk/Rxvnl8qyh/qamCmNx1J+SvK/hpwGNhJ8EzBPznn9hEd2VcDl5lZfTPrDpzu3ed7djPrRnCrcSnQzjm3E8D7nOQt1gnYFrLasZzRkr8ivuY/iexXACudc0VEwPf+RKKl6CcBt5tZOsF/r4q9+fUJ/gt4nff5+2b2XYJ/aY/n5+FFFeUHwMzOAAqdc8fGlyMpf0XZU4EyoCPB4YOfmVkPoiP78wR/EdOAPwOLgFJ8zm5mzYDXgbudc/knWrScee4E82tFNfJX+BDlzKuV/NXNbmYDgEeAW4/NKmexiDmkMSreHNw5twG4AMDM+gAXe3flAJ855/Z4971PcJz2JSA55CGSgR21Fvg4J8h/zAT+vTUPwa8rIvKfIPu1wP8550qAXDNbCKQAXxDh2Z1zpcBPjy1nZouAjcB+fMpuZg0IFs3Lzrk3vNm7zayDc26nmXUAcr35Ofznf4XHcvr2uqlm/or4kr+62c0sGXgTuME5l+1n9qqKii16M0vyPtcDHgD+7t31ITDIzJqYWX3gXILjsDuBQ2Z2prfn+waCY2++OEH+Y/OuAmYdmxdJ+U+QfSswxoKaAmcSHKOM+Oze66WpN30+UOqc8+114z3Xc8B659xjIXe9DUz0pieGZHkbmGBm8d7QU29gWRTlL5cf+aub3cwSgPcI7iNZ6Gf2avF7J0E5OzhmEhz3LSH4V/Im4C6CO/u+Av6At4PNW/56IIPgeOwfQ+anePOygSdD14mw/KOBJeU8Tq3nr052oBnwqve9Xwf8IoqydyO4s2098DHQ1efsIwn+m78GWOV9XERwJ/cnBP/b+ARoHbLO/V7GTEKO7oii/JuBfUCB9/Pq70f+6mYnuMFwOGTZVUCSX9/7qn7ozFgRkRgXFUM3IiJy8lT0IiIxTkUvIhLjVPQiIjFORS8iEuNU9CIiMU5FLyIS41T0IiIx7v8DkPb9x/Ro1JQAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "filled_data = full_data.copy()\n", + "filled_data[interpolated_marks == 1] = np.nan\n", + "rolling_base = pd.Series(data=filled_data.values, index=range(len(filled_data)))\n", + "rolling_mean = rolling_base.rolling(window=52, center=True).mean()\n", + "rolling_mean.index = full_index\n", + "rolling_mean.plot()" + ] + }, + { + "cell_type": "markdown", "metadata": {}, - "outputs": [], "source": [ - "test = full_data.copy()\n", - "test[interpolated_marks == 1] = np.nan\n", - "print(np.mean)" + "On voit bien que la dérivée de cette courbe est strictement croissante. Une modélisation simple est par exemple un polynôme du second degré en temps : $f(t)=at^2+bt+c$. En utilisant la fonction `numpy.polyfit`, nous pouvons retrouver les paramètres $a$, $b$ et $c$ correspondant à notre jeu de données :" ] }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "1958-03-29 316.118235\n", - "1958-04-05 316.118235\n", - "1958-04-12 316.118235\n", - "1958-04-19 316.118235\n", - "1958-04-26 316.118235\n", - "1958-05-03 316.118235\n", - "1958-05-10 315.947778\n", - "1958-05-17 315.806316\n", - "1958-05-24 315.694500\n", - "1958-05-31 315.614286\n", - "1958-06-07 315.566364\n", - "1958-06-14 315.516087\n", - "1958-06-21 315.485000\n", - "1958-06-28 315.474000\n", - "1958-07-05 315.465000\n", - "1958-07-12 315.466296\n", - "1958-07-19 315.474286\n", - "1958-07-26 315.487586\n", - "1958-08-02 315.485333\n", - "1958-08-09 315.485333\n", - "1958-08-16 315.532258\n", - "1958-08-23 315.565938\n", - "1958-08-30 315.597879\n", - "1958-09-06 315.633529\n", - "1958-09-13 315.633529\n", - "1958-09-20 315.664857\n", - "1958-09-27 315.693889\n", - "1958-10-04 315.736389\n", - "1958-10-11 315.731111\n", - "1958-10-18 315.729722\n", - " ... \n", - "2024-04-20 423.620943\n", - "2024-04-27 423.687170\n", - "2024-05-04 423.772642\n", - "2024-05-11 423.850189\n", - "2024-05-18 NaN\n", - "2024-05-25 NaN\n", - "2024-06-01 NaN\n", - "2024-06-08 NaN\n", - "2024-06-15 NaN\n", - "2024-06-22 NaN\n", - "2024-06-29 NaN\n", - "2024-07-06 NaN\n", - "2024-07-13 NaN\n", - "2024-07-20 NaN\n", - "2024-07-27 NaN\n", - "2024-08-03 NaN\n", - "2024-08-10 NaN\n", - "2024-08-17 NaN\n", - "2024-08-24 NaN\n", - "2024-08-31 NaN\n", - "2024-09-07 NaN\n", - "2024-09-14 NaN\n", - "2024-09-21 NaN\n", - "2024-09-28 NaN\n", - "2024-10-05 NaN\n", - "2024-10-12 NaN\n", - "2024-10-19 NaN\n", - "2024-10-26 NaN\n", - "2024-11-02 NaN\n", - "2024-11-09 NaN\n", - "Freq: 7D, Length: 3477, dtype: float64\n" + "2.868211382735772e-16 4.000936624074663e-09 0.002605559356891354\n" ] }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "t = np.arange(len(rolling_mean))\n", + "rolling = pd.Series(data=rolling_mean.values, index=t).dropna()\n", + "p = np.polyfit(rolling.index, rolling.values, 2, cov=True)\n", + "a = p[0][0]\n", + "b = p[0][1]\n", + "c = p[0][2]\n", + "err = p[1]\n", + "a_err = err[0, 0]\n", + "b_err = err[1, 1]\n", + "c_err = err[2, 2]\n", + "f = pd.Series(data=a*t**2+b*t+c, index=full_index)\n", + "f.plot()\n", + "print(a_err, b_err, c_err)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nous retrouvons bien la dynamique de fond, qui plus est avec des incertitudes assez faibles sur les coefficients calculés. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Prédiction de la dynamique complète" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nous pouvons maintenant recréer la dynamique totale de $C(t) = f(t) + A\\cos\\Big(\\frac{2\\pi}{T}(t-t_0)\\Big)$, avec $t_0$ fixé à la mi-mars 1959 (6 mois après la mi-septembre), soit `t[50]` :" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "DatetimeIndex(['1958-03-29', '1958-04-05', '1958-04-12', '1958-04-19',\n", + " '1958-04-26', '1958-05-03', '1958-05-10', '1958-05-17',\n", + " '1958-05-24', '1958-05-31', '1958-06-07', '1958-06-14',\n", + " '1958-06-21', '1958-06-28', '1958-07-05', '1958-07-12',\n", + " '1958-07-19', '1958-07-26', '1958-08-02', '1958-08-09',\n", + " '1958-08-16', '1958-08-23', '1958-08-30', '1958-09-06',\n", + " '1958-09-13', '1958-09-20', '1958-09-27', '1958-10-04',\n", + " '1958-10-11', '1958-10-18', '1958-10-25', '1958-11-01',\n", + " '1958-11-08', '1958-11-15', '1958-11-22', '1958-11-29',\n", + " '1958-12-06', '1958-12-13', '1958-12-20', '1958-12-27',\n", + " '1959-01-03', '1959-01-10', '1959-01-17', '1959-01-24',\n", + " '1959-01-31', '1959-02-07', '1959-02-14', '1959-02-21',\n", + " '1959-02-28', '1959-03-07', '1959-03-14', '1959-03-21'],\n", + " dtype='datetime64[ns]', freq='7D') 1959-03-14 00:00:00\n" + ] + } + ], + "source": [ + "print(full_index[:52], full_index[50])" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 27, + "execution_count": 16, "metadata": {}, "output_type": "execute_result" }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -1149,22 +1215,84 @@ } ], "source": [ - "rolling_base = full_data.copy()\n", - "rolling_base[interpolated_marks == 1] = np.nan\n", - "rolling_mean_with_offset = rolling_base.rolling(window='365D', min_periods=1).mean()\n", - "# This function computed the rolling mean for the year after each value,\n", - "# and not for the 6 month before to 6 month after period for each value\n", - "rolling_mean = rolling_mean_with_offset.shift(periods=-182, freq='D')\n", - "print(rolling_mean.reindex(full_index))\n", - "rolling_mean.plot()" + "C = f + pd.Series(data=amp * np.cos(2 * np.pi * (t-50) / 52.1429), index=f.index)\n", + "C.plot()\n", + "data.plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Notre modélisation a l'air de bien fonctionner. Voyons maintenant les prédictions en 2030 (nous sommes déjà presque en 2025...) :" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 17, "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "index_extended = pd.date_range(start=data.index[0], end=pd.Timestamp(2031, 1, 1), freq='7D')\n", + "t_extended = np.arange(len(index_extended))\n", + "f_extended = pd.Series(data=a*t_extended**2+b*t_extended+c, index=index_extended)\n", + "C_extended = f_extended + pd.Series(data=amp * np.cos(2 * np.pi * (t_extended-50) / 52.1429), index=f_extended.index)\n", + "fig, ax = plt.subplots(1)\n", + "ax.plot(C_extended[-500:], label='Prédiction complète')\n", + "ax.plot(f_extended[-500:], label='Prédiction concentration de fond')\n", + "ax.plot(data[-200:], label='Mesures')\n", + "ax.set_xlabel(\"Date\")\n", + "ax.set_ylabel(r\"Concentration en CO$_2$ (ppm)\")\n", + "ax.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "La valeur de la concentration en CO$_2$ prédite pour 2030 est la moyenne de `C_extended` sur cette année :" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "438.5762020682022\n" + ] + } + ], + "source": [ + "start_date = pd.Timestamp(2030, 1, 1)\n", + "end_date = pd.Timestamp(2030, 12, 31)\n", + "C_2030 = C_extended[(index_extended > start_date) & (index_extended < end_date)].mean()\n", + "print(C_2030)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "La valeur prédite est de $438.6~\\mathrm{ppm}$ pour 2030. Néanmoins, notre modèle polynomial n'est peut-être pas le bon. En effet, comme on peut le voir sur le graphique précédent, la hausse semble s'accélérer sur les deux dernières années mesurées. Cela peut notamment être dû aux déséquilibres des échanges de CO$_2$ à cause du réchauffement global, ayant atteint tout juste le seuil des $1.5~°\\mathrm{C}$ en 2024..." + ] } ], "metadata": {