{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Bayesian Statistics Made Simple\n",
"\n",
"Code and exercises from my workshop on Bayesian statistics in Python.\n",
"\n",
"Copyright 2019 Allen Downey\n",
"\n",
"MIT License: https://opensource.org/licenses/MIT"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"%matplotlib inline\n",
"\n",
"import numpy as np\n",
"import pandas as pd\n",
"\n",
"import seaborn as sns\n",
"sns.set_style('white')\n",
"sns.set_context('talk')\n",
"\n",
"import matplotlib.pyplot as plt\n",
"\n",
"from distribution import Pmf"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Suppose you have two urns full of marbles:\n",
"\n",
"* Urn 1 has 20 blue and 10 red marbles\n",
"\n",
"* Urn 2 has 10 blue and 20 red marbles.\n",
"\n",
"You choose an urn at random and draw two marbles. They are both blue. What is the probability that you chose Urn 1?"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
"
],
"text/plain": [
"Urn 1 0.808511\n",
"Urn 2 0.191489\n",
"dtype: float64"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pmf = Pmf.from_seq(['Urn 1', 'Urn 2'])\n",
"pmf['Urn 1'] *= 20/30 * 19/29\n",
"pmf['Urn 2'] *= 10/30 * 9/29\n",
"pmf.normalize()\n",
"pmf"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Suppose I have a box of dice with one each of 4-sided, 6-sided, 8-sided, 10-sided, 12-sided, and 20-sided dice.\n",
"\n",
"I choose a die at random, roll it, and get a 9. What is the probability that I chose the 12-sided die?"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
probs
\n",
"
\n",
" \n",
" \n",
"
\n",
"
10
\n",
"
0.428571
\n",
"
\n",
"
\n",
"
12
\n",
"
0.357143
\n",
"
\n",
"
\n",
"
20
\n",
"
0.214286
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
"10 0.428571\n",
"12 0.357143\n",
"20 0.214286\n",
"dtype: float64"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dice = Pmf.from_seq([10,12,20])\n",
"dice[10] /= 10\n",
"dice[12] /= 12\n",
"dice[20] /= 20\n",
"dice.normalize()\n",
"dice"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Write a few lines of code that use the Pmf class to compute the answer to the following question.\n",
"\n",
"Suppose I roll two six-sided dice and tell you (honestly) that the sum is not 7.\n",
"\n",
"What is the probability that the sum is 2 or 12?"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
probs
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2
\n",
"
0.033333
\n",
"
\n",
"
\n",
"
3
\n",
"
0.066667
\n",
"
\n",
"
\n",
"
4
\n",
"
0.100000
\n",
"
\n",
"
\n",
"
5
\n",
"
0.133333
\n",
"
\n",
"
\n",
"
6
\n",
"
0.166667
\n",
"
\n",
"
\n",
"
7
\n",
"
0.000000
\n",
"
\n",
"
\n",
"
8
\n",
"
0.166667
\n",
"
\n",
"
\n",
"
9
\n",
"
0.133333
\n",
"
\n",
"
\n",
"
10
\n",
"
0.100000
\n",
"
\n",
"
\n",
"
11
\n",
"
0.066667
\n",
"
\n",
"
\n",
"
12
\n",
"
0.033333
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
"2 0.033333\n",
"3 0.066667\n",
"4 0.100000\n",
"5 0.133333\n",
"6 0.166667\n",
"7 0.000000\n",
"8 0.166667\n",
"9 0.133333\n",
"10 0.100000\n",
"11 0.066667\n",
"12 0.033333\n",
"dtype: float64"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"d6 = Pmf.from_seq([1,2,3,4,5,6])\n",
"twice = d6 + d6\n",
"twice[7] = 0\n",
"twice.normalize()\n",
"twice"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0.06666666666666667"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"twice[2] + twice[12]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Suppose I flip the same coin twice and tell you only whether the outcomes are the same or different.\n",
"\n",
"Write a likelihood function that takes data and hypo and returns the probability of the data under the hypothesis, where:\n",
"\n",
"1. data is a string, either 'S' for the same outcome or 'D' for different, and\n",
"\n",
"2. hypo is the hypothetical probability of heads, from 0-1"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"def likelihood_flip(data, hypo):\n",
" \"\"\" Likelihood function for the Euro problem.\n",
" \n",
" data: string, either 'S' or 'D'\n",
" hypo: prob of heads (0-1)\n",
" \n",
" returns: float probability\n",
" \"\"\"\n",
" x = hypo\n",
" if data == 'S':\n",
" return x*x + (1-x)*(1-x)\n",
" else:\n",
" return 2 * x * (1-x)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"def decorate_flip(title):\n",
" \"\"\"Labels the axes.\n",
" \n",
" title: string\n",
" \"\"\"\n",
" plt.xlabel('Probability of heads')\n",
" plt.ylabel('PMF')\n",
" plt.title(title)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"