Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mooc-rr
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
3e6bf7b47a05a05ae3d6af86121dcb5d
mooc-rr
Commits
a2fba00c
Commit
a2fba00c
authored
Apr 09, 2020
by
François Févotte
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Ex 02-5
parent
b5d60038
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
115 additions
and
88 deletions
+115
-88
exo5_python_fr.org
module2/exo5/exo5_python_fr.org
+115
-88
freq_temp_python.png
module2/exo5/freq_temp_python.png
+0
-0
proba_estimate_python.png
module2/exo5/proba_estimate_python.png
+0
-0
No files found.
module2/exo5/exo5_python_fr.org
View file @
a2fba00c
...
@@ -42,30 +42,30 @@ data
...
@@ -42,30 +42,30 @@ data
#+RESULTS:
#+RESULTS:
#+begin_example
#+begin_example
Date Count Temperature Pressure Malfunction
Date Count Temperature Pressure Malfunction
0
4/12/81 6 66 50 0
0 4/12/81 6 66 50 0
1
11/12/81 6 70 50 1
1 11/12/81 6 70 50 1
2
3/22/82 6 69 50 0
2 3/22/82 6 69 50 0
3
11/11/82 6 68 50 0
3 11/11/82 6 68 50 0
4
4/04/83 6 67 50 0
4 4/04/83 6 67 50 0
5
6/18/82 6 72 50 0
5 6/18/82 6 72 50 0
6
8/30/83 6 73 100 0
6 8/30/83 6 73 100 0
7
11/28/83 6 70 100 0
7 11/28/83 6 70 100 0
8
2/03/84 6 57 200 1
8 2/03/84 6 57 200 1
9
4/06/84 6 63 200 1
9 4/06/84 6 63 200 1
10
8/30/84 6 70 200 1
10 8/30/84 6 70 200 1
11
10/05/84 6 78 200 0
11 10/05/84 6 78 200 0
12
11/08/84 6 67 200 0
12 11/08/84 6 67 200 0
13
1/24/85 6 53 200 2
13 1/24/85 6 53 200 2
14
4/12/85 6 67 200 0
14 4/12/85 6 67 200 0
15
4/29/85 6 75 200 0
15 4/29/85 6 75 200 0
16
6/17/85 6 70 200 0
16 6/17/85 6 70 200 0
17 7/29/85 6 81 200 0
17
7/29/85 6 81 200 0
18
8/27/85 6 76 200 0
18 8/27/85 6 76 200 0
19
10/03/85 6 79 200 0
19 10/03/85 6 79 200 0
20
10/30/85 6 75 200 2
20 10/30/85 6 75 200 2
21
11/26/85 6 76 200 0
21 11/26/85 6 76 200 0
22
1/12/86 6 58 200 1
22 1/12/86 6 58 200 1
#+end_example
#+end_example
Le jeu de données nous indique la date de l'essai, le nombre de joints
Le jeu de données nous indique la date de l'essai, le nombre de joints
...
@@ -74,25 +74,44 @@ température (en Fahrenheit) et la pression (en psi), et enfin le
...
@@ -74,25 +74,44 @@ température (en Fahrenheit) et la pression (en psi), et enfin le
nombre de dysfonctionnements relevés.
nombre de dysfonctionnements relevés.
* Inspection graphique des données
* 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
# Les vols où aucun incident n'est relevé n'apportant aucune information
data = data[data.Malfunction>0]
# sur l'influence de la température ou de la pression sur les
data
# dysfonctionnements, nous nous concentrons sur les expériences où au
#+end_src
# moins un joint a été défectueux.
#+RESULTS:
# #+begin_src python :results value :session *python* :exports both
: Date Count Temperature Pressure Malfunction
# data = data[data.Malfunction>0]
: 1 11/12/81 6 70 50 1
# data
: 8 2/03/84 6 57 200 1
# #+end_src
: 9 4/06/84 6 63 200 1
: 10 8/30/84 6 70 200 1
# #+RESULTS:
: 13 1/24/85 6 53 200 2
# #+begin_example
: 20 10/30/85 6 75 200 2
# Date Count Temperature Pressure Malfunction
: 22 1/12/86 6 58 200 1
# 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
Très bien, nous avons une variabilité de température importante mais
la pression est quasiment toujours égale à 200, ce qui devrait
la pression est quasiment toujours égale à 200, ce qui devrait
...
@@ -145,26 +164,27 @@ logmodel.summary()
...
@@ -145,26 +164,27 @@ logmodel.summary()
#+begin_example
#+begin_example
Generalized Linear Model Regression Results
Generalized Linear Model Regression Results
==============================================================================
==============================================================================
Dep. Variable: Frequency No. Observations:
7
Dep. Variable: Frequency No. Observations:
23
Model: GLM Df Residuals:
5
Model: GLM Df Residuals:
21
Model Family: Binomial Df Model: 1
Model Family: Binomial Df Model: 1
Link Function: logit Scale: 1.0
Link Function: logit Scale: 1.0000
Method: IRLS Log-Likelihood: -3.6370
Method: IRLS Log-Likelihood: -3.9210
Date: Fri, 20 Jul 2018 Deviance: 3.3763
Date: Thu, 09 Apr 2020 Deviance: 3.0144
Time: 16:56:08 Pearson chi2: 0.236
Time: 12:50:13 Pearson chi2: 5.00
No. Iterations: 5
No. Iterations: 6
Covariance Type: nonrobust
===============================================================================
===============================================================================
coef std err z P>|z| [0.025 0.975]
coef std err z P>|z| [0.025 0.975]
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Intercept
-1.3895 7.828 -0.178 0.859 -16.732 13.953
Intercept
5.0850 7.477 0.680 0.496 -9.570 19.740
Temperature
0.0014 0.122 0.012 0.991 -0.238 0.24
0
Temperature
-0.1156 0.115 -1.004 0.316 -0.341 0.11
0
===============================================================================
===============================================================================
#+end_example
#+end_example
L'estimateur le plus probable du paramètre de température est 0.0014
#
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
#
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
#
ne peut pas distinguer d'impact particulier et il faut prendre nos
estimations avec des pincettes.
#
estimations avec des pincettes.
* Estimation de la probabilité de dysfonctionnant des joints toriques
* Estimation de la probabilité de dysfonctionnant des joints toriques
La température prévue le jour du décollage est de 31°F. Essayons
La température prévue le jour du décollage est de 31°F. Essayons
...
@@ -187,36 +207,43 @@ print(matplot_lib_filename)
...
@@ -187,36 +207,43 @@ print(matplot_lib_filename)
#+RESULTS:
#+RESULTS:
[[file:proba_estimate_python.png]]
[[file:proba_estimate_python.png]]
Comme on pouvait s'attendre au vu des données initiales, la
D'après cette analyse, la probabilité d'échec des joints toriques serait
température n'a pas d'impact notable sur la probabilité d'échec des
supérieure à 80% à pour une température de 31°F.
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
# Comme on pouvait s'attendre au vu des données initiales, la
à l'ensemble des données initiales pour estimer la probabilité de
# température n'a pas d'impact notable sur la probabilité d'échec des
défaillance d'un joint:
# 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
#+begin_src python :results output :session *python* :exports both
# à l'ensemble des données initiales pour estimer la probabilité de
data = pd.read_csv("shuttle.csv")
# défaillance d'un joint:
print(np.sum(data.Malfunction)/np.sum(data.Count))
#+end_src
# #+begin_src python :results output :session *python* :exports both
# data = pd.read_csv("shuttle.csv")
#+RESULTS:
# print(np.sum(data.Malfunction)/np.sum(data.Count))
: 0.06521739130434782
# #+end_src
Cette probabilité est donc d'environ $p=0.065$, sachant qu'il existe
# #+RESULTS:
un joint primaire un joint secondaire sur chacune des trois parties du
# : 0.06521739130434782
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
# Cette probabilité est donc d'environ $p=0.065$, sachant qu'il existe
lançeur est donc de $1-(1-p^2)^3 \approx 1.2%$. Ça serait vraiment
# un joint primaire un joint secondaire sur chacune des trois parties du
pas de chance... Tout est sous contrôle, le décollage peut donc avoir
# lançeur, la probabilité de défaillance des deux joints d'un lançeur
lieu demain comme prévu.
# 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
Seulement, le lendemain, la navette Challenger explosera et emportera
# pas de chance... Tout est sous contrôle, le décollage peut donc avoir
avec elle ses sept membres d'équipages. L'opinion publique est
# lieu demain comme prévu.
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
# Seulement, le lendemain, la navette Challenger explosera et emportera
de communication interne à la NASA qui sont pour beaucoup dans ce
# avec elle ses sept membres d'équipages. L'opinion publique est
fiasco, l'analyse précédente comporte (au moins) un petit
# fortement touchée et lors de l'enquête qui suivra, la fiabilité des
problème... Saurez-vous le trouver ? Vous êtes libre de modifier cette
# joints toriques sera directement mise en cause. Au delà des problèmes
analyse et de regarder ce jeu de données sous tous les angles afin
# de communication interne à la NASA qui sont pour beaucoup dans ce
d'expliquer ce qui ne va pas.
# 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
View replaced file @
b5d60038
View file @
a2fba00c
12.3 KB
|
W:
|
H:
13 KB
|
W:
|
H:
2-up
Swipe
Onion skin
module2/exo5/proba_estimate_python.png
View replaced file @
b5d60038
View file @
a2fba00c
14.3 KB
|
W:
|
H:
22 KB
|
W:
|
H:
2-up
Swipe
Onion skin
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment