From 0b85315034013f2b43a3b401d47051a896cd22bb Mon Sep 17 00:00:00 2001 From: Corentin Ambroise Date: Thu, 4 Mar 2021 16:27:32 +0100 Subject: [PATCH] exo1 --- module4/exo1_python_fr.org | 219 ++++++++++++++++++++++++++++++ module4/freq_temp_python.png | Bin 0 -> 13665 bytes module4/prediction_with_ci.png | Bin 0 -> 22191 bytes module4/proba_estimate_python.png | Bin 0 -> 22645 bytes module4/shuttle.csv | 24 ++++ 5 files changed, 243 insertions(+) create mode 100644 module4/exo1_python_fr.org create mode 100644 module4/freq_temp_python.png create mode 100644 module4/prediction_with_ci.png create mode 100644 module4/proba_estimate_python.png create mode 100644 module4/shuttle.csv diff --git a/module4/exo1_python_fr.org b/module4/exo1_python_fr.org new file mode 100644 index 0000000..871d93b --- /dev/null +++ b/module4/exo1_python_fr.org @@ -0,0 +1,219 @@ +#+TITLE: Analyse du risque de défaillance des joints toriques de la navette Challenger +#+AUTHOR: Arnaud Legrand +#+LANGUAGE: fr + +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: + +#+LATEX_HEADER: \usepackage{a4} +#+LATEX_HEADER: \usepackage[french]{babel} + +# #+PROPERTY: header-args :session :exports both + +Le 27 Janvier 1986, veille du décollage de la navette /Challenger/, eu +lieu une télé-conférence de trois heures entre les ingénieurs de la +Morton Thiokol (constructeur d'un des moteurs) et de la NASA. La +discussion portait principalement sur les conséquences de la +température prévue au moment du décollage de 31°F (juste en dessous de +0°C) sur le succès du vol et en particulier sur la performance des +joints toriques utilisés dans les moteurs. En effet, aucun test +n'avait été effectué à cette température. + +L'étude qui suit reprend donc une partie des analyses effectuées cette +nuit là et dont l'objectif était d'évaluer l'influence potentielle de +la température et de la pression à laquelle sont soumis les joints +toriques sur leur probabilité de dysfonctionnement. Pour cela, nous +disposons des résultats des expériences réalisées par les ingénieurs +de la NASA durant les 6 années précédant le lancement de la navette +Challenger. + +* Chargement des données +Nous commençons donc par charger ces données: +#+begin_src python :results value :session *python* :exports both +import numpy as np +import pandas as pd +data = pd.read_csv("shuttle.csv") +data +#+end_src + +#+RESULTS: +#+begin_example + Date Count Temperature Pressure Malfunction +0 4/12/81 6 66 50 0 +1 11/12/81 6 70 50 1 +2 3/22/82 6 69 50 0 +3 11/11/82 6 68 50 0 +4 4/04/83 6 67 50 0 +5 6/18/82 6 72 50 0 +6 8/30/83 6 73 100 0 +7 11/28/83 6 70 100 0 +8 2/03/84 6 57 200 1 +9 4/06/84 6 63 200 1 +10 8/30/84 6 70 200 1 +11 10/05/84 6 78 200 0 +12 11/08/84 6 67 200 0 +13 1/24/85 6 53 200 2 +14 4/12/85 6 67 200 0 +15 4/29/85 6 75 200 0 +16 6/17/85 6 70 200 0 +17 7/29/85 6 81 200 0 +18 8/27/85 6 76 200 0 +19 10/03/85 6 79 200 0 +20 10/30/85 6 75 200 2 +21 11/26/85 6 76 200 0 +22 1/12/86 6 58 200 1 +#+end_example + +Le jeu de données nous indique la date de l'essai, le nombre de joints +toriques mesurés (il y en a 6 sur le lançeur principal), la +température (en Fahrenheit) et la pression (en psi), et enfin le +nombre de dysfonctionnements relevés. + +* Inspection graphique des données +Très bien, nous avons une variabilité de température importante mais +la pression est quasiment toujours égale à 200, ce qui devrait +simplifier l'analyse. +#+begin_src python :results value :session *python* :exports both +data['Pressure'].value_counts() +#+end_src + +#+RESULTS: +: 200 15 +: 50 6 +: 100 2 +: Name: Pressure, dtype: int64 + +Comment la fréquence d'échecs varie-t-elle avec la température ? +#+begin_src python :results output file :var matplot_lib_filename="freq_temp_python.png" :exports both :session *python* +import matplotlib.pyplot as plt + +plt.clf() +data["Frequency"]=data.Malfunction/data.Count +data.plot(x="Temperature",y="Frequency",kind="scatter",ylim=[0,1]) +plt.grid(True) + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:*c* argument looks like a single numeric RGB or RGBA sequence, which should be avoided as value-mapping will have precedence in case its length matches with *x* & *y*. Please use the *color* keyword-argument or provide a 2-D array with a single row if you intend to specify the same RGB or RGBA value for all points. +freq_temp_python.png]] +freq_temp_python.png]] +freq_temp_python.png]] + +À première vue, ce n'est pas flagrant mais bon, essayons quand même +d'estimer l'impact de la température $t$ sur la probabilité de +dysfonctionnements d'un joint. + +* Estimation de l'influence de la température + +Supposons que chacun des 6 joints toriques est endommagé avec la même +probabilité et indépendamment des autres et que cette probabilité ne +dépend que de la température. Si on note $p(t)$ cette probabilité, le +nombre de joints $D$ dysfonctionnant lorsque l'on effectue le vol à +température $t$ suit une loi binomiale de paramètre $n=6$ et +$p=p(t)$. Pour relier $p(t)$ à $t$, on va donc effectuer une +régression logistique. + +#+begin_src python :results output :session *python* :exports both +import statsmodels.api as sm + +data["Success"]=data.Count-data.Malfunction +data["Intercept"]=1 + + +# logit_model=sm.Logit(data["Frequency"],data[["Intercept","Temperature"]]).fit() +logmodel=sm.GLM( + data['Frequency'], + data[['Intercept','Temperature']], + family=sm.families.Binomial(), + var_weights=data['Count']).fit() + +print(logmodel.summary()) +#+end_src + +#+RESULTS: +#+begin_example +Generalized Linear Model Regression Results +============================================================================== +Dep. Variable: Frequency No. Observations: 23 +Model: GLM Df Residuals: 21 +Model Family: Binomial Df Model: 1 +Link Function: logit Scale: 1.0000 +Method: IRLS Log-Likelihood: -23.526 +Date: Thu, 04 Mar 2021 Deviance: 18.086 +Time: 15:53:18 Pearson chi2: 30.0 +No. Iterations: 6 +Covariance Type: nonrobust +=============================================================================== + coef std err z P>|z| [0.025 0.975] +------------------------------------------------------------------------------- +Intercept 5.0850 3.052 1.666 0.096 -0.898 11.068 +Temperature -0.1156 0.047 -2.458 0.014 -0.208 -0.023 +=============================================================================== +#+end_example + + +L'estimateur le plus probable du paramètre de température est -0.1156 +et l'erreur standard de cet estimateur est de 0.115 + +* Estimation de la probabilité de dysfonctionnant des joints toriques +La température prévue le jour du décollage est de 31°F. Essayons +d'estimer la probabilité de dysfonctionnement des joints toriques à +cette température à partir du modèle que nous venons de construire: + +#+begin_src python :results output file :var matplot_lib_filename="proba_estimate_python.png" :exports both :session *python* +import matplotlib.pyplot as plt + +data_pred = pd.DataFrame({'Temperature': np.linspace(start=30, stop=90, num=121), 'Intercept': 1}) +data_pred['Frequency'] = logmodel.predict(data_pred[['Intercept','Temperature']]) +data_pred.plot(x="Temperature",y="Frequency",kind="line",ylim=[0,1]) +plt.scatter(x=data["Temperature"],y=data["Frequency"]) +plt.grid(True) + +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:proba_estimate_python.png]] + +On voit donc que la température semble avoir un impact direct sur la probabilité d'échec des +joints toriques. Utilisons ce modèle pour estimer la probabilité de défaillance des joints toriques dans les conditions du jour J: + +#+begin_src python :results output file :var matplot_lib_filename="prediction_with_ci.png" :session *python* :exports both +import seaborn as sns +#data = data.append([{'Temperature': t} for t in np.linspace(start=30, stop=90, num=121)], ignore_index=True) +fig = plt.figure() +ax = fig.add_subplot(111) +sns.set(color_codes=True) +ax.set_xlim(30,90) +ax.set_ylim(0,1) +sns.regplot(x='Temperature', y='Frequency', data=data, logistic=True, ax=ax) +plt.savefig(matplot_lib_filename) +print(matplot_lib_filename) +#+end_src + +#+RESULTS: +[[file:prediction_with_ci.png]] + + + +Cette probabilité est donc d'environ $p=1$, le décollage ne doit donc pas avoir +lieu demain comme il était prévu. + +Seulement, le lendemain, la navette Challenger explosera et emportera +avec elle ses sept membres d'équipages. L'opinion publique est +fortement touchée et lors de l'enquête qui suivra, la fiabilité des +joints toriques sera directement mise en cause. Au delà des problèmes +de communication interne à la NASA qui sont pour beaucoup dans ce +fiasco, l'analyse précédente comporte (au moins) un petit +problème... Saurez-vous le trouver ? Vous êtes libre de modifier cette +analyse et de regarder ce jeu de données sous tous les angles afin +d'expliquer ce qui ne va pas. + diff --git a/module4/freq_temp_python.png b/module4/freq_temp_python.png new file mode 100644 index 0000000000000000000000000000000000000000..f76fd7319c51be2a91eb4c685fc0f9865775a589 GIT binary patch literal 13665 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⪻z@{tNaQkf=k4eQbJ~{Bx(T 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 z�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 literal 0 HcmV?d00001 diff --git a/module4/proba_estimate_python.png b/module4/proba_estimate_python.png new file mode 100644 index 0000000000000000000000000000000000000000..e85df2d8bb30552d580b0dcd8f4824d4f2ab33a5 GIT binary patch literal 22645 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