From c0dd50ee8cf6b30265513379f6c6382f0ba0d3d2 Mon Sep 17 00:00:00 2001 From: 84848da3cce8d6b635b2e7c1749f3f0a <84848da3cce8d6b635b2e7c1749f3f0a@app-learninglab.inria.fr> Date: Mon, 30 Mar 2020 15:27:32 +0000 Subject: [PATCH] Update exo5_fr.Rmd --- module2/exo5/exo5_fr.Rmd | 81 ++++++++++++++++++++++++++-------------- 1 file changed, 54 insertions(+), 27 deletions(-) diff --git a/module2/exo5/exo5_fr.Rmd b/module2/exo5/exo5_fr.Rmd index 479d782..ebd719e 100644 --- a/module2/exo5/exo5_fr.Rmd +++ b/module2/exo5/exo5_fr.Rmd @@ -1,10 +1,17 @@ --- title: "Analyse du risque de défaillance des joints toriques de la navette Challenger" -author: "Arnaud Legrand" -date: "28 juin 2018" +author: "Camille Launay" +date: "30/03/2020" output: html_document --- + +```{r setup, include=FALSE} +knitr::opts_chunk$set(echo = TRUE) +library(dplyr) +library(ggplot2) +``` + 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 @@ -26,7 +33,7 @@ Challenger. Nous commençons donc par charger ces données: ```{r} -data = read.csv("shuttle.csv",header=T) +data = read.csv("D:/MOOC Reproductibilité de la recherche/shuttle.csv",header=T) data ``` @@ -36,28 +43,32 @@ température (en Farenheit) 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 aucun information +~~__Les vols où aucun incident n'est relevé n'apportant aucun 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. +moins un joint a été défectueux.__~~ +__Cette hypothèse me parait fausse, les expériences avec succès (sans défaillance) apportent de la même façon des informations sur l'influence de la température ou de la pression sur les dysfonctionnements.__ ```{r} -data = data[data$Malfunction>0,] -data +#subdata = data[data$Malfunction>0,] +#subdata ``` -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 -simplifier l'analyse. +simplifier l'analyse.~~ +Dans le data complet, l'étendue de la pression est importante, on ne peut pas mettre de côté ce facteur dans la suite de l'analyse. -Comment la fréquence d'échecs varie-t-elle avec la température ? +Comment la fréquence d'échecs varie-t-elle avec la température __à pression égale__ ? ```{r} -plot(data=data, Malfunction/Count ~ Temperature, ylim=c(0,1)) +plot(data=data[data$Pressure==200,], Malfunction/Count ~ Temperature, ylim=c(0,1)) + ``` -À première vue, ce n'est pas flagrant mais bon, essayons quand même +~~À 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. +dysfonctionnements d'un joint.~~ +__Un effet négatif des températures basses commence à apparaître.__ # Estimation de l'influence de la température @@ -69,16 +80,19 @@ 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. +__Je rajoute l'effet de la pression__ + ```{r} -logistic_reg = glm(data=data, Malfunction/Count ~ Temperature, weights=Count, +logistic_reg = glm(data=data, Malfunction/Count ~ Temperature + Pressure, weights=Count, family=binomial(link='logit')) summary(logistic_reg) ``` -L'estimateur le plus probable du paramètre de température est 0.001416 +~~L'estimateur le plus probable du paramètre de température est 0.001416 et l'erreur standard de cet estimateur est de 0.049, autrement dit on ne peut pas distinguer d'impact particulier et il faut prendre nos -estimations avec des pincettes. +estimations avec des pincettes.~~ +__Avec le dataset complet, le facteur température a un impact significatif.__ # Estimation de la probabilité de dysfonctionnant des joints toriques La température prévue le jour du décollage est de 31°F. Essayons @@ -88,30 +102,43 @@ cette température à partir du modèle que nous venons de construire: ```{r} # shuttle=shuttle[shuttle$r!=0,] tempv = seq(from=30, to=90, by = .5) -rmv <- predict(logistic_reg,list(Temperature=tempv),type="response") +rmv <- predict(logistic_reg,list(Temperature=tempv, Pressure=rep(200,length.out=length(tempv))),type="response") plot(tempv,rmv,type="l",ylim=c(0,1)) points(data=data, Malfunction/Count ~ Temperature) ``` -Comme on pouvait s'attendre au vu des données initiales, la +Avec la fonction `ggplot` : + +```{r} +ggplot(data[data$Pressure==200,],aes(x=Temperature,y=Malfunction/Count)) + + geom_point(alpha=0.3,size=3)+ + theme_bw()+ + geom_smooth(method="glm",method.args=list(family="binomial"),fullrange=TRUE)+ + xlim(30,90) +``` + +~~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: +précédents où nous il y a eu défaillance d'au moins un joint.~~ +__La température a un effet notable sur la probabilité d'échec des joints toriques. Elle est de 0.8 à 30°F.__ + +~~Revenons à l'ensemble des données initiales pour estimer la probabilité de +défaillance d'un joint:~~ ```{r} -data_full = read.csv("shuttle.csv",header=T) -sum(data_full$Malfunction)/sum(data_full$Count) +#data_full = read.csv("shuttle.csv",header=T) +#sum(data_full$Malfunction)/sum(data_full$Count) ``` -Cette probabilité est donc d'environ $p=0.065$, sachant qu'il existe +Cette probabilité est donc d'environ ~~$p=0.065$~~ __$p=0.8$__, 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 +est de $p^2$ ~~$\approx 0.00425$~~ __$0.64$__. La probabilité de défaillance d'un des +lançeur est donc de $1-(1-p^2)^3$ ~~$\approx 1.2%$~~ __$95%$__. ~~Ça serait vraiment pas de chance... Tout est sous contrôle, le décollage peut donc avoir -lieu demain comme prévu. +lieu demain comme prévu.~~ +__A la température de 30°F à peu près, il y a donc de très très fortes chances que les lanceurs soient défaillants.__ Seulement, le lendemain, la navette Challenger explosera et emportera avec elle ses sept membres d'équipages. L'opinion publique est -- 2.18.1