L'estimateur du maximum de vraisemblance de l'ordonnée à l'origine et de la Température sont donc $\hat{\alpha}$= 5,0849 et $\hat{\beta}$ = -0,1156 et leurs erreurs type sont $s_{\hat{\alpha}}$ = 3,052 et$s_{\hat{\beta}}$ = 0,04702. La déviance résiduelle correspond à la Goodness of fit $G^{2}$ = 18,086 avec 21 degrés de liberté.
# Prévision de la probabilité de défaillance
la température au moment du lancement de la navette était de 31°F. Essayons d'estimer la probabilité de défaillance pour une telle température en utilisant notre modèle :
Mmmh, nous avons un avertissement de ggplot2 indiquant "non-integer #successes in a binomial glm !". Cela semble louche. De plus, cette région de confiance semble énorme. . . Il semble étrange que l'incertitude augmente autant pour des températures plus élevées. Et par rapport au précédent appel à glm, nous n'avons pas indiqué le poids qui tient compte du fait que chaque rapport Malfunction/Count correspond à des observations Count (si quelqu'un sait comment faire cela. . . ). Il doit y avoir un problème.
Fournissons donc les données "brutes" à ggplot2.
```{r}
data_flat=data.frame()
for(i in 1:nrow(data)) {
temperature = data[i,"Temperature"];
malfunction = data[i,"Malfunction"];
d = data.frame(Temperature=temperature,Malfunction=rep(0,times = data[i,"Count"]))
if(malfunction>0) {
d[1:malfunction, "Malfunction"]=1;
}
data_flat=rbind(data_flat,d)
}
dim(data_flat)
```
```{r}
str(data_flat)
```
Vérifions si j'obtiens la même régression ou non :
Parfait. Les estimations et les erreurs type sont les mêmes bien que la déviance résiduelle soit différente puisque la distance est maintenant mesurée par rapport à chaque mesure 0/1 et non par rapport à des ratios. Utilisons le tracé la régression pour data_flat ainsi que les ratios (données).
Cet intervalle de confiance semble beaucoup plus raisonnable (en accord avec les données) que le précédent.
Vérifions s'il correspond à la prédiction obtenue en appelant directement predict. L'obtention de la prédiction peut se faire directement ou par l'intermédiaire de la fonction link.
Voici la version "directe" (réponse) que j'ai utilisée dans mon tout premier graphique :
```{r}
pred = predict(logistic_reg_flat,list(Temperature=30),type="response",se.fit = T)
pred
```
La probabilité d'échec estimée pour 30° est donc de 0,834. Cependant, la valeur se.f it semble assez difficile à utiliser ainsi.
Je ne peux évidemment pas simplement ajouter ±2 se.fit à fit pour calculer un intervalle de confiance.
L'intervalle de confiance à 95% pour notre estimation est donc de [0.163,0.992]. C'est ce que ggplot2 vient de me tracer. Cela semble cohérent.
Je suis maintenant assez confiant dans le fait que j'ai réussi à calculer et à représenter correctement l'incertitude de ma prédiction. Soyons honnêtes, cela m'a pris du temps. Mes premières tentatives étaient manifestement erronées (je ne savais pas comment faire, alors j'ai fait confiance à ggplot2, que j'ai mal utilisé) et je n'ai pas utilisé la bonne méthode statistique. Je me sens également confiant maintenant parce que cela a été validé d'une manière ou d'une autre par d'autres collègues mais il sera intéressant que vous rassembliez d'autres types de tracés des valeurs que vous avez obtenues, qui diffèrent et que vous auriez probablement gardées si vous n'aviez pas de référence à laquelle comparer.
Veuillez nous fournir autant de versions que vous le pouvez.