Skip to content

Commit faf03f1

Browse files
committed
run black formatter on BSM
1 parent 605b195 commit faf03f1

15 files changed

+244
-215
lines changed

BSM/Chapter_03_00_Bayesian_CLT.ipynb

+9-9
Original file line numberDiff line numberDiff line change
@@ -53,19 +53,19 @@
5353
"for i, (Y, n) in enumerate([(2, 5), (3, 10), (30, 100)]):\n",
5454
" A = Y - 0.5\n",
5555
" B = n - Y - 0.5\n",
56-
" θ_MAP = A/(A+B)\n",
57-
" info = A/θ_MAP**2+B/(1-θ_MAP)**2\n",
56+
" θ_MAP = A / (A + B)\n",
57+
" info = A / θ_MAP ** 2 + B / (1 - θ_MAP) ** 2\n",
5858
"\n",
5959
" post1 = stats.binom(n, θ).pmf(Y) * stats.beta(0.5, 0.5).pdf(θ)\n",
6060
" post1 = post1 / np.sum(post1)\n",
61-
" post2 = stats.norm(θ_MAP, (1/info)**0.5).pdf(θ)\n",
62-
" post2 = post2/sum(post2)\n",
61+
" post2 = stats.norm(θ_MAP, (1 / info) ** 0.5).pdf(θ)\n",
62+
" post2 = post2 / sum(post2)\n",
6363
"\n",
64-
" ax[i].plot(θ, post1, 'k', lw=2, label='Exact')\n",
65-
" ax[i].axvline(θ_MAP, color='C2', lw=2, label='MAP')\n",
66-
" ax[i].plot(θ, post2, 'C1', lw=2, label='CLT')\n",
67-
" ax[i].set_xlabel('θ')\n",
68-
" ax[i].set_ylabel('Posterior')"
64+
" ax[i].plot(θ, post1, \"k\", lw=2, label=\"Exact\")\n",
65+
" ax[i].axvline(θ_MAP, color=\"C2\", lw=2, label=\"MAP\")\n",
66+
" ax[i].plot(θ, post2, \"C1\", lw=2, label=\"CLT\")\n",
67+
" ax[i].set_xlabel(\"θ\")\n",
68+
" ax[i].set_ylabel(\"Posterior\")"
6969
]
7070
}
7171
],

BSM/Chapter_03_01_Gibbs_sampling_one_sample_t-test.ipynb

+18-18
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,9 @@
7272
}
7373
],
7474
"source": [
75-
"Y = np.loadtxt('data/galaxies.csv')\n",
75+
"Y = np.loadtxt(\"data/galaxies.csv\")\n",
7676
"n = len(Y)\n",
77-
"plt.hist(Y, bins='auto')"
77+
"plt.hist(Y, bins=\"auto\")"
7878
]
7979
},
8080
{
@@ -94,7 +94,7 @@
9494
}
9595
],
9696
"source": [
97-
"(stats.invgamma(2, scale=1/5).rvs(100000)).mean()"
97+
"(stats.invgamma(2, scale=1 / 5).rvs(100000)).mean()"
9898
]
9999
},
100100
{
@@ -140,13 +140,13 @@
140140
"\n",
141141
"for i in range(1, n_iters):\n",
142142
" # sample mu|s2,Y\n",
143-
" MN = np.sum(Y) / (n+m)\n",
144-
" VR = s2/(n+m)\n",
145-
" mu = stats.norm(MN, VR**0.5).rvs(1)\n",
143+
" MN = np.sum(Y) / (n + m)\n",
144+
" VR = s2 / (n + m)\n",
145+
" mu = stats.norm(MN, VR ** 0.5).rvs(1)\n",
146146
"\n",
147147
" # sample s2|mu,Y\n",
148-
" A = a + n/2\n",
149-
" B = b + np.sum((Y-mu)**2)/2\n",
148+
" A = a + n / 2\n",
149+
" B = b + np.sum((Y - mu) ** 2) / 2\n",
150150
" s2 = stats.invgamma(A, scale=B).rvs(1)\n",
151151
"\n",
152152
" # keep track of the results\n",
@@ -185,9 +185,9 @@
185185
"source": [
186186
"_, ax = plt.subplots(1, 2, constrained_layout=True)\n",
187187
"ax[0].plot(keep_mu)\n",
188-
"ax[0].set_ylabel('mu')\n",
188+
"ax[0].set_ylabel(\"mu\")\n",
189189
"ax[1].plot(keep_s2)\n",
190-
"ax[1].set_ylabel('s2')"
190+
"ax[1].set_ylabel(\"s2\")"
191191
]
192192
},
193193
{
@@ -226,12 +226,12 @@
226226
}
227227
],
228228
"source": [
229-
"plt.plot(keep_s2, keep_mu, '.')\n",
229+
"plt.plot(keep_s2, keep_mu, \".\")\n",
230230
"plt.xlabel(\"Sigma^2\")\n",
231231
"plt.ylabel(\"mu\")\n",
232232
"plt.title(\"Joint posterior\")\n",
233-
"plt.axhline(np.mean(Y), color='k')\n",
234-
"plt.axvline(np.var(Y), color='k')"
233+
"plt.axhline(np.mean(Y), color=\"k\")\n",
234+
"plt.axvline(np.var(Y), color=\"k\")"
235235
]
236236
},
237237
{
@@ -291,7 +291,7 @@
291291
}
292292
],
293293
"source": [
294-
"keep_s = keep_s2**0.5\n",
294+
"keep_s = keep_s2 ** 0.5\n",
295295
"plt.hist(keep_s2)\n",
296296
"plt.xlabel(\"sigma\")\n",
297297
"plt.title(\"Marginal posterior\");"
@@ -321,7 +321,7 @@
321321
}
322322
],
323323
"source": [
324-
"keep_mu.mean() # mu"
324+
"keep_mu.mean() # mu"
325325
]
326326
},
327327
{
@@ -442,11 +442,11 @@
442442
"source": [
443443
"mu_hat = keep_mu.mean()\n",
444444
"sig_hat = keep_s.mean()\n",
445-
"count, *_ = plt.hist(Y, bins='auto')\n",
445+
"count, *_ = plt.hist(Y, bins=\"auto\")\n",
446446
"y = np.linspace(4000, 40000, 100)\n",
447447
"d = stats.norm(mu_hat, sig_hat).pdf(y)\n",
448-
"d = max(count)*d/max(d)\n",
449-
"plt.plot(y, d, lw=2, c='C1')"
448+
"d = max(count) * d / max(d)\n",
449+
"plt.plot(y, d, lw=2, c=\"C1\")"
450450
]
451451
}
452452
],

BSM/Chapter_03_02_Gibbs_sampling_two_sample_t-test.ipynb

+21-16
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
"metadata": {},
2020
"outputs": [],
2121
"source": [
22-
"az.style.use('arviz-white')"
22+
"az.style.use(\"arviz-white\")"
2323
]
2424
},
2525
{
@@ -69,10 +69,10 @@
6969
"muZ_true = 50\n",
7070
"s2_true = 100\n",
7171
"\n",
72-
"Y = stats.norm(muY_true, (s2_true)**0.5).rvs(n)\n",
73-
"Z = stats.norm(muZ_true, (s2_true)**0.5).rvs(n)\n",
72+
"Y = stats.norm(muY_true, (s2_true) ** 0.5).rvs(n)\n",
73+
"Z = stats.norm(muZ_true, (s2_true) ** 0.5).rvs(n)\n",
7474
"\n",
75-
"plt.boxplot((Y, Z), labels=('Y', 'Z'));"
75+
"plt.boxplot((Y, Z), labels=(\"Y\", \"Z\"));"
7676
]
7777
},
7878
{
@@ -122,25 +122,29 @@
122122
" # sample muY|muZ,s2,Y,Z\n",
123123
" A = np.sum(Y) / s2 + mu_0 / s2_0\n",
124124
" B = n / s2 + 1 / s2_0\n",
125-
" muY = stats.norm(A/B, 1/B**0.5).rvs(1)[0]\n",
125+
" muY = stats.norm(A / B, 1 / B ** 0.5).rvs(1)[0]\n",
126126
"\n",
127127
" # sample muZ|muY,s2,Y,Z\n",
128128
" A = np.sum(Z) / s2 + mu_0 / s2_0\n",
129129
" B = m / s2 + 1 / s2_0\n",
130-
" muZ = stats.norm(A/B, 1/B**0.5).rvs(1)[0]\n",
130+
" muZ = stats.norm(A / B, 1 / B ** 0.5).rvs(1)[0]\n",
131131
"\n",
132132
" # sample s2|muY,muZ,Y,Z\n",
133133
" A = n / 2 + m / 2 + a\n",
134-
" B = np.sum((Y-muY)**2)/2 + np.sum((Z-muZ)**2)/2+b\n",
134+
" B = np.sum((Y - muY) ** 2) / 2 + np.sum((Z - muZ) ** 2) / 2 + b\n",
135135
" s2 = stats.invgamma(A, scale=B).rvs(1)[0]\n",
136136
"\n",
137137
" # keep track of the results\n",
138138
" muY_list.append(muY)\n",
139139
" muZ_list.append(muZ)\n",
140140
" s2_list.append(s2)\n",
141141
"\n",
142-
"keepers = {'muY': muY_list, 'muZ': muZ_list, 's2': s2_list,\n",
143-
" 'delta': np.array(muY_list)-np.array(muZ_list)}"
142+
"keepers = {\n",
143+
" \"muY\": muY_list,\n",
144+
" \"muZ\": muZ_list,\n",
145+
" \"s2\": s2_list,\n",
146+
" \"delta\": np.array(muY_list) - np.array(muZ_list),\n",
147+
"}"
144148
]
145149
},
146150
{
@@ -160,10 +164,12 @@
160164
}
161165
],
162166
"source": [
163-
"lines = (('muY', {}, [muY_true]),\n",
164-
" ('muZ', {}, [muZ_true]),\n",
165-
" ('s2', {}, [s2_true]),\n",
166-
" ('delta', {}, [muY_true-muZ_true]))\n",
167+
"lines = (\n",
168+
" (\"muY\", {}, [muY_true]),\n",
169+
" (\"muZ\", {}, [muZ_true]),\n",
170+
" (\"s2\", {}, [s2_true]),\n",
171+
" (\"delta\", {}, [muY_true - muZ_true]),\n",
172+
")\n",
167173
"\n",
168174
"az.plot_trace(keepers, lines=lines);"
169175
]
@@ -205,8 +211,7 @@
205211
}
206212
],
207213
"source": [
208-
"az.plot_posterior(keepers, var_names='delta',\n",
209-
" ref_val=0, credible_interval=0.95);"
214+
"az.plot_posterior(keepers, var_names=\"delta\", ref_val=0, credible_interval=0.95);"
210215
]
211216
},
212217
{
@@ -226,7 +231,7 @@
226231
}
227232
],
228233
"source": [
229-
"az.hpd(keepers['delta'], credible_interval=0.95) # Posterior 95% credible set"
234+
"az.hpd(keepers[\"delta\"], credible_interval=0.95) # Posterior 95% credible set"
230235
]
231236
}
232237
],

BSM/Chapter_03_03_Gibbs_sampling_for_simple_linear_regression.ipynb

+25-25
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
"metadata": {},
2222
"outputs": [],
2323
"source": [
24-
"az.style.use('arviz-white')"
24+
"az.style.use(\"arviz-white\")"
2525
]
2626
},
2727
{
@@ -134,7 +134,7 @@
134134
}
135135
],
136136
"source": [
137-
"dat = pd.read_csv('data/babynames.csv')\n",
137+
"dat = pd.read_csv(\"data/babynames.csv\")\n",
138138
"dat = dat.query('name==\"Sophia\" and sex==\"F\" and year>1950')\n",
139139
"dat.head()"
140140
]
@@ -156,14 +156,14 @@
156156
}
157157
],
158158
"source": [
159-
"yr = dat.year\n",
160-
"p = dat.prop\n",
159+
"yr = dat.year\n",
160+
"p = dat.prop\n",
161161
"\n",
162-
"X = dat.year - 1984\n",
163-
"Y = np.log(p/(1-p))\n",
164-
"n = len(X)\n",
162+
"X = dat.year - 1984\n",
163+
"Y = np.log(p / (1 - p))\n",
164+
"n = len(X)\n",
165165
"\n",
166-
"plt.plot(yr, p, 'b.');\n",
166+
"plt.plot(yr, p, \"b.\")\n",
167167
"plt.xlabel(\"Year\")\n",
168168
"plt.ylabel(\"Proportion Sophia\");"
169169
]
@@ -174,7 +174,7 @@
174174
"metadata": {},
175175
"outputs": [],
176176
"source": [
177-
"results = smf.ols('Y~X', dat).fit()"
177+
"results = smf.ols(\"Y~X\", dat).fit()"
178178
]
179179
},
180180
{
@@ -320,9 +320,9 @@
320320
}
321321
],
322322
"source": [
323-
"plt.plot(yr, Y, '.')\n",
323+
"plt.plot(yr, Y, \".\")\n",
324324
"y_hat = results.params[0] + results.params[1] * X\n",
325-
"plt.plot(yr, y_hat, 'C1')\n",
325+
"plt.plot(yr, y_hat, \"C1\")\n",
326326
"plt.xlabel(\"Year\")\n",
327327
"plt.ylabel(\"Log odds Sophia\");"
328328
]
@@ -345,9 +345,9 @@
345345
],
346346
"source": [
347347
"# Plot fitted values on the proportion scale\n",
348-
"plt.plot(yr, p, '.')\n",
348+
"plt.plot(yr, p, \".\")\n",
349349
"p_hat = np.exp(y_hat) / (1 + np.exp(y_hat))\n",
350-
"plt.plot(yr, p_hat, 'C1')\n",
350+
"plt.plot(yr, p_hat, \"C1\")\n",
351351
"plt.xlabel(\"Year\")\n",
352352
"plt.ylabel(\"Proportion Sophia\");"
353353
]
@@ -392,26 +392,26 @@
392392
"\n",
393393
"for iter in range(2, n_iters):\n",
394394
" # sample alpha\n",
395-
" V = n/s2+mu_0/s2_0\n",
396-
" M = np.sum(Y-X*β)/s2+1/s2_0\n",
397-
" α = stats.norm(M/V, 1/V**0.5).rvs(1)[0]\n",
395+
" V = n / s2 + mu_0 / s2_0\n",
396+
" M = np.sum(Y - X * β) / s2 + 1 / s2_0\n",
397+
" α = stats.norm(M / V, 1 / V ** 0.5).rvs(1)[0]\n",
398398
"\n",
399399
" # sample beta\n",
400-
" V = np.sum(X ** 2)/s2+mu_0/s2_0\n",
401-
" M = np.sum(X*(Y-α))/s2+1/s2_0\n",
402-
" β = stats.norm(M/V, 1/V**0.5).rvs(1)[0]\n",
400+
" V = np.sum(X ** 2) / s2 + mu_0 / s2_0\n",
401+
" M = np.sum(X * (Y - α)) / s2 + 1 / s2_0\n",
402+
" β = stats.norm(M / V, 1 / V ** 0.5).rvs(1)[0]\n",
403403
"\n",
404404
" # sample s2|mu,Y,Z\n",
405-
" A = n/2 + a\n",
406-
" B = np.sum((Y-α-X*β) ** 2)/2 + b\n",
405+
" A = n / 2 + a\n",
406+
" B = np.sum((Y - α - X * β) ** 2) / 2 + b\n",
407407
" s2 = stats.invgamma(A, scale=B).rvs(1)[0]\n",
408408
"\n",
409409
" # keep track of the results\n",
410410
" α_list.append(α)\n",
411411
" β_list.append(β)\n",
412412
" s2_list.append(s2)\n",
413413
"\n",
414-
"keepers = {'α': α_list, 'β': β_list, 's2': s2_list}"
414+
"keepers = {\"α\": α_list, \"β\": β_list, \"s2\": s2_list}"
415415
]
416416
},
417417
{
@@ -551,7 +551,7 @@
551551
}
552552
],
553553
"source": [
554-
"az.plot_posterior(keepers, var_names=['β'], round_to=2);"
554+
"az.plot_posterior(keepers, var_names=[\"β\"], round_to=2);"
555555
]
556556
},
557557
{
@@ -578,8 +578,8 @@
578578
}
579579
],
580580
"source": [
581-
"plt.plot(yr, Y, '.')\n",
582-
"plt.plot(yr, summary['mean']['α'] + summary['mean']['β'] * X, 'C1');"
581+
"plt.plot(yr, Y, \".\")\n",
582+
"plt.plot(yr, summary[\"mean\"][\"α\"] + summary[\"mean\"][\"β\"] * X, \"C1\");"
583583
]
584584
}
585585
],

0 commit comments

Comments
 (0)