Toolkit

Which Test Do I Use?

Answer two or three questions about your data and goal; the chooser names the procedure, its conditions, the chapter that teaches it and a Python one-liner.

All procedures at a glance

GoalDataProcedureChapter
Estimate a meanσ unknown, normal or large none-mean t-interval06
Estimate a proportion≥ 5 successes and failuresone-proportion z-interval (plus-four if small)06
Estimate an SDnormal populationχ²-interval (else bootstrap)06, 12
Estimate anything elseanybootstrap interval12
Test one meannormal or large n / symmetrict-test (z if σ known) / Wilcoxon signed-rank07
Test one proportionn p₀ and n(1 − p₀) ≥ 5one-proportion z-test (or exact binomial)07
Test one SDnormal populationχ²-test06
Compare two means, independentnormal or large / skewed same shapeWelch t (pooled if equal SDs) / Mann–Whitney08
Compare two means, paireddifferences normal / symmetricpaired t / paired Wilcoxon08
Compare two SDsboth normal / otherwiseF-test / Levene08
Compare two proportions≥ 5 successes and failures eachtwo-proportions z08
Compare 3+ meansnormal, rule of 2 / otherwiseone-way ANOVA + Tukey / Kruskal–Wallis11
One categorical distributionexpected counts OKχ² goodness of fit09
Two categorical variablesone population / severalχ² independence / χ² homogeneity09
Two quantitative variableslinear, residuals OKregression & correlation inference10
Many predictors / binary outcome—multiple / logistic regression12
Many tests at once—Bonferroni / Benjamini–Hochberg12

Before any procedure

Plot the data. Check how it was collected (random? independent? time series?). Look for outliers. No decision tree can replace those three minutes.