How to calculate grand means, conditional group means, and hypothetical group means of posterior predictions from multilevel brms models.

Create, manipulate, understand, analyze, interpret, and plot Bayesian hurdle regression models (and a custom hurdle Gaussian model!) using R, the tidyverse, emmeans, brms, and Stan

Everything you ever wanted to know about beta regression! Use R and brms to correctly model proportion data, and learn all about the beta distribution along the way.

How to use multilevel models with R and brms to work with country-year panel data.

Make your own Ted Lasso AFC Richmond crest cross stitch with a free pattern and an Illustrator template

Use a Makefile to automatically zip up all subdirectories in a given folder while also accounting for dependencies

Make your own Bayesian cross stitch sampler with a free pattern of Bayes Theorem and the accompanying Illustrator template

Use algebra and calculus with R and yacas to find Chidi’s optimal level of pizza and frozen yogurt consumption given his budget and utility function.

Create a macOS Automator service to convert Markdown to rich text from any app in macOS

Use the future R package to run computationally intensive R commands on a cluster of remote computers

Use R Markdown, flexdashboard, and Shiny to create a dashboard that automatically loads data from a Google Sheet

Use ggplot to create economics-style, non-data-based conceptual graphs.

Use R to explore the three rules of do-calculus in plain language and derive the backdoor adjustment formula by hand

List of resources to help teach online as universities rapidly shut down during the COVID-19 pandemic

Use R to explore possible biases that come from differential treatment timing in two-way fixed effects (TWFE) regression models

Use Venn diagrams to visualize the proportion of an outcome explained by a regression model

Use R to do things with derivatives, both with actual functions and with existing empirical data.

Use R to close backdoor confounding by generating and using inverse probability weights for both binary and continuous treatments

Use R to close backdoor confounding in panel data with marginal structural models and inverse probability weights for both binary and continuous treatments

Learn how to run standard t-tests, simulations, and Bayesian difference in means tests with R and Stan

Make your own data science hex logo cross stitch with a free pattern and an Illustrator template

Make knitr and R Markdown convert TikZ graphics to font-embedded SVG files when knitting to HTML

Use a posterior distribution of inverse probability weights in a Bayesian outcome model to conduct (nearly) fully Bayesian causal inference with R, brms, and Stan

Tips, tricks, and rationale for converting from a single big BibTeX file to a Zotero database

Use the infer package in R to test any statistical hypothesis through simulation.

For mathematical and philosophical reasons, propensity scores and inverse probability weights don’t work in Bayesian inference. But never fear! There’s still a way to do it!

Use the {scales} R package to automatically adjust and format x- and y-axis scales to use log base 10 and natural log values

Use the {marginaleffects} package to calculate tricky and nuanced marginal and conditional effects in generalized linear mixed models

Use R to correctly close backdoor confounding in panel data with marginal structural models and inverse probability weights with both GEE and multilevel models

Define what marginal effects even are, and then explore the subtle differences between average marginal effects, marginal effects at the mean, and marginal effects at representative values with the marginaleffects and emmeans R packages

Use tidyverse functions to correctly meld and pool multiply imputed model output.

By default, pandoc doesn’t include full bibliographic references inline in documents, but with one tweak to a CSL file, you can create syllabus-like lists of citations with full references

Explore different manual and automatic ways to rotate, dodge, recode, break up, and otherwise deal with long axis labels with ggplot2

Extend broom’s tidy() and glance() to work with lists of multiply imputed regression models

Explore 2.5 years of applying for academic jobs with fancy data visualization

A guide to different types of Bayesian posterior distributions and the nuances of posterior_predict, posterior_epred, and posterior_linpred

Use regression, inverse probability weighting, and matching to close confounding backdoors and find causation in observational data

The Cairo graphics library makes it easy to embed custom fonts in PDFs and create high resolution PNGs.