{"cells": [{"cell_type": "markdown", "metadata": {}, "source": ["# Evoluation d'une population (correction)\n", "\n", "Evolution d'une population \u00e0 partir des tables de mortalit\u00e9s et d'une situation initiale."]}, {"cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": ["%matplotlib inline\n", "import matplotlib.pyplot as plt"]}, {"cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [{"data": {"text/html": ["
"]}, "metadata": {"needs_background": "light"}, "output_type": "display_data"}], "source": ["from actuariat_python.plots import plot_population_pyramid\n", "plot_population_pyramid(df[\"hommes\"], df[\"femmes\"], figsize=(8, 4));"]}, {"cell_type": "markdown", "metadata": {}, "source": ["### Exercice 2 : calcul de l'esp\u00e9rance de vie\n", "\n", "Le premier objectif est de calculer l'[esp\u00e9rance de vie](https://en.wikipedia.org/wiki/Life_expectancy) \u00e0 l'\u00e2ge $t$ \u00e0 partir de la table de mortalit\u00e9. On r\u00e9cup\u00e8re cette table.\n", "\n", "[comment]: <> (RST: .. index:: table de mortalit\u00e9, mortality table)"]}, {"cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [{"data": {"text/html": ["
\n", "\n", "
\n", " \n", "
\n", "
\n", "
Age
\n", "
Homme
\n", "
Femme
\n", "
\n", " \n", " \n", "
\n", "
0
\n", "
0
\n", "
100000.0
\n", "
100000.0
\n", "
\n", "
\n", "
1
\n", "
1
\n", "
99511.0
\n", "
99616.0
\n", "
\n", "
\n", "
2
\n", "
2
\n", "
99473.0
\n", "
99583.0
\n", "
\n", "
\n", "
115
\n", "
117
\n", "
0.0
\n", "
0.0
\n", "
\n", "
\n", "
116
\n", "
118
\n", "
0.0
\n", "
0.0
\n", "
\n", "
\n", "
117
\n", "
120
\n", "
0.0
\n", "
0.0
\n", "
\n", " \n", "
\n", "
"], "text/plain": [" Age Homme Femme\n", "0 0 100000.0 100000.0\n", "1 1 99511.0 99616.0\n", "2 2 99473.0 99583.0\n", "115 117 0.0 0.0\n", "116 118 0.0 0.0\n", "117 120 0.0 0.0"]}, "execution_count": 8, "metadata": {}, "output_type": "execute_result"}], "source": ["from actuariat_python.data import table_mortalite_france_00_02\n", "df=table_mortalite_france_00_02()\n", "import pandas\n", "pandas.concat([df.head(n=3), df.tail(n=3)])"]}, {"cell_type": "markdown", "metadata": {}, "source": ["On note $P_t$ la population l'\u00e2ge $t$. La probabilit\u00e9 de mourir \u00e0 la date $t+d$ lorsqu'on a l'\u00e2ge $t$ correspond \u00e0 la probabilit\u00e9 de rester en vie \u00e0 jusqu'\u00e0 l'\u00e2ge $t+d$ puis de mourir dans l'ann\u00e9e qui suit :\n", "\n", "$$m_{t+d} = \\frac{P_{t+d}}{P_t}\\frac{P_{t+d} - P_{t+d+1}}{P_{t+d}} $$.\n", "\n", "L'esp\u00e9rance de vie s'exprime :\n", "\n", "$$\\mathbb{E}(t) = \\sum_{d=1}^\\infty d m_{t+d} = \\sum_{d=1}^\\infty d \\frac{P_{t+d}}{P_t}\\frac{P_{t+d} - P_{t+d+1}}{P_{t+d}} = \\sum_{d=1}^\\infty d \\frac{P_{t+d} - P_{t+d+1}}{P_{t}} $$"]}, {"cell_type": "markdown", "metadata": {}, "source": ["On cr\u00e9e une matrice allant de 0 \u00e0 120 ans et on pose $\\mathbb{E}(120)=0$. On utilise le module [numpy](http://www.numpy.org/)."]}, {"cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [{"data": {"text/plain": ["(126, 2)"]}, "execution_count": 9, "metadata": {}, "output_type": "execute_result"}], "source": ["import numpy\n", "hf = df[[\"Homme\", \"Femme\"]].values\n", "hf = numpy.vstack([hf, numpy.zeros((8, 2))])\n", "hf.shape"]}, {"cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [{"data": {"text/plain": ["array([[75.00752, 82.48832]])"]}, "execution_count": 10, "metadata": {}, "output_type": "execute_result"}], "source": ["nb = hf.shape[0]\n", "esp = numpy.zeros ((nb,2))\n", "for t in range(0,nb):\n", " for i in (0,1):\n", " if hf[t,i] == 0:\n", " esp[t,i] = 0\n", " else:\n", " somme = 0.0\n", " for d in range(1,nb-t):\n", " if hf[t+d,i] > 0:\n", " somme += d * (hf[t+d,i] - hf[t+d+1,i]) / hf[t,i]\n", " esp[t,i] = somme\n", "esp[:1] "]}, {"cell_type": "markdown", "metadata": {}, "source": ["Enfin, on dessine le r\u00e9sultat avec matplotlib :"]}, {"cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [{"data": {"image/png": "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\n", "text/plain": ["
"]}, "metadata": {"needs_background": "light"}, "output_type": "display_data"}], "source": ["h = plt.plot(esp)\n", "plt.legend(h, [\"Homme\", \"Femme\"])\n", "plt.title(\"Esp\u00e9rance de vie\");"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Le calcul impl\u00e9ment\u00e9 ci-dessus n'est pas le plus efficace. On fait deux boucles imbriqu\u00e9es dont le co\u00fbt global est en $O(n^2)$ mais surtout on effectue les m\u00eames calculs plusieurs fois. Pour le r\u00e9duire \u00e0 un co\u00fbt lin\u00e9aire $O(n)$, il faut s'int\u00e9resser \u00e0 la quantit\u00e9 :\n", "\n", "$$P_{t+1} \\mathbb{E}(t+1) - P_t \\mathbb{E}(t) = \\sum_{d=1}^\\infty d (P_{t+d+1} - P_{t+d+2}) - \\sum_{d=1}^\\infty d (P_{t+d} - P_{t+d+1})$$"]}, {"cell_type": "markdown", "metadata": {}, "source": ["L'impl\u00e9mentation devra utiliser la fonction [numpy.cumsum](http://docs.scipy.org/doc/numpy/reference/generated/numpy.cumsum.html) et cette astuce [Pandas Dataframe cumsum by row in reverse column order?](http://stackoverflow.com/questions/26389959/pandas-dataframe-cumsum-by-row-in-reverse-column-order)."]}, {"cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": ["# \u00e0 suivre"]}, {"cell_type": "markdown", "metadata": {}, "source": ["[numpy](http://www.numpy.org/) et [pandas](http://pandas.pydata.org/) ont plusieurs fonction en commun d\u00e8s qu'il s'agit de parcourir les donn\u00e9es. Il existe aussi la fonction [DataFrame.cumsum](http://pandas.pydata.org/pandas-docs/dev/generated/pandas.DataFrame.cumsum.html)."]}, {"cell_type": "markdown", "metadata": {}, "source": ["### Exercice 3 : simulation de la pyramide l'ann\u00e9e suivante\n", "\n", "L'objectif est d'estimer la population fran\u00e7aise \u00e0 l'ann\u00e9e $T$. Si $P(a,T)$ d\u00e9signe le nombre de personnes d'\u00e2ge $a$ en $T$, on peut estimer $P(a,T+1)$ en utilisant la probabilit\u00e9 de mourir $m(a)$ :\n", "\n", "$$ P(a+1, T+1) = P(a,T) * (1 - m(a))$$\n", "\n", "On commence par calculer les coefficients $m(a)$ avec la table ``hf`` obtenue lors de l'exercice pr\u00e9c\u00e9dent tout en gardant la m\u00eame dimension (on aura besoin de la fonction [nan_to_num](http://docs.scipy.org/doc/numpy/reference/generated/numpy.nan_to_num.html) :"]}, {"cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [{"name": "stderr", "output_type": "stream", "text": ["c:\\python372_x64\\lib\\site-packages\\ipykernel_launcher.py:1: RuntimeWarning: invalid value encountered in true_divide\n", " \"\"\"Entry point for launching an IPython kernel.\n"]}], "source": ["mortalite = (hf[:-1] - hf[1:]) / hf[:-1]\n", "mortalite = numpy.nan_to_num(mortalite) # les divisions nulles deviennent nan, on les remplace par 0\n", "mortalite = numpy.vstack([mortalite, numpy.zeros((1, 2))])\n", "m = mortalite"]}, {"cell_type": "markdown", "metadata": {}, "source": ["La population a \u00e9t\u00e9 obtenue lors de l'exercice 1, on la convertit en un objet [numpy](http://www.numpy.org/) :"]}, {"cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [{"data": {"text/plain": ["(126, 2)"]}, "execution_count": 14, "metadata": {}, "output_type": "execute_result"}], "source": ["pop = population[[\"hommes\",\"femmes\"]].values\n", "pop = numpy.vstack( [pop, numpy.zeros((m.shape[0] - pop.shape[0], 2))])\n", "pop0 = pop.copy()\n", "pop.shape"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Ensuite on calcule la population en 2020 :"]}, {"cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [{"data": {"text/plain": ["array([[ 0. , 0. ],\n", " [358297.31638 , 344994.11584 ],\n", " [365516.36791912, 350386.88814046],\n", " [371734.07266293, 357228.65195867],\n", " [382450.37346902, 366544.40263353]])"]}, "execution_count": 15, "metadata": {}, "output_type": "execute_result"}], "source": ["pop_next = pop * (1-m)\n", "pop_next = numpy.vstack([numpy.zeros((1, 2)), pop_next[:-1]])\n", "pop_next[:5]"]}, {"cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [{"data": {"text/plain": ["array([[360058., 346324.],\n", " [365656., 350503.],\n", " [371835., 357304.],\n", " [382535., 366607.],\n", " [393693., 377204.]])"]}, "execution_count": 16, "metadata": {}, "output_type": "execute_result"}], "source": ["pop[:5]"]}, {"cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [{"data": {"image/png": "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\n", "text/plain": ["
"]}, "metadata": {"needs_background": "light"}, "output_type": "display_data"}], "source": ["from actuariat_python.plots import plot_population_pyramid\n", "plot_population_pyramid(pop_next[:, 0], pop_next[:, 1]);"]}, {"cell_type": "markdown", "metadata": {}, "source": ["### Exercice 4 : simulation jusqu'en 2100\n", "\n", "Il s'agit de r\u00e9p\u00e9ter l'it\u00e9ration effectu\u00e9e lors de l'exercice pr\u00e9c\u00e9dent. Le plus est de recopier le code dans une fonction et de l'appeler un grand nombre de fois.\n", "\n", "[comment]: <> (RST: .. index:: simulation)"]}, {"cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [{"data": {"image/png": "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\n", "text/plain": ["
"]}, "metadata": {"needs_background": "light"}, "output_type": "display_data"}], "source": ["def iteration(pop, mortalite):\n", " pop_next = pop * (1-mortalite)\n", " pop_next = numpy.vstack([numpy.zeros((1, 2)), \n", " pop_next[:-1]]) # aucune naissance\n", " return pop_next\n", "\n", "popt = pop\n", "for year in range(2020, 2051):\n", " popt = iteration(popt, mortalite)\n", " \n", "plot_population_pyramid(popt[:,0], popt[:,1], title=\"Pyramide des \u00e2ges en 2050\");"]}, {"cell_type": "markdown", "metadata": {}, "source": ["### Exercice 5 : simulation avec les naissances\n", "\n", "Dans l'exercice pr\u00e9c\u00e9dent, la seconde ligne de la fonction *iteration* correspond \u00e0 cas o\u00f9 il n'y a pas de naissance. On veut remplacer cette ligne par quelque chose proche de la r\u00e9alit\u00e9 :\n", "\n", "* les naissances sont calcul\u00e9es \u00e0 partir de la population f\u00e9minines et de la table de f\u00e9condit\u00e9\n", "* on garde la m\u00eame proportion homme/femme que celle actuellement observ\u00e9e"]}, {"cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [{"data": {"text/plain": ["0.5097213688910532"]}, "execution_count": 19, "metadata": {}, "output_type": "execute_result"}], "source": ["ratio = pop[0, 0] / (pop[0, 1] + pop[0, 0])\n", "ratio"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Il y a un peu plus de gar\u00e7ons qui naissent chaque ann\u00e9e."]}, {"cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [{"data": {"text/html": ["
"]}, "metadata": {"needs_background": "light"}, "output_type": "display_data"}], "source": ["from matplotlib import pyplot as plt\n", "df.plot(x=\"age\", y=[\"2005\", \"2015\"]);"]}, {"cell_type": "markdown", "metadata": {}, "source": ["On convertit ces donn\u00e9es en une matrice numpy sur 120 lignes comme les pr\u00e9c\u00e9dentes. On se sert des m\u00e9thodes [fillna](http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.fillna.html) et [merge](http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.merge.html?highlight=merge#pandas.DataFrame.merge)."]}, {"cell_type": "code", "execution_count": 21, "metadata": {"scrolled": false}, "outputs": [{"data": {"text/html": ["
\n", "\n", "
\n", " \n", "
\n", "
\n", "
age
\n", "
2005
\n", "
2015
\n", "
\n", " \n", " \n", "
\n", "
13
\n", "
13
\n", "
0.0
\n", "
0.0
\n", "
\n", "
\n", "
14
\n", "
14
\n", "
0.0
\n", "
0.0
\n", "
\n", "
\n", "
15
\n", "
15
\n", "
0.0
\n", "
0.0
\n", "
\n", "
\n", "
16
\n", "
16
\n", "
0.2
\n", "
0.2
\n", "
\n", " \n", "
\n", "
"], "text/plain": [" age 2005 2015\n", "13 13 0.0 0.0\n", "14 14 0.0 0.0\n", "15 15 0.0 0.0\n", "16 16 0.2 0.2"]}, "execution_count": 22, "metadata": {}, "output_type": "execute_result"}], "source": ["ages = pandas.DataFrame(dict(age=range(0,120)))\n", "merge = ages.merge(df, left_on=\"age\", right_on=\"age\", how=\"outer\")\n", "fecondite = merge.fillna(0.0)\n", "fecondite[13:17]"]}, {"cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [{"data": {"text/plain": ["(120, 1)"]}, "execution_count": 23, "metadata": {}, "output_type": "execute_result"}], "source": ["mat_fec = fecondite[[\"2015\"]].values / 100 # les chiffres sont pour 100 femmes\n", "mat_fec.shape"]}, {"cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [{"data": {"text/plain": ["1.899"]}, "execution_count": 24, "metadata": {}, "output_type": "execute_result"}], "source": ["mat_fec.sum()"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Si la matrice ``pop`` a plus de ligne que la matrice ``mat_fec``, on doit compl\u00e9ter la seconde avec autant de lignes nulles que la pr\u00e9c\u00e9dente."]}, {"cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [{"data": {"text/plain": ["1.899"]}, "execution_count": 25, "metadata": {}, "output_type": "execute_result"}], "source": ["if mat_fec.shape[0] < pop.shape[0]:\n", " zeros = numpy.zeros((pop.shape[0] - mat_fec.shape[0], mat_fec.shape[1]))\n", " mat_fec = numpy.vstack([mat_fec, zeros])\n", "mat_fec.sum()"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Il faut maintenant coder une fonction qui calcule le naissances pour l'ann\u00e9e suivantes."]}, {"cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [{"data": {"text/plain": ["756839.2760000001"]}, "execution_count": 26, "metadata": {}, "output_type": "execute_result"}], "source": ["def naissances(pop, fec):\n", " # on suppose que pop est une matrice avec deux colonnes homme, femme\n", " # et que fec est une matrice avec une colonne f\u00e9condit\u00e9\n", " n = pop[:, 1] * fec[:, 0]\n", " return n.sum()\n", "\n", "nais = naissances(pop, mat_fec)\n", "nais"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Et on reprend la fonction *iteration* et le code de l'exercice pr\u00e9c\u00e9dent :"]}, {"cell_type": "code", "execution_count": 26, "metadata": {"scrolled": true}, "outputs": [{"data": {"image/png": "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\n", "text/plain": ["
"]}, "metadata": {"needs_background": "light"}, "output_type": "display_data"}], "source": ["def iteration(pop, mortalite, fec, ratio):\n", " pop_next = pop * (1 - mortalite)\n", " nais = naissances(pop, fec)\n", " row = numpy.array([[nais * ratio, nais * (1 - ratio)]])\n", " pop_next = numpy.vstack([row, pop_next[:-1]]) # aucune naissance\n", " return pop_next\n", "\n", "popt = pop\n", "for year in range(2020, 2101):\n", " popt = iteration(popt, m, mat_fec, ratio)\n", " if year == 2050:\n", " popt2050 = popt.copy()\n", " if year == 2100:\n", " popt2100 = popt.copy()\n", " \n", "fig, ax = plt.subplots(1, 2, figsize=(10, 4))\n", "plot_population_pyramid(popt2050[:, 0], popt2050[:, 1], ax=ax[0],\n", " title=\"Pyramide des \u00e2ges en 2050\")\n", "plot_population_pyramid(popt2100[:, 0], popt2100[:, 1], ax=ax[1],\n", " title=\"Pyramide des \u00e2ges en 2100\");"]}, {"cell_type": "markdown", "metadata": {"collapsed": true}, "source": ["On va plus loin et on stocke la population dans un vecteur :"]}, {"cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [{"data": {"image/png": "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FzJy5Ei6dOnC559/TmVlJYsWLWLMmDFcd911jBw5klGjRjFlyhQApk+fzmGHHca3v/1t9txzT2644QaeeOIJxo8fz6hRo1i2bBkA5eXlnHbaaZSWllJaWsrbb78NwK233srkyZM5/PDDGTp0KPfee280P0JIHeKJxLFlT1h8PWwbGnwe8DQMfUTtB21Vv379yM3NZcWKFcyYMYODDjqIVatWMXPmTIqLixk9ejTPP/888+bN47333mP9+vWUlpYyceJEAN577z0WLVpEjx49GDp0KBdffDHvvvsuv/zlL7nvvvu45557uPLKK7n66qs55JBDWLFiBcceeyyLFgUPZPrwww+ZNm0aFRUVDB8+nMsuu4y8vLxIfgslBWmfGjhlr+wBn54Pq08AcqCwDIbfBd3eT/6m1caQWWpLCzNmzOCaa65h1apVzJgxg+LiYg4++GDeeustzj77bHJycujTpw+HHXYYs2bNomvXrpSWltK3b9AJw+67784xxxwDwKhRo5g2LShavvrqq3zwwQd129uyZQsVFRUAHH/88eTn55Ofn0/v3r1Zu3YtAwYMSPMvEFBSEAGqOsPKs6HsNKgpAHbCgD/BkEchpzLq6CQdatsV3n//fUaOHMnAgQO5++676dq1K5MnT+a1115rcNnYrrM7dOhQ97lDhw513WjX1NQwc+ZMCgsLG10+6q631aYgbVsCT3Jfdxi88wSsODdICL3ehNKLghvSUpkQmvtgeUmtCRMm8Pzzz9OjRw9ycnLo0aMHmzZtYubMmRx00EFMnDiRKVOmsHPnTsrLy3njjTcYP358wus/5phj+NWvflX3ed68zOxfXSUFabeqimDJD4KrigCK34OhD0LxomjjEiKpWxs1ahTr16/nnHPO2WXc1q1b6dWrF6eccgozZ85k3333xcy466672G233fjww8Q6vLr33nu5/PLLGT16NNXV1UycOJEHHnggVV+nxVLWdXY6qOtsqdOM020H1h0Fyy6BL0uCy0x3fwD6/TV+J1wtDil+911Nx5e9/5Itpq6zU6e5XWerpCDtSsUwWHIFbAkfqtV1Aex1B3RaFW1cIplCSUGyQysr3nd2hE8uDhqS6QB5G2How7DbS2AZdmZe/6u2x5KDREdJQdq8LSNg0Q2w/RvUXVU0+HHI3RZ1ZCKZR0lBMkeSL8P5sjt88l1YczyQA52W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\n", "text/plain": ["
"]}, "metadata": {"needs_background": "light"}, "output_type": "display_data"}], "source": ["df = pandas.DataFrame(data=total, columns=[\"ann\u00e9e\",\"hommes\",\"femmes\"])\n", "df.plot(x=\"ann\u00e9e\", y=[\"hommes\", \"femmes\"], title=\"projection population fran\u00e7aise\");"]}, {"cell_type": "markdown", "metadata": {}, "source": ["Le code suivant permet de combiner les deux graphes sur la m\u00eame ligne avec la fonction [subplots](http://matplotlib.org/api/pyplot_api.html?highlight=subplots#matplotlib.pyplot.subplots) :\n", "\n", "[comment]: <> (RST: .. index:: subplots)"]}, {"cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [{"data": {"image/png": "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\n", "text/plain": ["
"]}, "metadata": {"needs_background": "light"}, "output_type": "display_data"}], "source": ["from matplotlib import pyplot as plt\n", "fig, ax = plt.subplots(1, 2, figsize=(14,6))\n", "plot_population_pyramid(popt[:,0], popt[:,1], title=\"Pyramide des \u00e2ges en 2050\", ax=ax[0])\n", "df.plot(x=\"ann\u00e9e\", y=[\"hommes\", \"femmes\"], title=\"projection population fran\u00e7aise\", ax=ax[1]);"]}, {"cell_type": "markdown", "metadata": {}, "source": ["## Retraites\n", "\n", "La r\u00e9forme de la retraite en 2019 laissera un souvenir ind\u00e9l\u00e9bile. Une des mesures far est celle de l'\u00e2ge pivot. Le mod\u00e8le d\u00e9velopp\u00e9 jusqu'\u00e0 pr\u00e9sent ne permet pas de simuler ce que chaque fran\u00e7ais pourrait obtenir avec la nouvelle r\u00e9forme mais il permet de donner un ordre de grandeur sur le nombre de retrait\u00e9s selon que l'\u00e2ge pivot est de 62 ans ou plus vieux. Si on en croit cette page [1,7 actif cotisant par retrait\u00e9](https://reforme-retraite.gouv.fr/le-saviez-vous/les-chiffres-cles/article/1-7-actif-cotisant-par-retraite), il y a 1,7 cotisant par retrait\u00e9.\n", "\n", "Trois populations sont consid\u00e9r\u00e9es : les jeunes de moins de 21 ans, \u00e0 la charge de leurs a\u00een\u00e9s, les actifs, les retrait\u00e9s dont le nombre d\u00e9pend de l'\u00e2ge pivot. on veut donc calculer l'\u00e9volution de ces trois populations."]}, {"cell_type": "code", "execution_count": 30, "metadata": {"scrolled": false}, "outputs": [{"name": "stderr", "output_type": "stream", "text": ["100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 81/81 [00:00<00:00, 6769.86it/s]\n"]}, {"data": {"text/html": ["
\n", "\n", "
\n", " \n", "
\n", "
\n", "
year
\n", "
r60
\n", "
r61
\n", "
r62
\n", "
r63
\n", "
r64
\n", "
r65
\n", "
r66
\n", "
r67
\n", "
\n", " \n", " \n", "
\n", "
0
\n", "
2020
\n", "
1.661675
\n", "
1.792986
\n", "
1.936632
\n", "
2.092034
\n", "
2.262744
\n", "
2.450994
\n", "
2.659420
\n", "
2.893034
\n", "
\n", "
\n", "
1
\n", "
2021
\n", "
1.637597
\n", "
1.766554
\n", "
1.907657
\n", "
2.062432
\n", "
2.230352
\n", "
2.415367
\n", "
2.620045
\n", "
2.847438
\n", "
\n", "
\n", "
2
\n", "
2022
\n", "
1.616615
\n", "
1.742623
\n", "
1.881228
\n", "
2.033293
\n", "
2.200564
\n", "
2.382585
\n", "
2.583765
\n", "
2.807077
\n", "
\n", "
\n", "
3
\n", "
2023
\n", "
1.593194
\n", "
1.720874
\n", "
1.856290
\n", "
2.005630
\n", "
2.169929
\n", "
2.351192
\n", "
2.549055
\n", "
2.768466
\n", "
\n", "
\n", "
4
\n", "
2024
\n", "
1.572343
\n", "
1.698854
\n", "
1.836163
\n", "
1.982169
\n", "
2.143622
\n", "
2.321765
\n", "
2.518906
\n", "
2.734809
\n", "
\n", " \n", "
\n", "
"], "text/plain": [" year r60 r61 r62 r63 r64 r65 r66 \\\n", "0 2020 1.661675 1.792986 1.936632 2.092034 2.262744 2.450994 2.659420 \n", "1 2021 1.637597 1.766554 1.907657 2.062432 2.230352 2.415367 2.620045 \n", "2 2022 1.616615 1.742623 1.881228 2.033293 2.200564 2.382585 2.583765 \n", "3 2023 1.593194 1.720874 1.856290 2.005630 2.169929 2.351192 2.549055 \n", "4 2024 1.572343 1.698854 1.836163 1.982169 2.143622 2.321765 2.518906 \n", "\n", " r67 \n", "0 2.893034 \n", "1 2.847438 \n", "2 2.807077 \n", "3 2.768466 \n", "4 2.734809 "]}, "execution_count": 31, "metadata": {}, "output_type": "execute_result"}], "source": ["from tqdm import tqdm\n", "\n", "evol = []\n", "popt = pop0.copy()\n", "age_etude = 23\n", "pivot = list(range(60, 68))\n", "for year in tqdm(range(2020, 2101)):\n", " popt = iteration(popt, m, mat_fec, ratio)\n", " jeune = popt[:age_etude + 1].sum()\n", " row = dict(year=year)\n", " for p in pivot:\n", " actif = popt[age_etude + 1:p].sum()\n", " retraite = popt[p:].sum()\n", " rt = actif / retraite\n", " row['r%d' % p] = rt\n", " evol.append(row)\n", "\n", "df_evol = pandas.DataFrame(evol)\n", "df_evol.head()"]}, {"cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [{"data": {"image/png": "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\n", "text/plain": [""]}, "metadata": {"needs_background": "light"}, "output_type": "display_data"}], "source": ["ax = df_evol.plot(x=\"year\", y=[\"r%d\" % p for p in pivot], figsize=(10, 4))\n", "years = df_evol.year\n", "ax.plot(years, [1.7 for _ in years], 'b--')\n", "ax.set_title(\"Ratio actifs / retrait\u00e9s en fonction de l'\u00e2ge pivot\");"]}, {"cell_type": "markdown", "metadata": {}, "source": ["D'apr\u00e8s ces simulations, il faudrait reculer l'\u00e2ge de la retraite de deux ou trois ans pour garder le m\u00eame ratio entre actifs et retrait\u00e9s tel qu'il est aujourd'hui."]}, {"cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [], "source": []}], "metadata": {"kernelspec": {"display_name": "Python 3", "language": "python", "name": "python3"}, "language_info": {"codemirror_mode": {"name": "ipython", "version": 3}, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.2"}}, "nbformat": 4, "nbformat_minor": 2}