no commit message

parent 2537a5a2
{ {
"cells": [], "cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Autour du Paradoxe de Simpson"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Import des librairies nécessaires"
]
},
{
"cell_type": "code",
"execution_count": 55,
"metadata": {},
"outputs": [],
"source": [
"%matplotlib inline\n",
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"import numpy as np\n",
"from statsmodels.tools.tools import add_constant\n",
"from statsmodels.discrete.discrete_model import Logit\n",
"from tqdm import tqdm"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Récupération et analyse des données\n",
"\n",
"Nous pouvons charger la donnée stockée dans le dossier Gitlab ou en utilisant ce [lien](https://gitlab.inria.fr/learninglab/mooc-rr/mooc-rr-ressources/blob/master/module3/Practical_session/Subject6_smoking.csv)\n",
"Chaque ligne indique si la personne fume ou non, si elle est vivante ou décédée au moment de la seconde étude (1995), et son âge lors du premier sondage (1977)."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Smoker</th>\n",
" <th>Status</th>\n",
" <th>Age</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Yes</td>\n",
" <td>Alive</td>\n",
" <td>21.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Yes</td>\n",
" <td>Alive</td>\n",
" <td>19.3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>No</td>\n",
" <td>Dead</td>\n",
" <td>57.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>No</td>\n",
" <td>Alive</td>\n",
" <td>47.1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Yes</td>\n",
" <td>Alive</td>\n",
" <td>81.4</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Smoker Status Age\n",
"0 Yes Alive 21.0\n",
"1 Yes Alive 19.3\n",
"2 No Dead 57.5\n",
"3 No Alive 47.1\n",
"4 Yes Alive 81.4"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data_path = \"Subject6_smoking.csv\"\n",
"# data_path = \"https://gitlab.inria.fr/learninglab/mooc-rr/mooc-rr-ressources/blob/master/module3/Practical_session/Subject6_smoking.csv\"\n",
"\n",
"raw_data = pd.read_csv(data_path)\n",
"raw_data.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Regardons si certaines données sont manquantes : "
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Smoker</th>\n",
" <th>Status</th>\n",
" <th>Age</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
"Empty DataFrame\n",
"Columns: [Smoker, Status, Age]\n",
"Index: []"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"raw_data[raw_data.isnull().any(axis=1)]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Il ne manque pas de données ici."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Représentation des décès en fonction de l'habitude de tabagisme\n",
"\n",
"Nous pouvons regarder le nombre de personnes vivantes ou décédées en 1995 en fonction de si elles fument ou pas."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th>Status</th>\n",
" <th>Alive</th>\n",
" <th>Dead</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Smoker</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>No</th>\n",
" <td>502</td>\n",
" <td>230</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Yes</th>\n",
" <td>443</td>\n",
" <td>139</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
"Status Alive Dead\n",
"Smoker \n",
"No 502 230\n",
"Yes 443 139"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"tableau_croise = pd.crosstab(raw_data[\"Smoker\"], raw_data[\"Status\"])\n",
"tableau_croise"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Nous pouvons également calculer le taux de mortalité par catégorie de fumeur"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Smoker\n",
"No 0.314208\n",
"Yes 0.238832\n",
"dtype: float64"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"taux_mortalite = tableau_croise['Dead'] / tableau_croise.sum(axis=1)\n",
"taux_mortalite"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Nous observons un taux de mortalité plus important pour les personnes non fumeuses (31% contre 24%), ce qui peut sembler surprenant à première vue."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Nous pouvons maintenant étudier si l'âge a un impact sur ce taux de mortalité"
]
},
{
"cell_type": "code",
"execution_count": 58,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Tableau croisé :\n",
"Status Alive Dead\n",
"Smoker Age_Category \n",
"No 18-34 ans 213 6\n",
" 34-54 ans 180 19\n",
" 55-64 ans 80 39\n",
" plus de 65 ans 29 166\n",
"Yes 18-34 ans 174 5\n",
" 34-54 ans 198 41\n",
" 55-64 ans 64 51\n",
" plus de 65 ans 7 42\n",
"\n",
"Taux de mortalité :\n",
"Smoker Age_Category \n",
"No 18-34 ans 0.027397\n",
" 34-54 ans 0.095477\n",
" 55-64 ans 0.327731\n",
" plus de 65 ans 0.851282\n",
"Yes 18-34 ans 0.027933\n",
" 34-54 ans 0.171548\n",
" 55-64 ans 0.443478\n",
" plus de 65 ans 0.857143\n",
"dtype: float64\n"
]
}
],
"source": [
"bins = [18, 34, 54, 64, float('inf')] # Limites des catégories\n",
"labels = ['18-34 ans', '34-54 ans', '55-64 ans', 'plus de 65 ans'] # Noms des catégories\n",
"raw_data['Age_Category'] = pd.cut(raw_data['Age'], bins=bins, labels=labels, right=False)\n",
"\n",
"# Création du tableau croisé en fonction de Smoker, Status et Age_Category\n",
"tableau_croise_age = pd.crosstab([raw_data['Smoker'], raw_data['Age_Category']], raw_data['Status'])\n",
"\n",
"# Calcul du taux de mortalité par catégorie de fumeur et d'âge\n",
"taux_mortalite_age = tableau_croise_age['Dead'] / tableau_croise_age.sum(axis=1)\n",
"\n",
"print(\"Tableau croisé :\")\n",
"print(tableau_croise_age)\n",
"print(\"\\nTaux de mortalité :\")\n",
"print(taux_mortalite_age)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"En séparant par catégorie d'âge, le taux de mortalité des fumeurs est toujours supérieur à celui des non fumeurs. Cela peut s'expliquer par le fait que certaines variables ne sont pas indépendantes."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Régression logistique\n",
"\n",
"Créons dans un premier temps la variable Death"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"raw_data['Death'] = raw_data['Status'].apply(lambda x: 1 if x == 'Dead' else 0)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Séparons ensuite les données en fonction du groupe fumeurs ou non-fumeurs"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"data_fumeurs = raw_data[raw_data['Smoker'] == 'Yes']\n",
"data_non_fumeurs = raw_data[raw_data['Smoker'] == 'No']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Créons les modèles de régression logistique pour les deux catégories"
]
},
{
"cell_type": "code",
"execution_count": 59,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Optimization terminated successfully.\n",
" Current function value: 0.412727\n",
" Iterations 7\n",
"Optimization terminated successfully.\n",
" Current function value: 0.354560\n",
" Iterations 7\n",
"Résumé de la régression pour les fumeurs :\n",
" Logit Regression Results \n",
"==============================================================================\n",
"Dep. Variable: Death No. Observations: 582\n",
"Model: Logit Df Residuals: 580\n",
"Method: MLE Df Model: 1\n",
"Date: Wed, 06 Nov 2024 Pseudo R-squ.: 0.2492\n",
"Time: 14:40:04 Log-Likelihood: -240.21\n",
"converged: True LL-Null: -319.94\n",
" LLR p-value: 1.477e-36\n",
"==============================================================================\n",
" coef std err z P>|z| [0.025 0.975]\n",
"------------------------------------------------------------------------------\n",
"const -5.5081 0.466 -11.814 0.000 -6.422 -4.594\n",
"Age 0.0890 0.009 10.203 0.000 0.072 0.106\n",
"==============================================================================\n",
"\n",
"Résumé de la régression pour les non-fumeurs :\n",
" Logit Regression Results \n",
"==============================================================================\n",
"Dep. Variable: Death No. Observations: 732\n",
"Model: Logit Df Residuals: 730\n",
"Method: MLE Df Model: 1\n",
"Date: Wed, 06 Nov 2024 Pseudo R-squ.: 0.4304\n",
"Time: 14:40:04 Log-Likelihood: -259.54\n",
"converged: True LL-Null: -455.62\n",
" LLR p-value: 2.808e-87\n",
"==============================================================================\n",
" coef std err z P>|z| [0.025 0.975]\n",
"------------------------------------------------------------------------------\n",
"const -6.7955 0.479 -14.174 0.000 -7.735 -5.856\n",
"Age 0.1073 0.008 13.742 0.000 0.092 0.123\n",
"==============================================================================\n"
]
}
],
"source": [
"def logistic_regression(data):\n",
" X = add_constant(data['Age']) # Ajoute une constante pour l'interception\n",
" y = data['Death']\n",
" model = Logit(y, X)\n",
" result = model.fit()\n",
" return result\n",
"\n",
"result_fumeurs = logistic_regression(data_fumeurs)\n",
"result_non_fumeurs = logistic_regression(data_non_fumeurs)\n",
"\n",
"print(\"Résumé de la régression pour les fumeurs :\")\n",
"print(result_fumeurs.summary())\n",
"\n",
"print(\"\\nRésumé de la régression pour les non-fumeurs :\")\n",
"print(result_non_fumeurs.summary())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Nous allons maintenant faire des prédictions pour un éventail d'âges allant de 0 à 100 ans."
]
},
{
"cell_type": "code",
"execution_count": 60,
"metadata": {},
"outputs": [],
"source": [
"ages = np.linspace(raw_data['Age'].min(), raw_data['Age'].max(), 100)\n",
"X_ages = add_constant(ages)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Calculons les prédictions et les intervalles de confiance"
]
},
{
"cell_type": "code",
"execution_count": 61,
"metadata": {},
"outputs": [],
"source": [
"# Fonction pour calculer les intervalles de confiance manuellement\n",
"def compute_confidence_interval(result, X, alpha=0.05):\n",
" predictions = result.predict(X)\n",
" # Calcul de l'erreur standard\n",
" gradient = X @ result.cov_params() @ X.T\n",
" std_error = np.sqrt(np.diag(gradient))\n",
" \n",
" # Calcul des intervalles de confiance (normal approx)\n",
" z = 1.96 # Pour un intervalle de confiance de 95%\n",
" lower_bound = predictions - z * std_error\n",
" upper_bound = predictions + z * std_error\n",
" return predictions, lower_bound, upper_bound\n",
"\n",
"# Intervalles de confiance pour les fumeurs\n",
"pred_fumeurs, lower_fumeurs, upper_fumeurs = compute_confidence_interval(result_fumeurs, X_ages)\n",
"\n",
"# Intervalles de confiance pour les non-fumeurs\n",
"pred_non_fumeurs, lower_non_fumeurs, upper_non_fumeurs = compute_confidence_interval(result_non_fumeurs, X_ages)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Enfin, affichons les résultats"
]
},
{
"cell_type": "code",
"execution_count": 62,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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Fr773R+NWYb29jYee+wpHn30YS677L088cQL/PjHv+T0049n27bXWbhwEbff/k0eeeQfZGVl8d3v3s6Pf/xdvvGNA9cXbd26lU2bNpGRkcHnPvc5brrpJq644grC4TDRaHTMck1EWoM2Y8xzIrI0nWVQSimlVGrl5uZy1VVX8YMf/ICMjIyBxzdv3swDDzwAwJVXXjkkqLvooosJh10cdthRNDY24HId3JAdF1zwXkSEo49ezbx581m1ajUAK1ceTUVFOTU11ezatYOzzz4FgHA4zPHHnzTmei+66KKB93TSSSfxrW99i+rqat7//vezYsWKyRd4BOmuaRuPk0TkDaAW+IIxZvtITxKR64HrARYvXjyFxVNKKaVmgHHUiKXSzTffzLp167j22mtHfY6IEI3a4TqM8RMK2fHVjDGIwK23/it///ujAGze/PZaQ0mI6kKh4JBlPp8fAJfLNXA7fj8SieB2uznzzHdz551/HFgW76bm8XiIxWIABIND15uVlTVw+yMf+QgbNmzg0Ucf5dxzz+WXv/wlZ5555gH3y0RM90SEV4ElxphjgB8CD432RGPMz40x640x60tKSqasgEoppZQaW2FhIZdddhm/+tWvBh47+eSTufvuuzEG7rrr95x44ql0d9shPOLNoIm1a7fe+i02b359xIANYN68+ezatZNYLMbDDz84ofIdf/yJvPTSC+zfvw+A3t5e9u3bA9g+bVu3bgXg/vvvH3UdpaWlLF++nBtvvJGLLrqIbdu2TagMY5nWQZsxptMY0+3cfgzwikhxmoullFJKqUn4/Oc/PySL9Pvf/wG//vVvWL16DXfd9Vtuv/37bwvUJuLf//2/uPTSC7nggjNZsOCQCb22pKSEO+64k2uv/TAbNqzhjDNOZM+eXQDccsst3HTTTZx22mm43e5R13HPPfewatUq1q5dy65du7jqqqsm90ZGIcaYpK5wwgWwfdr+YoxZNcKyBUCDMcaIyAnAfdiatwMWev369WbLli2pKK5SSik1Y+zcuZOVK1emuxhvE88EDYUGa9Wm49hqkQhkZ9sm2mQZ6TMRka3GmPVjvTatfdpE5I/ARqBYRKqBWwAvgDHmDuCDwKdFJAL0AZePFbAppZRSanoaPnOB2z07Zy5IlXRnj354jOU/wg4JopRSSqkZKhazNWvxPvwzZ/J2A0yfgmp8q5RS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\n",
"text/plain": [
"<Figure size 720x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(10, 6))\n",
"\n",
"# Courbe pour les fumeurs\n",
"plt.plot(ages, pred_fumeurs, color='blue', label='Fumeurs')\n",
"plt.fill_between(ages, lower_fumeurs, upper_fumeurs, color='blue', alpha=0.2)\n",
"\n",
"# Courbe pour les non-fumeurs\n",
"plt.plot(ages, pred_non_fumeurs, color='red', label='Non-fumeurs')\n",
"plt.fill_between(ages, lower_non_fumeurs, upper_non_fumeurs, color='red', alpha=0.2)\n",
"\n",
"plt.xlabel(\"Âge\")\n",
"plt.ylabel(\"Probabilité de décès\")\n",
"plt.title(\"Probabilité de décès en fonction de l'âge pour les fumeurs et non-fumeurs\")\n",
"plt.legend()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"La régression ne montre pas d'écart important entre les probabilités de décès des fumeurs et des non-fumeurs."
]
}
],
"metadata": { "metadata": {
"kernelspec": { "kernelspec": {
"display_name": "Python 3", "display_name": "Python 3",
...@@ -16,10 +600,9 @@ ...@@ -16,10 +600,9 @@
"name": "python", "name": "python",
"nbconvert_exporter": "python", "nbconvert_exporter": "python",
"pygments_lexer": "ipython3", "pygments_lexer": "ipython3",
"version": "3.6.3" "version": "3.6.4"
} }
}, },
"nbformat": 4, "nbformat": 4,
"nbformat_minor": 2 "nbformat_minor": 2
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment