A practice trainer: each round shows a randomized joint-probability table with row and column totals in the margins, then asks one question — fill a missing cell, compute a missing marginal total, compute a conditional probability for one row, or judge independence by comparing cells to margins. Type a fraction or click an answer, get an explanation either way, and generate a fresh table to try again.

The table trainer

A fresh random table each round. Every question is one move: collapse a line into its margin, slice a row and rescale, or compare cells to margins.