"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"%matplotlib inline\n",
"pd.set_option('mode.chained_assignment',None) # this removes a useless warning from pandas\n",
"import matplotlib.pyplot as plt\n",
"\n",
"data[\"Frequency\"]=data.Malfunction/data.Count\n",
"data.plot(x=\"Temperature\",y=\"Frequency\",kind=\"scatter\",ylim=[0,1])\n",
"plt.grid(True)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Logistic regression\n",
"\n",
"Let's assume O-rings independently fail with the same probability which solely depends on temperature. A logistic regression should allow us to estimate the influence of temperature."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"
Generalized Linear Model Regression Results
\n",
"
\n",
"
Dep. Variable:
Frequency
No. Observations:
23
\n",
"
\n",
"
\n",
"
Model:
GLM
Df Residuals:
21
\n",
"
\n",
"
\n",
"
Model Family:
Binomial
Df Model:
1
\n",
"
\n",
"
\n",
"
Link Function:
logit
Scale:
1.0000
\n",
"
\n",
"
\n",
"
Method:
IRLS
Log-Likelihood:
-3.9210
\n",
"
\n",
"
\n",
"
Date:
Tue, 26 May 2020
Deviance:
3.0144
\n",
"
\n",
"
\n",
"
Time:
10:26:44
Pearson chi2:
5.00
\n",
"
\n",
"
\n",
"
No. Iterations:
6
Covariance Type:
nonrobust
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
coef
std err
z
P>|z|
[0.025
0.975]
\n",
"
\n",
"
\n",
"
Intercept
5.0850
7.477
0.680
0.496
-9.570
19.740
\n",
"
\n",
"
\n",
"
Temperature
-0.1156
0.115
-1.004
0.316
-0.341
0.110
\n",
"
\n",
"
"
],
"text/plain": [
"\n",
"\"\"\"\n",
" Generalized Linear Model Regression Results \n",
"==============================================================================\n",
"Dep. Variable: Frequency No. Observations: 23\n",
"Model: GLM Df Residuals: 21\n",
"Model Family: Binomial Df Model: 1\n",
"Link Function: logit Scale: 1.0000\n",
"Method: IRLS Log-Likelihood: -3.9210\n",
"Date: Tue, 26 May 2020 Deviance: 3.0144\n",
"Time: 10:26:44 Pearson chi2: 5.00\n",
"No. Iterations: 6 Covariance Type: nonrobust\n",
"===============================================================================\n",
" coef std err z P>|z| [0.025 0.975]\n",
"-------------------------------------------------------------------------------\n",
"Intercept 5.0850 7.477 0.680 0.496 -9.570 19.740\n",
"Temperature -0.1156 0.115 -1.004 0.316 -0.341 0.110\n",
"===============================================================================\n",
"\"\"\""
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import statsmodels.api as sm\n",
"\n",
"data[\"Success\"]=data.Count-data.Malfunction\n",
"data[\"Intercept\"]=1\n",
"\n",
"logmodel=sm.GLM(data['Frequency'], data[['Intercept','Temperature']], \n",
" family=sm.families.Binomial(sm.families.links.logit)).fit()\n",
"\n",
"logmodel.summary()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The maximum likelyhood estimator of the intercept and of Temperature are thus $\\hat{\\alpha}=5.0849$ and $\\hat{\\beta}=-0.1156$. This **corresponds** to the values from the article of Dalal *et al.* The standard errors are $s_{\\hat{\\alpha}} = 7.477$ and $s_{\\hat{\\beta}} = 0.115$, which is **different** from the $3.052$ and $0.04702$ reported by Dallal *et al.* The deviance is $3.01444$ with 21 degrees of freedom. I cannot find any value similar to the Goodness of fit ($G^2=18.086$) reported by Dalal *et al.* There seems to be something wrong. Oh I know, I haven't indicated that my observations are actually the result of 6 observations for each rocket launch. Let's indicate these weights (since the weights are always the same throughout all experiments, it does not change the estimates of the fit but it does influence the variance estimates)."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"
Generalized Linear Model Regression Results
\n",
"
\n",
"
Dep. Variable:
Frequency
No. Observations:
23
\n",
"
\n",
"
\n",
"
Model:
GLM
Df Residuals:
21
\n",
"
\n",
"
\n",
"
Model Family:
Binomial
Df Model:
1
\n",
"
\n",
"
\n",
"
Link Function:
logit
Scale:
1.0000
\n",
"
\n",
"
\n",
"
Method:
IRLS
Log-Likelihood:
-23.526
\n",
"
\n",
"
\n",
"
Date:
Tue, 26 May 2020
Deviance:
18.086
\n",
"
\n",
"
\n",
"
Time:
10:26:46
Pearson chi2:
30.0
\n",
"
\n",
"
\n",
"
No. Iterations:
6
Covariance Type:
nonrobust
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
coef
std err
z
P>|z|
[0.025
0.975]
\n",
"
\n",
"
\n",
"
Intercept
5.0850
3.052
1.666
0.096
-0.898
11.068
\n",
"
\n",
"
\n",
"
Temperature
-0.1156
0.047
-2.458
0.014
-0.208
-0.023
\n",
"
\n",
"
"
],
"text/plain": [
"\n",
"\"\"\"\n",
" Generalized Linear Model Regression Results \n",
"==============================================================================\n",
"Dep. Variable: Frequency No. Observations: 23\n",
"Model: GLM Df Residuals: 21\n",
"Model Family: Binomial Df Model: 1\n",
"Link Function: logit Scale: 1.0000\n",
"Method: IRLS Log-Likelihood: -23.526\n",
"Date: Tue, 26 May 2020 Deviance: 18.086\n",
"Time: 10:26:46 Pearson chi2: 30.0\n",
"No. Iterations: 6 Covariance Type: nonrobust\n",
"===============================================================================\n",
" coef std err z P>|z| [0.025 0.975]\n",
"-------------------------------------------------------------------------------\n",
"Intercept 5.0850 3.052 1.666 0.096 -0.898 11.068\n",
"Temperature -0.1156 0.047 -2.458 0.014 -0.208 -0.023\n",
"===============================================================================\n",
"\"\"\""
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"logmodel=sm.GLM(data['Frequency'], data[['Intercept','Temperature']], \n",
" family=sm.families.Binomial(sm.families.links.logit),\n",
" var_weights=data['Count']).fit()\n",
"\n",
"logmodel.summary()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Good, now I have recovered the asymptotic standard errors $s_{\\hat{\\alpha}}=3.052$ and $s_{\\hat{\\beta}}=0.047$.\n",
"The Goodness of fit (Deviance) indicated for this model is $G^2=18.086$ with 21 degrees of freedom (Df Residuals).\n",
"\n",
"**I have therefore managed to fully replicate the results of the Dalal *et al.* article**."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Predicting failure probability\n",
"The temperature when launching the shuttle was 31°F. Let's try to estimate the failure probability for such temperature using our model.:"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"%matplotlib inline\n",
"data_pred = pd.DataFrame({'Temperature': np.linspace(start=30, stop=90, num=121), 'Intercept': 1})\n",
"data_pred['Frequency'] = logmodel.predict(data_pred)\n",
"data_pred.plot(x=\"Temperature\",y=\"Frequency\",kind=\"line\",ylim=[0,1])\n",
"plt.scatter(x=data[\"Temperature\"],y=data[\"Frequency\"])\n",
"plt.grid(True)"
]
},
{
"cell_type": "markdown",
"metadata": {
"hideCode": false,
"hidePrompt": false,
"scrolled": true
},
"source": [
"This figure is very similar to the Figure 4 of Dalal *et al.* **I have managed to replicate the Figure 4 of the Dalal *et al.* article.**"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Computing and plotting uncertainty"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Following the documentation of [Seaborn](https://seaborn.pydata.org/generated/seaborn.regplot.html), I use regplot."
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/opt/conda/lib/python3.6/site-packages/scipy/stats/stats.py:1713: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
" return np.add.reduce(sorted[indexer] * weights, axis=axis) / sumval\n"
]
},
{
"data": {
"image/png": "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++26x+PRdV3XN2zYoC9dulTXdV1/7bXX9AkTJuhlZWW6ruv6Lbfcoi9YsECvr6/XvV6vPmvWLH3r1q26ruv6L37xC33+/Pm60+nUvV6vfuONN+p///vfdV3X9fvuu09fu3atruu6rqqq/tOf/lRftWqVruu6fv311+s//vGPdb/fH/x+TU1N8Ot77rlHf+2114Ll+dnPfhYse0lJiX7RRRe1+bikpEQfOnSovn79+uD3n376af2ZZ54JPn7iiSf03//+92f3P1SIJnIHIWLOxo0b2bFjB4sWLQJA13WcTmfw++PGjQsuJDhy5EjcbjcJCQkADBs2jEOHDjFx4kQAZs2aRXx8PBBYQ//DDz9k8eLFfPDBBxQVFfHss88CgbXCBgwYEPwZc+fODa6gqWkay5cvZ8uWLWiaRk1NTZd3KouPj2fGjBkt6upyuSgoKAACq6+OGjWqS9cW4lQSECLm6LrO97//fe666642v2+1WoNfGwyGVo/9fn+711UUBQi86D/zzDP069evzXObQwVg9erVFBYW8ve//x273c4f//hHjh071ubzjEYjmqYFH3s8nnav21ymX//611xwwQVtXk+IsyHDXEXMaV610uFwAIHFArdv396la73zzju4XC58Ph9r164N3llMnTqV5cuXo6oqEFh5uLS0tM1r1NfXk5qait1up7a2NvhuH8But1NfXx98nJmZidvtDl5r3bp1Z6zr888/HwyShoYG9u3b16W6CnEqCQgRcy688ELuuusubr/9dubNm8fcuXP58MMPu3StcePGceeddzJnzhxyc3ODW4z+6le/QtM05s+fz9y5c7ntttuoqKho8xpXX301NTU1zJkzh3vuuafFu/2LL76Y+vp65s2bx+OPP47FYuH+++/npptu4oYbbsBsNp+2fHfccQdDhgzh2muvZe7cuSxdupQDBw50qa5CnEqGuQrRjnvvvZdx48axePHicBdFiLCQOwghhBBtkjsIIYQQbZI7CCGEEG2SgBBCCNEmCQghhBBtkoAQQgjRJgkIIYQQbfr/AW+X/RZvgXNlAAAAAElFTkSuQmCC\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.set(color_codes=True)\n",
"plt.xlim(30,90)\n",
"plt.ylim(0,1)\n",
"sns.regplot(x='Temperature', y='Frequency', data=data, logistic=True)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**I think I have managed to correctly compute and plot the uncertainty of my prediction.** Although the shaded area seems very similar to [the one obtained by with R](https://app-learninglab.inria.fr/moocrr/gitlab/moocrr-session3/moocrr-reproducibility-study/tree/master/challenger.pdf), I can spot a few differences (e.g., the blue point for temperature 63 is outside)... Could this be a numerical error ? Or a difference in the statistical method ? It is not clear which one is \"right\"."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"celltoolbar": "Hide code",
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}