Change the future

Wednesday 1:20 p.m.–4:40 p.m.

Bayesian statistics made simple

Allen Downey

Audience level:
Big Data


An introduction to Bayesian statistics using Python. Bayesian statistics are usually presented mathematically, but many of the ideas are easier to understand computationally. People who know some Python have a head start.

We will use material from Think Stats: Probability and Statistics for Programmers (O’Reilly Media), and Think Bayes, a work in progress at


Bayesian statistical methods are becoming more common and more important, but there are not many resources to help beginners get started.  People who know Python can use their programming skills to get a head start.

I will present simple programs that demonstrate the concepts of Bayesian statistics, and apply them to a range of example problems.  Participants will work hands-on with example code and practice on example problems.

Students should have at least basic Python and basic statistics.  If you learned about Bayes’s Theorem and probability distributions at some time, that’s enough, even if you don’t remember it!

Students should bring a laptop with Python 2.x and matplotlib.  You can work in any environment; you just need to be able to download a Python program and run it.

Outline: 1. Bayes’s theorem. 2. Representing probability distributions. 3. Bayesian estimation. 4. Biased coins and student test scores. 5. Censored data. 6. The locomotive / German tank problem. 7. Hierarchical models and the hidden species problem.

Update: See updated tutorial preparation instructions at Bayesian Statistics Made Simple