Commit a2fba00c authored by François Févotte's avatar François Févotte

Ex 02-5

parent b5d60038
......@@ -74,25 +74,44 @@ température (en Fahrenheit) et la pression (en psi), et enfin le
nombre de dysfonctionnements relevés.
* Inspection graphique des données
Les vols où aucun incident n'est relevé n'apportant aucune information
sur l'influence de la température ou de la pression sur les
dysfonctionnements, nous nous concentrons sur les expériences où au
moins un joint a été défectueux.
#+begin_src python :results value :session *python* :exports both
data = data[data.Malfunction>0]
data
#+end_src
#+RESULTS:
: Date Count Temperature Pressure Malfunction
: 1 11/12/81 6 70 50 1
: 8 2/03/84 6 57 200 1
: 9 4/06/84 6 63 200 1
: 10 8/30/84 6 70 200 1
: 13 1/24/85 6 53 200 2
: 20 10/30/85 6 75 200 2
: 22 1/12/86 6 58 200 1
# Les vols où aucun incident n'est relevé n'apportant aucune information
# sur l'influence de la température ou de la pression sur les
# dysfonctionnements, nous nous concentrons sur les expériences où au
# moins un joint a été défectueux.
# #+begin_src python :results value :session *python* :exports both
# data = data[data.Malfunction>0]
# 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
Très bien, nous avons une variabilité de température importante mais
la pression est quasiment toujours égale à 200, ce qui devrait
......@@ -145,26 +164,27 @@ logmodel.summary()
#+begin_example
Generalized Linear Model Regression Results
==============================================================================
Dep. Variable: Frequency No. Observations: 7
Model: GLM Df Residuals: 5
Dep. Variable: Frequency No. Observations: 23
Model: GLM Df Residuals: 21
Model Family: Binomial Df Model: 1
Link Function: logit Scale: 1.0
Method: IRLS Log-Likelihood: -3.6370
Date: Fri, 20 Jul 2018 Deviance: 3.3763
Time: 16:56:08 Pearson chi2: 0.236
No. Iterations: 5
Link Function: logit Scale: 1.0000
Method: IRLS Log-Likelihood: -3.9210
Date: Thu, 09 Apr 2020 Deviance: 3.0144
Time: 12:50:13 Pearson chi2: 5.00
No. Iterations: 6
Covariance Type: nonrobust
===============================================================================
coef std err z P>|z| [0.025 0.975]
-------------------------------------------------------------------------------
Intercept -1.3895 7.828 -0.178 0.859 -16.732 13.953
Temperature 0.0014 0.122 0.012 0.991 -0.238 0.240
Intercept 5.0850 7.477 0.680 0.496 -9.570 19.740
Temperature -0.1156 0.115 -1.004 0.316 -0.341 0.110
===============================================================================
#+end_example
L'estimateur le plus probable du paramètre de température est 0.0014
et l'erreur standard de cet estimateur est de 0.122, autrement dit on
ne peut pas distinguer d'impact particulier et il faut prendre nos
estimations avec des pincettes.
# L'estimateur le plus probable du paramètre de température est 0.0014
# et l'erreur standard de cet estimateur est de 0.122, autrement dit on
# ne peut pas distinguer d'impact particulier et il faut prendre nos
# estimations avec des pincettes.
* Estimation de la probabilité de dysfonctionnant des joints toriques
La température prévue le jour du décollage est de 31°F. Essayons
......@@ -187,36 +207,43 @@ print(matplot_lib_filename)
#+RESULTS:
[[file:proba_estimate_python.png]]
Comme on pouvait s'attendre au vu des données initiales, la
température n'a pas d'impact notable sur la probabilité d'échec des
joints toriques. Elle sera d'environ 0.2, comme dans les essais
précédents où nous il y a eu défaillance d'au moins un joint. Revenons
à l'ensemble des données initiales pour estimer la probabilité de
défaillance d'un joint:
#+begin_src python :results output :session *python* :exports both
data = pd.read_csv("shuttle.csv")
print(np.sum(data.Malfunction)/np.sum(data.Count))
#+end_src
#+RESULTS:
: 0.06521739130434782
Cette probabilité est donc d'environ $p=0.065$, sachant qu'il existe
un joint primaire un joint secondaire sur chacune des trois parties du
lançeur, la probabilité de défaillance des deux joints d'un lançeur
est de $p^2 \approx 0.00425$. La probabilité de défaillance d'un des
lançeur est donc de $1-(1-p^2)^3 \approx 1.2%$. Ça serait vraiment
pas de chance... Tout est sous contrôle, le décollage peut donc avoir
lieu demain comme 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.
D'après cette analyse, la probabilité d'échec des joints toriques serait
supérieure à 80% à pour une température de 31°F.
# Comme on pouvait s'attendre au vu des données initiales, la
# température n'a pas d'impact notable sur la probabilité d'échec des
# joints toriques. Elle sera d'environ 0.2, comme dans les essais
# précédents où nous il y a eu défaillance d'au moins un joint. Revenons
# à l'ensemble des données initiales pour estimer la probabilité de
# défaillance d'un joint:
# #+begin_src python :results output :session *python* :exports both
# data = pd.read_csv("shuttle.csv")
# print(np.sum(data.Malfunction)/np.sum(data.Count))
# #+end_src
# #+RESULTS:
# : 0.06521739130434782
# Cette probabilité est donc d'environ $p=0.065$, sachant qu'il existe
# un joint primaire un joint secondaire sur chacune des trois parties du
# lançeur, la probabilité de défaillance des deux joints d'un lançeur
# est de $p^2 \approx 0.00425$. La probabilité de défaillance d'un des
# lançeur est donc de $1-(1-p^2)^3 \approx 1.2%$. Ça serait vraiment
# pas de chance... Tout est sous contrôle, le décollage peut donc avoir
# lieu demain comme 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.
# Local Variables:
# org-babel-python-command: "/home/francois/.julia/conda/3/bin/python"
# org-confirm-babel-evaluate: nil
# End:
module2/exo5/freq_temp_python.png

12.3 KB | W: | H:

module2/exo5/freq_temp_python.png

13 KB | W: | H:

module2/exo5/freq_temp_python.png
module2/exo5/freq_temp_python.png
module2/exo5/freq_temp_python.png
module2/exo5/freq_temp_python.png
  • 2-up
  • Swipe
  • Onion skin
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