no commit message

parent b1781079
{
"cells": [],
"cells": [
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np "
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"x = np.array([14.0, 7.6, 11.2, 12.8, 12.5, 9.9, 14.9, 9.4, 16.9, 10.2, 14.9, 18.1, 7.3, 9.8, 10.9,12.2, 9.9, 2.9, 2.8, 15.4, 15.7, 9.7, 13.1, 13.2, 12.3, 11.7, 16.0, 12.4, 17.9, 12.2, 16.2, 18.7, 8.9, 11.9, 12.1, 14.6, 12.1, 4.7, 3.9, 16.9, 16.8, 11.3, 14.4, 15.7, 14.0, 13.6, 18.0, 13.6, 19.9, 13.7, 17.0, 20.5, 9.9, 12.5, 13.2, 16.1, 13.5, 6.3, 6.4, 17.6, 19.1, 12.8, 15.5, 16.3, 15.2, 14.6, 19.1, 14.4, 21.4, 15.1, 19.6, 21.7, 11.3, 15.0, 14.3, 16.8, 14.0, 6.8, 8.2, 19.9, 20.4, 14.6, 16.4, 18.7, 16.8, 15.8, 20.4, 15.8, 22.4, 16.2, 20.3, 23.4, 12.1, 15.5, 15.4, 18.4, 15.7, 10.2, 8.9, 21.0])"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"2.8\n",
"23.4\n",
"14.113000000000001\n",
"4.334094455301447\n",
"14.5\n"
]
}
],
"source": [
"print(f'{np.min(x)}')\n",
"print(f'{np.max(x)}')\n",
"print(f'{np.mean(x)}')\n",
"print(f'{np.std(x, ddof=1)}')\n",
"print(f'{np.median(x)}')"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt \n",
"plt.figure()\n",
"plt.plot(x)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure()\n",
"plt.hist(x)\n",
"plt.show()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
......@@ -16,10 +109,9 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.3"
"version": "3.6.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
......@@ -261,30 +261,30 @@
"</div>"
],
"text/plain": [
" Date Count Temperature Pressure Malfunction\n",
"0 4/12/81 6 66 50 0\n",
"1 11/12/81 6 70 50 1\n",
"2 3/22/82 6 69 50 0\n",
"3 11/11/82 6 68 50 0\n",
"4 4/04/83 6 67 50 0\n",
"5 6/18/82 6 72 50 0\n",
"6 8/30/83 6 73 100 0\n",
"7 11/28/83 6 70 100 0\n",
"8 2/03/84 6 57 200 1\n",
"9 4/06/84 6 63 200 1\n",
"10 8/30/84 6 70 200 1\n",
"11 10/05/84 6 78 200 0\n",
"12 11/08/84 6 67 200 0\n",
"13 1/24/85 6 53 200 2\n",
"14 4/12/85 6 67 200 0\n",
"15 4/29/85 6 75 200 0\n",
"16 6/17/85 6 70 200 0\n",
"17 7/29/85 6 81 200 0\n",
"18 8/27/85 6 76 200 0\n",
"19 10/03/85 6 79 200 0\n",
"20 10/30/85 6 75 200 2\n",
"21 11/26/85 6 76 200 0\n",
"22 1/12/86 6 58 200 1"
" Date Count Temperature Pressure Malfunction\n",
"0 4/12/81 6 66 50 0\n",
"1 11/12/81 6 70 50 1\n",
"2 3/22/82 6 69 50 0\n",
"3 11/11/82 6 68 50 0\n",
"4 4/04/83 6 67 50 0\n",
"5 6/18/82 6 72 50 0\n",
"6 8/30/83 6 73 100 0\n",
"7 11/28/83 6 70 100 0\n",
"8 2/03/84 6 57 200 1\n",
"9 4/06/84 6 63 200 1\n",
"10 8/30/84 6 70 200 1\n",
"11 10/05/84 6 78 200 0\n",
"12 11/08/84 6 67 200 0\n",
"13 1/24/85 6 53 200 2\n",
"14 4/12/85 6 67 200 0\n",
"15 4/29/85 6 75 200 0\n",
"16 6/17/85 6 70 200 0\n",
"17 7/29/85 6 81 200 0\n",
"18 8/27/85 6 76 200 0\n",
"19 10/03/85 6 79 200 0\n",
"20 10/30/85 6 75 200 2\n",
"21 11/26/85 6 76 200 0\n",
"22 1/12/86 6 58 200 1"
]
},
"execution_count": 1,
......@@ -453,7 +453,7 @@
"outputs": [
{
"data": {
"image/png": "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\n",
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
......@@ -500,76 +500,155 @@
},
{
"cell_type": "code",
"execution_count": 4,
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table class=\"simpletable\">\n",
"<caption>Generalized Linear Model Regression Results</caption>\n",
"<tr>\n",
" <th>Dep. Variable:</th> <td>Frequency</td> <th> No. Observations: </th> <td> 7</td> \n",
"</tr>\n",
"<tr>\n",
" <th>Model:</th> <td>GLM</td> <th> Df Residuals: </th> <td> 5</td> \n",
"</tr>\n",
"<tr>\n",
" <th>Model Family:</th> <td>Binomial</td> <th> Df Model: </th> <td> 1</td> \n",
"</tr>\n",
"<tr>\n",
" <th>Link Function:</th> <td>logit</td> <th> Scale: </th> <td> 1.0000</td> \n",
"</tr>\n",
"<tr>\n",
" <th>Method:</th> <td>IRLS</td> <th> Log-Likelihood: </th> <td> -2.5250</td> \n",
"</tr>\n",
"<tr>\n",
" <th>Date:</th> <td>Sat, 13 Apr 2019</td> <th> Deviance: </th> <td> 0.22231</td> \n",
"</tr>\n",
"<tr>\n",
" <th>Time:</th> <td>19:11:24</td> <th> Pearson chi2: </th> <td> 0.236</td> \n",
"</tr>\n",
"<tr>\n",
" <th>No. Iterations:</th> <td>4</td> <th> Covariance Type: </th> <td>nonrobust</td>\n",
"</tr>\n",
"<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>Date</th>\n",
" <th>Count</th>\n",
" <th>Temperature</th>\n",
" <th>Pressure</th>\n",
" <th>Malfunction</th>\n",
" <th>Frequency</th>\n",
" <th>Success</th>\n",
" <th>Intercept</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>11/12/81</td>\n",
" <td>6</td>\n",
" <td>70</td>\n",
" <td>50</td>\n",
" <td>1</td>\n",
" <td>0.166667</td>\n",
" <td>5</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>2/03/84</td>\n",
" <td>6</td>\n",
" <td>57</td>\n",
" <td>200</td>\n",
" <td>1</td>\n",
" <td>0.166667</td>\n",
" <td>5</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>4/06/84</td>\n",
" <td>6</td>\n",
" <td>63</td>\n",
" <td>200</td>\n",
" <td>1</td>\n",
" <td>0.166667</td>\n",
" <td>5</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>8/30/84</td>\n",
" <td>6</td>\n",
" <td>70</td>\n",
" <td>200</td>\n",
" <td>1</td>\n",
" <td>0.166667</td>\n",
" <td>5</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>1/24/85</td>\n",
" <td>6</td>\n",
" <td>53</td>\n",
" <td>200</td>\n",
" <td>2</td>\n",
" <td>0.333333</td>\n",
" <td>4</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>10/30/85</td>\n",
" <td>6</td>\n",
" <td>75</td>\n",
" <td>200</td>\n",
" <td>2</td>\n",
" <td>0.333333</td>\n",
" <td>4</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>1/12/86</td>\n",
" <td>6</td>\n",
" <td>58</td>\n",
" <td>200</td>\n",
" <td>1</td>\n",
" <td>0.166667</td>\n",
" <td>5</td>\n",
" <td>1</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<table class=\"simpletable\">\n",
"<tr>\n",
" <td></td> <th>coef</th> <th>std err</th> <th>z</th> <th>P>|z|</th> <th>[0.025</th> <th>0.975]</th> \n",
"</tr>\n",
"<tr>\n",
" <th>Intercept</th> <td> -1.3895</td> <td> 7.828</td> <td> -0.178</td> <td> 0.859</td> <td> -16.732</td> <td> 13.953</td>\n",
"</tr>\n",
"<tr>\n",
" <th>Temperature</th> <td> 0.0014</td> <td> 0.122</td> <td> 0.012</td> <td> 0.991</td> <td> -0.238</td> <td> 0.240</td>\n",
"</tr>\n",
"</table>"
"</div>"
],
"text/plain": [
"<class 'statsmodels.iolib.summary.Summary'>\n",
"\"\"\"\n",
" Generalized Linear Model Regression Results \n",
"==============================================================================\n",
"Dep. Variable: Frequency No. Observations: 7\n",
"Model: GLM Df Residuals: 5\n",
"Model Family: Binomial Df Model: 1\n",
"Link Function: logit Scale: 1.0000\n",
"Method: IRLS Log-Likelihood: -2.5250\n",
"Date: Sat, 13 Apr 2019 Deviance: 0.22231\n",
"Time: 19:11:24 Pearson chi2: 0.236\n",
"No. Iterations: 4 Covariance Type: nonrobust\n",
"===============================================================================\n",
" coef std err z P>|z| [0.025 0.975]\n",
"-------------------------------------------------------------------------------\n",
"Intercept -1.3895 7.828 -0.178 0.859 -16.732 13.953\n",
"Temperature 0.0014 0.122 0.012 0.991 -0.238 0.240\n",
"===============================================================================\n",
"\"\"\""
" Date Count Temperature Pressure Malfunction Frequency Success \\\n",
"1 11/12/81 6 70 50 1 0.166667 5 \n",
"8 2/03/84 6 57 200 1 0.166667 5 \n",
"9 4/06/84 6 63 200 1 0.166667 5 \n",
"10 8/30/84 6 70 200 1 0.166667 5 \n",
"13 1/24/85 6 53 200 2 0.333333 4 \n",
"20 10/30/85 6 75 200 2 0.333333 4 \n",
"22 1/12/86 6 58 200 1 0.166667 5 \n",
"\n",
" Intercept \n",
"1 1 \n",
"8 1 \n",
"9 1 \n",
"10 1 \n",
"13 1 \n",
"20 1 \n",
"22 1 "
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
"output_type": "display_data"
},
{
"ename": "AttributeError",
"evalue": "module 'statsmodels.api' has no attribute 'GLsM'",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-6-b2f6a8a4d5aa>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"Intercept\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0mdisplay\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 6\u001b[0;31m \u001b[0mlogmodel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0msm\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mGLsM\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'Frequency'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'Intercept'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'Temperature'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfamily\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0msm\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfamilies\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mBinomial\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msm\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfamilies\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mlinks\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mlogit\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfit\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 7\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 8\u001b[0m \u001b[0mlogmodel\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msummary\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mAttributeError\u001b[0m: module 'statsmodels.api' has no attribute 'GLsM'"
]
}
],
"source": [
......@@ -577,7 +656,7 @@
"\n",
"data[\"Success\"]=data.Count-data.Malfunction\n",
"data[\"Intercept\"]=1\n",
"\n",
"display(data)\n",
"logmodel=sm.GLM(data['Frequency'], data[['Intercept','Temperature']], family=sm.families.Binomial(sm.families.links.logit)).fit()\n",
"\n",
"logmodel.summary()"
......@@ -705,7 +784,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.3"
"version": "3.6.4"
}
},
"nbformat": 4,
......
This source diff could not be displayed because it is too large. You can view the blob instead.
{
"cells": [],
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Première analyse rapide des données"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"# import des packages importants\n",
"import numpy as np \n",
"import matplotlib.pyplot as plt \n",
"import pandas as pd \n",
"import seaborn as sns"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"data_url = \"https://gitlab.inria.fr/learninglab/mooc-rr/mooc-rr-ressources/-/raw/master/module3/Practical_session/Subject6_smoking.csv?inline=false\" "
]
},
{
"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",
" <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",
" <tr>\n",
" <th>5</th>\n",
" <td>No</td>\n",
" <td>Alive</td>\n",
" <td>36.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>No</td>\n",
" <td>Alive</td>\n",
" <td>23.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>Yes</td>\n",
" <td>Dead</td>\n",
" <td>57.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Yes</td>\n",
" <td>Alive</td>\n",
" <td>24.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>Yes</td>\n",
" <td>Alive</td>\n",
" <td>49.5</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\n",
"5 No Alive 36.8\n",
"6 No Alive 23.8\n",
"7 Yes Dead 57.5\n",
"8 Yes Alive 24.8\n",
"9 Yes Alive 49.5"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"raw_data = pd.read_csv(data_url)\n",
"raw_data[:10]"
]
},
{
"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></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": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"raw_data[raw_data.isnull().any(axis=1)] "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Donc ici pas de point manquant -> pas besoin de modifier les données."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"On compte les morts."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"number alive = 945\n",
"number dead = 369\n",
"total number = 1314\n",
"number smoker = 582\n",
"number non smoker = 732\n"
]
}
],
"source": [
"dead = raw_data['Status'].value_counts()['Dead']\n",
"alive = raw_data['Status'].value_counts()['Alive']\n",
"print(f'number alive = {alive}')\n",
"print(f'number dead = {dead}')\n",
"print(f'total number = {alive + dead}')\n",
"smoker = raw_data['Smoker'].value_counts()['Yes']\n",
"non_smoker = raw_data['Smoker'].value_counts()['No']\n",
"print(f'number smoker = {smoker}')\n",
"print(f'number non smoker = {non_smoker}')\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Question 1"
]
},
{
"cell_type": "code",
"execution_count": 6,
"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>Smoker</th>\n",
" <th>No</th>\n",
" <th>Yes</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Status</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Alive</th>\n",
" <td>502</td>\n",
" <td>443</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Dead</th>\n",
" <td>230</td>\n",
" <td>139</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
"Smoker No Yes\n",
"Status \n",
"Alive 502 443\n",
"Dead 230 139"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"tab = pd.crosstab(raw_data.Status, raw_data.Smoker) # on a bien le bon nombre de vivants et de morts\n",
"tab"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[502 443]\n",
" [230 139]]\n",
"ratio_smoker = 0.238832\n",
"ratio_non_smoker = 0.314208\n"
]
}
],
"source": [
"numpy_data = np.array(tab)\n",
"print(numpy_data)\n",
"ratio_smoker = numpy_data[1,1]/smoker\n",
"ratio_non_smoker = numpy_data[1,0]/non_smoker\n",
"print(f'ratio_smoker = {ratio_smoker:.6f}')\n",
"print(f'ratio_non_smoker = {ratio_non_smoker:.6f}')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Ah bah c'est dommage, les gens qui ne fument pas meurent plus que les gens qui fument... embêtant."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Question 2 "
]
},
{
"cell_type": "code",
"execution_count": 8,
"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",
" <th>AgeGroup</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",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Yes</td>\n",
" <td>Alive</td>\n",
" <td>19.3</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>No</td>\n",
" <td>Dead</td>\n",
" <td>57.5</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>No</td>\n",
" <td>Alive</td>\n",
" <td>47.1</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Yes</td>\n",
" <td>Alive</td>\n",
" <td>81.4</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>No</td>\n",
" <td>Alive</td>\n",
" <td>36.8</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>No</td>\n",
" <td>Alive</td>\n",
" <td>23.8</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>Yes</td>\n",
" <td>Dead</td>\n",
" <td>57.5</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Yes</td>\n",
" <td>Alive</td>\n",
" <td>24.8</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>Yes</td>\n",
" <td>Alive</td>\n",
" <td>49.5</td>\n",
" <td>2</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Smoker Status Age AgeGroup\n",
"0 Yes Alive 21.0 1\n",
"1 Yes Alive 19.3 1\n",
"2 No Dead 57.5 3\n",
"3 No Alive 47.1 2\n",
"4 Yes Alive 81.4 4\n",
"5 No Alive 36.8 2\n",
"6 No Alive 23.8 1\n",
"7 Yes Dead 57.5 3\n",
"8 Yes Alive 24.8 1\n",
"9 Yes Alive 49.5 2"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"raw_data.loc[((raw_data.Age < 34) & (raw_data.Age >= 18) ), 'AgeGroup'] = '1'\n",
"raw_data.loc[((raw_data.Age < 55) & (raw_data.Age >= 34) ), 'AgeGroup'] = '2'\n",
"raw_data.loc[((raw_data.Age < 65) & (raw_data.Age >= 55) ), 'AgeGroup'] = '3'\n",
"raw_data.loc[(raw_data.Age >= 65), 'AgeGroup'] = '4'\n",
"\n",
"raw_data[:10]"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"##################\n",
"Groupe d'age : 1\n",
"number alive = 387\n",
"number dead = 11\n",
"total number = 398\n",
"number smoker = 179\n",
"number non smoker = 219\n"
]
},
{
"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>Smoker</th>\n",
" <th>No</th>\n",
" <th>Yes</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Status</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Alive</th>\n",
" <td>213</td>\n",
" <td>174</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Dead</th>\n",
" <td>6</td>\n",
" <td>5</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
"Smoker No Yes\n",
"Status \n",
"Alive 213 174\n",
"Dead 6 5"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"ratio_smoker = 0.027933\n",
"ratio_non_smoker = 0.027397\n",
"##################\n",
"\n",
"##################\n",
"Groupe d'age : 2\n",
"number alive = 378\n",
"number dead = 60\n",
"total number = 438\n",
"number smoker = 239\n",
"number non smoker = 199\n"
]
},
{
"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>Smoker</th>\n",
" <th>No</th>\n",
" <th>Yes</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Status</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Alive</th>\n",
" <td>180</td>\n",
" <td>198</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Dead</th>\n",
" <td>19</td>\n",
" <td>41</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
"Smoker No Yes\n",
"Status \n",
"Alive 180 198\n",
"Dead 19 41"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"ratio_smoker = 0.171548\n",
"ratio_non_smoker = 0.095477\n",
"##################\n",
"\n",
"##################\n",
"Groupe d'age : 3\n",
"number alive = 145\n",
"number dead = 91\n",
"total number = 236\n",
"number smoker = 115\n",
"number non smoker = 121\n"
]
},
{
"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>Smoker</th>\n",
" <th>No</th>\n",
" <th>Yes</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Status</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Alive</th>\n",
" <td>81</td>\n",
" <td>64</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Dead</th>\n",
" <td>40</td>\n",
" <td>51</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
"Smoker No Yes\n",
"Status \n",
"Alive 81 64\n",
"Dead 40 51"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"ratio_smoker = 0.443478\n",
"ratio_non_smoker = 0.330579\n",
"##################\n",
"\n",
"##################\n",
"Groupe d'age : 4\n",
"number alive = 35\n",
"number dead = 207\n",
"total number = 242\n",
"number smoker = 49\n",
"number non smoker = 193\n"
]
},
{
"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>Smoker</th>\n",
" <th>No</th>\n",
" <th>Yes</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Status</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Alive</th>\n",
" <td>28</td>\n",
" <td>7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Dead</th>\n",
" <td>165</td>\n",
" <td>42</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
"Smoker No Yes\n",
"Status \n",
"Alive 28 7\n",
"Dead 165 42"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"ratio_smoker = 0.857143\n",
"ratio_non_smoker = 0.854922\n",
"##################\n",
"\n"
]
}
],
"source": [
"for age_group in ['1', '2', '3', '4']:\n",
" print('##################')\n",
" print(f'Groupe d\\'age : {age_group}')\n",
" tab_class = raw_data.loc[(raw_data.AgeGroup == age_group)]\n",
" dead = tab_class['Status'].value_counts()['Dead']\n",
" alive = tab_class['Status'].value_counts()['Alive']\n",
" print(f'number alive = {alive}')\n",
" print(f'number dead = {dead}')\n",
" print(f'total number = {alive + dead}')\n",
" smoker = tab_class['Smoker'].value_counts()['Yes']\n",
" non_smoker = tab_class['Smoker'].value_counts()['No']\n",
" print(f'number smoker = {smoker}')\n",
" print(f'number non smoker = {non_smoker}')\n",
" tab_class = pd.crosstab(tab_class.Status, tab_class.Smoker) # on a bien le bon nombre de vivants et de morts\n",
" display(tab_class)\n",
" numpy_data = np.array(tab_class)\n",
" \n",
" ratio_smoker = numpy_data[1,1]/smoker\n",
" ratio_non_smoker = numpy_data[1,0]/non_smoker\n",
" print(f'ratio_smoker = {ratio_smoker:.6f}')\n",
" print(f'ratio_non_smoker = {ratio_non_smoker:.6f}')\n",
" print('##################\\n')\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Analyse :** \n",
"- Dans le groupe 1 : chez les plus jeunes (18-34 ans), le fait de fumer n'influe pas énormément sur le taux de mortalité. \n",
"- Dans le groupe 2 : fumer tue, le taux de mortalité est presque 2 fois plus élévé chez les fumeurs. \n",
"- Dans le groupe 3 : tout le monde meurt. Mais un peu plus souvent chez les fumeurs. \n",
"- Dans le groupe 4 : c'est catastrophique (mais normal, ils sont vieux), tout le monde meurt. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"C'est donc le nombre de membres de la catégorie 4 qui biaise les données globales : il y en a beaucoup, dont une grande partie de non-fumeurs, là où pour les autres catégories, la proportion de fumeurs et de non-fumeurs est presque équivalente. Puisque beaucoup de vieux meurent, la consommation de tabac ne semble pas faire varier le taux, ce qui biaise le ratio global."
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
......@@ -16,10 +853,9 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.3"
"version": "3.6.4"
}
},
"nbformat": 4,
"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