Bayesian Modeling in R: A Hands-On Course
Classical estimates answer with one number and a standard error. Bayesian modeling answers with a distribution: every value the unknown could take gets a weight, and one fixed rule, prior times likelihood, reshuffles those weights whenever new data arrives. This eight-lesson interactive course builds that machinery in R from the ground up: priors and posteriors, conjugate updates, MCMC written from scratch, convergence diagnostics, hierarchical models, posterior predictive checks, LOO and WAIC, and a complete Bayesian regression. You run live R in the browser at every step.
Here is the kind of question the course lives on. A redesigned checkout page has converted 8 of its first 40 visitors, 20 percent, while the old page has converted 10 percent for years. Double the rate on 40 visitors could easily be a fluke. The classical toolkit gives you a point estimate and a p-value; the Bayesian toolkit blends what you knew with what you just saw and hands back a full distribution, so you can say "there is an 89 percent chance the new page beats the old one" and mean it.
The thread through every lesson is building the machinery yourself before trusting software with it. You compute your first posterior with a grid in base R, write a working Metropolis sampler from scratch, and derive LOO and WAIC from a log-likelihood matrix. By the time professional tools like Stan appear, their output reads as familiar, because you have already built every piece it reports.
Each lesson is a guided, interactive experience: you run live R in the browser, answer checkpoints, and write code as you go.
The eight lessons
Lesson 1: The Bayesian Update
A new checkout page converts 8 of 40 visitors while history says 10 percent. Meet the three pieces of every Bayesian update, the prior, the likelihood and the posterior, compute the update in base R with grid approximation, and report the result properly: a point estimate, a 95 percent credible interval, and a direct probability statement.
Start Lesson 1: The Bayesian Update
Lesson 2: Conjugacy and Choosing Priors
Some prior-likelihood pairs update in closed form, no grid needed. Learn the Beta-Binomial and Normal-Normal conjugate pairs and their one-line posterior updates in base R, when a weak prior is the right call and when an informative one earns its keep, and how to check whether your conclusion survives a change of prior.
Start Lesson 2: Conjugacy and Choosing Priors
Lesson 3: MCMC and the Metropolis Sampler
Most real posteriors have no closed form, so we draw samples from them instead. Build the Metropolis algorithm from scratch in base R, watch the chain propose, accept and reject its way across the posterior, and learn what acceptance rates and mixing say about whether the sample can be trusted.
Start Lesson 3: MCMC and the Metropolis Sampler
Lesson 4: HMC, NUTS and MCMC Diagnostics
Modern samplers move smarter than Metropolis: Hamiltonian Monte Carlo treats the posterior as a landscape and glides across it, and NUTS decides how far to glide. Get the idea behind both, then learn the diagnostics that guard every Bayesian fit: trace plots, R-hat, and effective sample size.
Start Lesson 4: HMC, NUTS and MCMC Diagnostics
Lesson 5: Hierarchical Models and Partial Pooling
When data comes in groups, stores, patients, schools, fitting each group alone overfits the small ones and pooling everything ignores real differences. Hierarchical models split the difference: partial pooling shrinks each group's estimate toward the overall mean by exactly as much as its sample size warrants.
Start Lesson 5: Hierarchical Models and Partial Pooling
Lesson 6: Posterior Predictive Checks
A model you have fit should be able to fake data that looks like yours. Simulate replicated datasets from the posterior, overlay them on the observed data, and use test statistics to pinpoint where the model fails. This is the posterior predictive check, the workhorse of the Bayesian workflow.
Start Lesson 6: Posterior Predictive Checks
Lesson 7: Bayesian Model Comparison: LOO and WAIC
Two models fit the same data; which one predicts better? Learn expected log predictive density (ELPD), the quantity both leave-one-out cross-validation and WAIC estimate, and compute both from a log-likelihood matrix in base R so the packaged versions hold no surprises.
Start Lesson 7: Bayesian Model Comparison: LOO and WAIC
Lesson 8: Bayesian Regression and GLMs, End to End
The capstone: a complete Bayesian regression workflow on one dataset. Choose and defend priors, fit the model, check convergence, run posterior predictive checks, compare candidate models, and report credible intervals a stakeholder can act on.
Start Lesson 8: Bayesian Regression and GLMs, End to End
Section quiz: check what stuck
Ten graded questions across the whole section, the prior-times-likelihood update, conjugacy and credible intervals, MCMC and sampler diagnostics, hierarchical partial pooling and the funnel, posterior predictive checks, LOO and WAIC, and reading a GLM slope through a log link, plus two live R snippets you can run. A quick way to find the ideas worth a second pass before you move on.
Take the Bayesian Modeling quiz
Who this is for
You can fit and read a simple regression, you know probability as a long-run fraction, and you can work with vectors and plots in R. That is the whole prerequisite. Every Bayesian idea, from the prior to R-hat to partial pooling, is built from scratch the moment it arrives. The course follows naturally from the regression material on the Data Scientist path, but no prior Bayesian experience is assumed.
What you will be able to do
- Explain the Bayesian update, prior times likelihood gives the posterior, and compute it in base R with grid approximation
- Use conjugate pairs for closed-form updates, choose between weak and informative priors, and run a prior-sensitivity check
- Write a Metropolis sampler from scratch and judge any chain with trace plots, R-hat and effective sample size
- Fit hierarchical models and explain partial pooling and shrinkage in plain language
- Check a fitted model with posterior predictive checks and compare models with LOO and WAIC
- Report a posterior properly: a point estimate, a credible interval, and direct probability statements
Ready? Begin with Lesson 1.