"
]
},
"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": 5,
"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:
Wed, 15 Apr 2020
Deviance:
3.0144
\n",
"
\n",
"
\n",
"
Time:
15:20:47
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: Wed, 15 Apr 2020 Deviance: 3.0144\n",
"Time: 15:20:47 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": 5,
"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": 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:
-23.526
\n",
"
\n",
"
\n",
"
Date:
Wed, 15 Apr 2020
Deviance:
18.086
\n",
"
\n",
"
\n",
"
Time:
15:21:05
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: Wed, 15 Apr 2020 Deviance: 18.086\n",
"Time: 15:21:05 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": 6,
"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": 7,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAXQAAAEKCAYAAAACS67iAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAgAElEQVR4nO3deXxU5dn/8c81k8lGFiBAWMKmBhDZswBiLVgFtIobCoi4FMQ+VVtrpZU+Vq3VLg99fu5VKOBaRWoFqfURBMUFEQKCrLIjJOxLQkL25Pr9MQPGGMgkmcksud6vV16Zc+Y+51x3JvnOyZlz7iOqijHGmNDnCHQBxhhjfMMC3RhjwoQFujHGhAkLdGOMCRMW6MYYEyYs0I0xJkzUGugiMltEDonIhjM8LyLytIhsF5F1IjLA92UaY4ypjTd76C8BI8/y/OVAqudrMvB8w8syxhhTV7UGuqp+Ahw7S5OrgVfU7QuguYi081WBxhhjvBPhg3V0APZWmc72zNtfvaGITMa9F09MTExax44d67XByspKHI7wOPxvfQk+4dIPsL4Eq4b0ZevWrUdUtXVNz/ki0KWGeTWOJ6CqM4AZAOnp6bpq1ap6bXDp0qUMHTq0XssGG+tL8AmXfoD1JVg1pC8i8s2ZnvPF2102UHVXOwXY54P1GmOMqQNfBPoC4BbP2S6DgDxV/d7hFmOMMf5V6yEXEXkDGAq0EpFs4GHABaCqLwDvAVcA24FC4HZ/FWuMMebMag10VR1Xy/MK3OWziowxIaGsrIzs7GyKi4sbZXuJiYls3ry5Ubblb970JTo6mpSUFFwul9fr9cWHosaYJig7O5v4+Hi6dOmCSE3nRvhWfn4+8fHxft9OY6itL6rK0aNHyc7OpmvXrl6vNzzOATLGNLri4mKSkpIaJcybGhEhKSmpzv/9WKAbY+rNwtx/6vOztUA3xpgwYcfQjTEhy+l00rt379PT8+fPp0uXLoErKMAs0I0xISsmJoa1a9ee8fny8nIiIppOzNkhF2NMWHnppZe44YYbuOqqqxg+fDgA06ZNIyMjgz59+vDwww+fbvv444/TvXt3Lr30UsaNG8df//pXAIYOHcqpoUmOHDlyeq+/oqKCKVOmnF7X9OnTgW8v5R89ejQ9evRg/PjxuM/ohqysLC688EL69u1LZmYm+fn5jBgx4jtvREOGDGHdunUN7nvTeesyxvjN7/+9kU37Tvh0nT3bJ/DwVRectU1RURH9+vUDoGvXrsybNw+A5cuXs27dOlq2bMmiRYvYtm0bK1euRFUZNWoUn3zyCc2aNWPOnDmsWbOG8vJyBgwYQFpa2lm3N2vWLBITE8nKyqKkpIQhQ4acftNYs2YNGzdupH379gwZMoRly5aRmZnJmDFjePPNN8nIyODEiRPExMRwyy238NJLL/Hkk0+ydetWSkpK6NOnT4N/ZhboxpiQdaZDLpdddhktW7YEYNGiRSxatIj+/fsDUFBQwLZt28jPz+faa68lNjYWgFGjRtW6vUWLFrFu3TreeustAPLy8ti2bRuRkZFkZmaSkpICQL9+/di9ezeJiYm0a9eOjIwMABISEgC49tprGTJkCNOmTWP27NncdtttDftBeFigG2MarLY96cbWrFmz049VlalTp3LnnXd+p82TTz55xlMDIyIiqKysBPjOueCqyjPPPMOIESO+037p0qVERUWdnnY6nZSXl6OqNW4jNjaWyy67jHfeeYe5c+dS35Fnq7Nj6MaYsDZixAhmz55NQUEBADk5ORw6dIiLL76YefPmUVRURH5+Pv/+979PL9OlSxdWr14NcHpv/NS6nn/+ecrKygDYunUrJ0+ePOO2e/Towb59+8jKygLcV4iWl5cDMGnSJH7+85+TkZFx+r+JhrI9dGNMWBs+fDibN29m8ODBAMTFxfHaa68xYMAAxowZQ79+/ejcuTM/+MEPTi9z//33c+ONN/Lqq69yySWXnJ4/adIkdu/ezYABA1BVWrduzfz588+47cjISN58803uueceioqKiImJYfHixQCkpaWRkJDA7bf7cDxDVQ3IV1pamtbXRx99VO9lg431JfiESz9U/duXTZs2+W3dNTlx4oRf1//www/rtGnT/LqNU06cOKE5OTmampqqFRUVZ2xX088YWKVnyFU75GKMMY3s9ddfZ+DAgTz++OM+va2eHXIxxhjgkUceabRt3XTTTd/7kNYXbA/dGFNvqjXePtj4QH1+thboxph6iY6O5ujRoxbqfqCe8dCjo6PrtJwdcjHG1EtKSgrZ2dkcPny4UbZXXFxc54ALVt705dQdi+rCAt0YUy8ul6tOd9NpqKVLl56+2jPU+asvdsjFGGPChAW6McaECQt0Y4wJExboxhgT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\n",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"data_pred.plot(x=\"Temperature\",y=\"Frequency\",kind=\"line\",ylim=[0,1.2])\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": [
"/home/aschmide/miniconda3/envs/envStats9/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": "iVBORw0KGgoAAAANSUhEUgAAAZAAAAEQCAYAAACeDyIUAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAgAElEQVR4nO3deXgUVb4//ndV9ZZ96exhExQMskoEFRUHEFARUK/iD6/LKKBXrjpcmStXHBZBeXDujDKiMs4gI4PL/HCFyIACM1c2AyiyCKIDgbB0ts7e6bXqfP/opKVZO0WW7s779Tx5SHeqqj+HXt5d51SdkoQQAkRERM0kt3cBREQUmRggRESkCwOEiIh0YYAQEZEuDBAiItKFAUJERLq0SYAsWrQIw4cPR69evfDjjz+ecxlVVTFv3jyMHDkSt9xyC1atWtUWpRERkU5tEiAjRozAu+++i9zc3PMus2bNGhQXF+OLL77A3/72N7z22ms4ceJEW5RHREQ6tEmA5OfnIzs7+4LLrF27Fvfccw9kWUZqaipGjhyJdevWtUV5RESkQ9iMgdhsNuTk5ARuZ2dno6SkpB0rIiKiCwmbACEioshiaO8CmmRnZ+PUqVPo168fgLP3SEJVVeWApkXn9F5Wazzs9vr2LqPVRHP7orltANsXyWRZQkpKnK51wyZAxowZg1WrVmHUqFGorq7Ghg0b8O677zZ7O5omojZAAER124Dobl80tw1g+zqiNunCWrBgAW666SaUlJTgl7/8JW6//XYAwJQpU7Bv3z4AwPjx49GpUyeMGjUK9957L6ZNm4bOnTu3RXlERKSDFG3Tudvt9VH7TSE9PQHl5XXtXUarieb2RXPbALYvksmyBKs1Xt+6LVwLERF1EAwQIiLShQFCRES6MECIiEgXBggREenCACEiIl0YIEREpAsDhIiIdGGAEBGRLgwQIiLShQFCRES6MECIiEgXBggREenCACEiIl0YIEREpAsDhIiIdGGAEBGRLgwQIiLShQFCRES6MECIiEgXBggREenCACEiIl0YIEREpAsDhIiIdGGAEBGRLgwQIiLShQFCRES6MECIiEgXBggREenCACEiIl0YIEREpAsDhIiIdGGAEBGRLgwQIiLShQFCRES6GNrqgYqKijBz5kxUV1cjOTkZixYtQrdu3YKWsdvt+J//+R/YbDZ4vV5ce+21eP7552EwtFmZREQUojbbA5kzZw4mTZqE9evXY9KkSZg9e/ZZyyxduhQ9evTAmjVrsGbNGnz//ff44osv2qpEIiJqhjYJELvdjgMHDmDs2LEAgLFjx+LAgQOorKwMWk6SJDgcDmiaBo/HA6/Xi8zMzLYokYiImqlN+oZsNhsyMzOhKAoAQFEUZGRkwGazITU1NbDcE088gSeffBI33HADnE4n7r//fgwaNKhZj2W1xrdo7eEmPT2hvUtoVdHcvmhuG8D2dURhNbiwbt069OrVC++88w4cDgemTJmCdevWYcyYMSFvw26vh6aJVqyy/aSnJ6C8vK69y2g10dy+aG4bwPZFMlmWdH/xbpMurOzsbJSWlkJVVQCAqqooKytDdnZ20HIrV67EuHHjIMsyEhISMHz4cBQWFrZFiURE1ExtEiBWqxV5eXkoKCgAABQUFCAvLy+o+woAOnXqhK+++goA4PF4sH37dlxxxRVtUSIRETVTmx2FNXfuXKxcuRKjR4/GypUrMW/ePADAlClTsG/fPgDAc889h2+++QZ33HEHJkyYgG7duuHee+9tqxKJiKgZJCFEVA0YcAwkckVz+6K5bQDbF8nCfgyEiIiiDwOEiIh0YYAQEZEuDBAiItKFAUJERLowQIiISBcGCBER6cIAISIiXRggRESkCwOEiIh0YYAQEZEuDBAiItKFAUJERLowQIiISBcGCBER6cIAISIiXRggRESkCwOEiIh0YYAQEZEuDBAiItKFAUJERLowQIiISBcGCBER6cIAISIiXRggRESkCwOEiIh0YYAQEZEuDBAiItKFAUJERLowQIiISBcGCBER6RJygKxYsQKVlZWtWQsREUWQkANk27ZtGDFiBB577DGsXbsWHo+nNesiIqIwF3KALF26FJs2bcJNN92Ed955B0OHDsWsWbOwc+fO1qyPiIjCVLPGQFJSUnD//ffjb3/7G/76179i3759ePDBBzF8+HC8+eabcDgc5123qKgIEydOxOjRozFx4kQcPXr0nMutXbsWd9xxB8aOHYs77rgDFRUVzWoQERG1DUNzV9i+fTtWr16NjRs3ok+fPpg8eTJycnKwYsUKTJkyBe+9994515szZw4mTZqE8ePH47PPPsPs2bOxYsWKoGX27duHJUuW4J133kF6ejrq6upgMpn0tYyI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\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": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"