Skip to content

Commit ca8f1e3

Browse files
committed
more cleanup and updates
1 parent e528fed commit ca8f1e3

File tree

7 files changed

+221
-85
lines changed

7 files changed

+221
-85
lines changed

chapter/statistics/Bootstrap.ipynb

Lines changed: 8 additions & 8 deletions
Large diffs are not rendered by default.

chapter/statistics/Maximum_likelihood.ipynb

Lines changed: 186 additions & 50 deletions
Large diffs are not rendered by default.
-7.96 KB
Loading
-1.75 KB
Loading
Binary file not shown.
Binary file not shown.

chapter/statistics/maximum_posteriori.ipynb

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"cells": [
33
{
44
"cell_type": "code",
5-
"execution_count": 5,
5+
"execution_count": 1,
66
"metadata": {},
77
"outputs": [
88
{
@@ -12,7 +12,7 @@
1212
"<IPython.core.display.Image object>"
1313
]
1414
},
15-
"execution_count": 5,
15+
"execution_count": 1,
1616
"metadata": {
1717
"image/png": {
1818
"width": 200
@@ -126,7 +126,7 @@
126126
},
127127
{
128128
"cell_type": "code",
129-
"execution_count": 6,
129+
"execution_count": 7,
130130
"metadata": {},
131131
"outputs": [
132132
{
@@ -138,22 +138,22 @@
138138
"(k + 5)/(n + 10)"
139139
]
140140
},
141-
"execution_count": 6,
141+
"execution_count": 7,
142142
"metadata": {},
143143
"output_type": "execute_result"
144144
}
145145
],
146146
"source": [
147-
">>> import sympy\n",
148-
">>> from sympy import stats as st\n",
149-
">>> from sympy.abc import p,k,n\n",
147+
"import numpy as np\n",
148+
"import sympy\n",
149+
"from sympy import stats as st\n",
150+
"from sympy.abc import p,k,n\n",
150151
"# setup objective function using sympy.log\n",
151-
">>> obj=sympy.expand_log(sympy.log(p**k*(1-p)**(n-k)*\n",
152+
"obj=sympy.expand_log(sympy.log(p**k*(1-p)**(n-k)*\n",
152153
" st.density(st.Beta('p',6,6))(p)))\n",
153154
"# use calculus to maximize objective\n",
154-
">>> sol=sympy.solve(sympy.simplify(sympy.diff(obj,p)),p)[0]\n",
155-
">>> sol\n",
156-
"(k + 5)/(n + 10)"
155+
"sol=sympy.solve(sympy.simplify(sympy.diff(obj,p)),p)[0]\n",
156+
"sol"
157157
]
158158
},
159159
{
@@ -326,7 +326,7 @@
326326
},
327327
{
328328
"cell_type": "code",
329-
"execution_count": 7,
329+
"execution_count": 3,
330330
"metadata": {},
331331
"outputs": [],
332332
"source": [
@@ -352,23 +352,23 @@
352352
},
353353
{
354354
"cell_type": "code",
355-
"execution_count": 8,
355+
"execution_count": 4,
356356
"metadata": {},
357-
"outputs": [
358-
{
359-
"ename": "NameError",
360-
"evalue": "name 'linspace' is not defined",
361-
"output_type": "error",
362-
"traceback": [
363-
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
364-
"\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
365-
"\u001b[0;32m<ipython-input-8-9952eade6718>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mpvals\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mlinspace\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m100\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0mmxvals\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mj\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mzip\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0max\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mflat\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mposteriors\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0mi\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mpvals\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0msympy\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mlambdify\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mp\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mj\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mpvals\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mcolor\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'k'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0mmxval\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfminbound\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msympy\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mlambdify\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mp\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0mj\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
366-
"\u001b[0;31mNameError\u001b[0m: name 'linspace' is not defined"
367-
]
368-
}
369-
],
357+
"outputs": [],
370358
"source": [
371-
"pvals = linspace(0,1,100)\n",
359+
"from matplotlib.pylab import subplots\n",
360+
"from scipy.optimize import fminbound\n",
361+
"\n",
362+
"fig,ax = subplots(4,4,sharex=True,\n",
363+
" subplot_kw={\n",
364+
" 'yticks':[],\n",
365+
" 'xticks':[0,0.5,1],\n",
366+
" 'xticklabels':[0,0.5,1]\n",
367+
" }\n",
368+
" )\n",
369+
"fig.set_size_inches((8,8))\n",
370+
"\n",
371+
"pvals = np.linspace(0,1,100)\n",
372372
"mxvals = []\n",
373373
"for i,j in zip(ax.flat,posteriors):\n",
374374
" i.plot(pvals,sympy.lambdify(p,j)(pvals),color='k')\n",

0 commit comments

Comments
 (0)