Critical Value Calculator
Find the critical value for z, t, chi-square or F, see the rejection region drawn to scale, and compare your own test statistic against it. Paste raw data and the calculator works out the statistic for you, then tells you whether to reject.
⚡ 0. Quick Answer
A critical value is the cut-off your test statistic has to beat. You choose a significance level, look up the value that marks the edge of the rejection region, and if your statistic is more extreme than it, you reject the null hypothesis.
Z critical value
When the population standard deviation is known, or n is large. No degrees of freedom.
1.960 at α = 0.05 two-tailed
1.645 one-tailed
2.576 at α = 0.01
T critical value
When the standard deviation was estimated from your sample. Needs degrees of freedom.
2.228 at α = 0.05, df = 10
2.042 at df = 30
12.706 at df = 1
Chi-square critical value
Goodness of fit, independence, and tests about a variance. Right-tailed by default.
3.841 at α = 0.05, df = 1
11.070 at df = 5
18.307 at df = 10
F critical value
ANOVA and comparing two variances. Needs two degrees of freedom, numerator and denominator.
4.965 at α = 0.05, F(1,10)
3.098 at F(3,20)
2.534 at F(5,30)
|statistic| > critical value, reject the null hypothesis. Equivalently, if p < α, reject. The two rules always agree, because they are the same comparison read from opposite ends of the distribution.Key takeaways
- Pick the tail before you look at the data. A two-tailed test at α = 0.05 puts 2.5% in each tail and needs z = 1.960. A one-tailed test puts all 5% in one tail and needs only 1.645. Switching afterwards is not a judgement call, it is a mistake.
- Degrees of freedom change everything except z. The t critical value falls from 12.706 at df = 1 to 1.960 as df grows. Chi-square and F move too. Only z is fixed.
- Chi-square and F are normally right-tailed only. Both statistics are always positive and the interesting evidence sits in the upper tail, so there is usually one critical value rather than two.
- A bigger critical value is a harder test. Lowering alpha from 0.05 to 0.01 raises the bar from 1.960 to 2.576 and makes false positives rarer, at the cost of missing real effects more often.
- Critical values and p-values are interchangeable. Modern software reports the p-value, so tables are mostly a teaching device now, but the comparison is identical and this calculator gives you both.
- The critical value tells you nothing about effect size. Clearing the bar means the effect is detectable, not that it matters. Report a confidence interval alongside.
📚 1. What Is a Critical Value?
1.1 The idea
Every hypothesis test produces a single number, the test statistic, that measures how far your data sit from what the null hypothesis predicts. The question is how far is far enough to be worth taking seriously.
The critical value answers that. You decide in advance how often you are willing to be wrong when the null is actually true, usually 5%, and the critical value is the point beyond which only 5% of statistics would fall if the null were true. Anything past it is unusual enough that you stop believing the null.
1.2 The rejection region
The critical value marks the boundary of the rejection region, the shaded area in the tails where you would reject. Its size is exactly alpha, your significance level. A two-tailed test at 5% has two rejection regions of 2.5% each; a one-tailed test has a single region of 5%.
This is why the one-tailed critical value is smaller. All of your alpha is concentrated in one tail rather than split between two, so the boundary sits closer to the centre and the test is easier to pass in that direction. It is also why choosing the tail after seeing which way the data went is indefensible: it silently doubles your false positive rate.
1.3 Which distribution do you need?
| Distribution | Use it for | Degrees of freedom | Tails |
|---|---|---|---|
| Z (normal) | Population SD known, proportions, large samples, confidence intervals for percentages | None | One or two |
| T (Student) | Means when the SD was estimated from the sample. Almost every real t-test | n − 1, or n₁ + n₂ − 2 | One or two |
| Chi-square | Goodness of fit, tests of independence, tests about a single variance | Depends on the test, often (r−1)(c−1) | Right, usually |
| F | ANOVA, comparing two variances, overall regression significance | Two: numerator and denominator | Right |
1.4 Why t is not z
If you knew the population standard deviation you would use z. You almost never do, so you estimate it from the same sample you are testing, and that estimate carries its own uncertainty. The t-distribution has heavier tails to account for it, which pushes the critical value further out.
The gap is dramatic at small samples and negligible at large ones. At df = 1 the t critical value is 12.706 against z at 1.960. At df = 10 it is 2.228. At df = 30 it is 2.042. By df = 1000 it is 1.962, essentially the normal value. There is never a penalty for using t, so use it whenever the standard deviation was estimated.
1.5 Why chi-square and F only have one tail
Both statistics are built from squared quantities, so they cannot be negative and their distributions are skewed rather than symmetric. More importantly, the evidence against the null always pushes them upward: a poor fit produces a large chi-square, and a real group difference produces a large F. A small value means the data agree with the null unusually well, which is not evidence against it.
So both are conventionally right-tailed, with one critical value rather than two. The exception is a test about a variance, where you may genuinely care about both directions and need the lower critical value too. This calculator reports both bounds for chi-square when you ask for a two-tailed test.
1.6 Critical values versus p-values
They are two ways of making the same comparison. The critical value approach asks "is my statistic beyond the cut-off?". The p-value approach asks "how much area lies beyond my statistic, and is it less than alpha?". The answers always agree.
Before computers, tables of critical values were the only practical option, because computing an exact tail area by hand was infeasible. Software changed that, and journals now expect exact p-values. Critical values survive because they make the logic visible: you can see the boundary, see where your statistic landed, and see the rejection region shaded. That is why this calculator draws it rather than just printing a number.
🧮 2. Set Up Your Calculation
Paste your numbers and the calculator works out the test statistic, finds the matching critical value, and tells you whether to reject the null hypothesis.
📁 Or upload a CSV / Excel file
The standard normal critical value. No degrees of freedom are needed, which is what makes it a fixed number you can memorise.
Student's t critical value. Use this whenever the standard deviation was estimated from your sample, which is almost always.
Chi-square critical value, for goodness of fit, independence and variance tests. Normally right-tailed.
F critical value, for ANOVA and comparing two variances. Needs two degrees of freedom and the order matters.
You already have a test statistic and want to know whether it clears the bar. Pick the distribution and enter the statistic.
📊 3. Results
🧠 4. Interpretation of Results, In Detail
4.1 What the number actually represents
The critical value is the point on the distribution beyond which only alpha of the probability lies, assuming the null hypothesis is true. At alpha = 0.05 two-tailed, z = 1.960 means that if the null were true, only 5% of samples would produce a statistic further from zero than 1.960.
So when your statistic clears it, you are saying: either something unusual happened, or the null hypothesis is wrong. You choose to believe the second. The 5% is the rate at which you have agreed to be wrong when the null is actually true.
4.2 The rejection region, and why its size equals alpha
The shaded area in chart 1 is the rejection region. Its total area is exactly alpha by construction, because that is how the critical value was defined: find the point that leaves alpha in the tail.
This is worth sitting with, because it explains everything else on the page. A smaller alpha means a smaller rejection region, which means the boundary moves further out, which means a larger critical value and a harder test. A two-tailed test splits the same alpha into two regions of alpha over two, so each boundary sits closer in than a one-tailed boundary would, but you now have to clear it on whichever side you land.
4.3 Why the one-tailed value is smaller, and why that matters
At alpha = 0.05, the two-tailed z critical value is 1.960 and the one-tailed is 1.645. All 5% is concentrated in a single tail rather than split into two lots of 2.5%, so the boundary sits closer to the centre.
That makes a one-tailed test more powerful in the direction you chose, and completely blind in the other. It is legitimate only if you fixed the direction before collecting data and would treat a result in the opposite direction exactly as you would treat no result at all. If a surprising reversal would interest you, you need two tails.
Choosing after seeing the data is not a grey area. It converts a nominal 5% test into a 10% test while reporting it as 5%, which is why journals increasingly ask you to pre-register the direction.
4.4 Degrees of freedom, and why t starts so high
The t critical value at df = 1 is 12.706. At df = 10 it is 2.228, at df = 30 it is 2.042, and by df = 1000 it is 1.962, essentially the normal 1.960.
The reason is that the t-distribution accounts for uncertainty in your estimate of the standard deviation. With one degree of freedom that estimate is almost worthless, so the distribution has extremely heavy tails and the bar is set punishingly high. As the sample grows, the estimate stabilises, the tails thin, and t converges on z.
This is honest rather than harsh. A tiny sample genuinely cannot establish much, and the critical value is simply refusing to pretend otherwise.
4.5 Chi-square: why it is right-tailed and skewed
A chi-square statistic is a sum of squared standardised deviations, so it cannot be negative. Its distribution is right-skewed, with a mean equal to its degrees of freedom, and it becomes more symmetric as df grows.
The evidence against the null always pushes it upward: a poor fit between observed and expected counts produces a large chi-square. A small chi-square means your data fit the null better than expected, which is not evidence against it. That is why goodness-of-fit and independence tests use only the right tail.
The exception is a test about a variance, where a variance that is unusually small can be as interesting as one that is unusually large. There you need both bounds, and this calculator reports them when you select a two-tailed test.
4.6 F: two degrees of freedom, and the order matters
An F statistic is a ratio of two variances, so it needs a degrees of freedom for each. Critically, F(3, 20) is not the same as F(20, 3): the first has a 5% critical value of 3.098 and the second of 8.660. Swapping them is a silent error that will not throw a warning anywhere.
In ANOVA the numerator df is groups minus one and the denominator is total observations minus the number of groups. In a variance ratio test both are n minus one for their respective samples, and the convention is to put the larger variance on top, which forces the statistic above 1 and makes the test right-tailed.
4.7 Critical value or p-value: they are the same comparison
Comparing your statistic against a critical value and comparing your p-value against alpha are mathematically identical operations. If the statistic is beyond the boundary then the tail area beyond it is smaller than alpha, and vice versa. They cannot disagree.
Tables of critical values exist because computing an exact tail area by hand was infeasible before computers. Software removed that constraint, journals now expect exact p-values, and the tables have become mostly a teaching device. They survive for a good reason though: they make the logic visible. You can see the boundary, see the shaded region, and see where your statistic landed, which a bare "p = 0.032" does not convey.
4.8 What clearing the bar does and does not tell you
Rejecting the null means the effect is detectable at your sample size. It does not mean the effect is large, important, or real in any deeper sense. With a large enough sample any non-zero difference clears any critical value, which is why a significant result from n = 50,000 may describe a difference nobody would act on.
Equally, failing to clear it is not evidence that the null is true. It means this sample could not distinguish the null from the alternative, which is as much a statement about your power as about reality. Report a confidence interval, which shows the range of effects still compatible with your data, and an effect size, which is independent of sample size.
4.9 Reading the four charts
Chart 1 draws the distribution with the rejection region shaded and both the critical value and your statistic marked, which is the clearest possible picture of the decision. Chart 2 shows how the critical value rises as alpha falls, quantifying the cost of a stricter test. Chart 3 plots the critical value against degrees of freedom, with the normal limit dashed behind it for t, so the convergence is visible. Chart 4 compares one-tailed and two-tailed values at several alphas.
4.10 The most common mistakes
Comparing a statistic against the wrong distribution's critical value. Looking up 1.96 for a t-test with n = 8 will make you reject things you should not. Nothing in your output will warn you.
Halving alpha instead of the tail area, or vice versa. For a two-tailed test at alpha = 0.05 you look up the 0.975 quantile, not the 0.95. Getting this backwards gives 1.645 where 1.960 belongs.
Using a two-tailed critical value with a one-tailed alternative hypothesis, which is conservative but throws away power you were entitled to, if you genuinely committed to the direction in advance.
Reversing the F degrees of freedom. Always numerator first.
Treating the boundary as a cliff. A statistic at 1.95 and one at 1.97 are not meaningfully different pieces of evidence, but the decision rule treats them as opposites. This is the strongest argument for reporting the exact p-value and an interval rather than a bare verdict.
✍ 5. How to Write Your Results in Research
▶ Run the analysis above to auto-fill all five examples with your results.
📌 Key conventions for this style
- State alpha, the tail and the degrees of freedom. A critical value without them is unreadable.
- Modern journals want the exact p-value too, not just the verdict.
- Italicise the test statistic symbol and put df in parentheses immediately after it.
- Say the direction was fixed in advance if you used one tail.
📌 Key conventions for this style
- For tables, figure captions and parentheses.
- Define the format once in a footnote and keep it consistent.
- Keep df even when compressing. It is not optional information.
📌 Key conventions for this style
- Never use the word "significant" with a general audience; they hear "important".
- Do not present a non-rejection as proof that nothing is happening.
- Describe the threshold idea in words rather than giving the number.
📌 Key conventions for this style
- Belongs in the methods section, not the results.
- Confirm that alpha and the tail were fixed before the data were seen.
- Say which distribution you used and why, particularly t versus z.
- For F tests, report numerator and denominator df in that order.
📌 Key conventions for this style
- Reviewers increasingly expect an explicit statement separating significance from importance.
- Pair every test with a confidence interval and an effect size.
- Avoid describing a result as "approaching significance". It either cleared the threshold or it did not.
∑ 6. Formulas Used
📝 7. How to Use This Calculator
- Paste your numbers into the data column. From my data opens first, with one column ready to go. Choose the test you are running, enter your values comma-separated, and the calculator works out the test statistic, finds the matching critical value and tells you whether to reject.
- Or switch tab if you already know your statistic. Z, T, Chi-square and F give you the critical value from alpha and degrees of freedom alone. Compare my statistic takes a value you already have and returns the decision and the p-value.
- Pick the right distribution. Use z only when the population standard deviation is genuinely known. Use t whenever you estimated it from your sample, which is almost always. Use chi-square for counts and categorical data, and F for ANOVA or comparing two variances.
- Enter degrees of freedom carefully. This is where most errors happen. It is n − 1 for a one-sample or paired t-test, n₁ + n₂ − 2 for a pooled two-sample test, categories − 1 for goodness of fit, and (rows − 1) × (columns − 1) for a test of independence.
- For F, get the order right. Numerator first, denominator second. F(3, 20) and F(20, 3) are different distributions with critical values of 3.098 and 8.660, and nothing will warn you if you swap them.
- Choose alpha and the tail before you look at your data. This is not a formality. Switching to one tail after seeing which direction the result went converts a 5% test into a 10% test while you report it as 5%.
- Leave chi-square and F right-tailed. The tab switches automatically because that is the convention: only a large statistic is evidence against the null. Two tails make sense only for a test about a variance, and both bounds are reported if you choose it.
- Add your test statistic for a decision. Every distribution tab has an optional field for it. Fill it in and you get the verdict, the exact p-value, and your statistic marked on the chart alongside the rejection region.
- Press Find Critical Value. Nothing is computed until you do, and changing any input clears the results so you never read stale numbers.
- Read the rejection region, then the caveat. The two pills show exactly when to reject and when not to. But clearing the bar tells you the effect is detectable, not that it matters, so pair every test with a confidence interval and an effect size.
📊 8. How to Find Critical Values in Excel
Excel has a function for every distribution, but they are frustratingly inconsistent about what they expect: some take alpha, some take the cumulative probability, some are right-tailed and some are left-tailed. Below is the whole workflow in ten steps, each with a picture of what your sheet should look like.
NORM.S.INV wants the cumulative probability, so you pass 1-alpha/2. T.INV.2T wants alpha itself, so you pass 0.05 directly. Passing 0.05 to NORM.S.INV gives you −1.645, and passing 0.025 to T.INV.2T gives you the 2.5% two-tailed value rather than the 5% one. Both mistakes produce plausible-looking numbers.Step 1. Put alpha and the tail count in their own cells so every formula below can point at them. This is what makes the sheet reusable.
Step 2. NORM.S.INV(1-alpha/2) returns 1.959964 for a two-tailed test. Dividing alpha by the tail count makes the same formula work for one tail as well.
Step 3. T.INV.2T takes alpha directly, NOT alpha/2, and returns the two-tailed value 2.228139 at df = 10. This inconsistency between the z and t functions catches almost everyone.
Step 4. T.INV is the one-tailed version and takes the CUMULATIVE probability, so you pass 1-alpha. It returns 1.812461. T.INV and T.INV.2T are not the same function with different names.
Step 5. Passing alpha rather than 1-alpha gives the left-tailed value, -1.812461. Same function, mirrored result.
Step 6. CHISQ.INV.RT is the right-tail version and is what you want for goodness of fit and independence tests. At alpha 0.05 with df 5 it gives 11.070498.
Step 7. For a two-sided variance test you need both bounds. CHISQ.INV takes the LEFT tail, so alpha/2 gives the lower bound and 1-alpha/2 the upper.
Step 8. F.INV.RT gives the right-tailed F critical value. Numerator df first, denominator second, and the order is not interchangeable.
Step 9. Swapping the two degrees of freedom gives 8.660190 instead of 3.098391. Nothing will warn you if you do this by accident, which is why it is worth checking twice.
Step 10. The decision in one formula. Note that =IF(B5<0.05,...) on the p-value gives the identical answer, because the two rules are the same comparison.
The complete function reference
| What you want | Excel formula | What it takes | Result |
|---|---|---|---|
| Z, two-tailed | =NORM.S.INV(1-0.05/2) | cumulative probability | 1.959964 |
| Z, one-tailed (right) | =NORM.S.INV(1-0.05) | cumulative probability | 1.644854 |
| Z, one-tailed (left) | =NORM.S.INV(0.05) | cumulative probability | −1.644854 |
| T, two-tailed | =T.INV.2T(0.05,10) | alpha, then df | 2.228139 |
| T, one-tailed (right) | =T.INV(1-0.05,10) | cumulative probability | 1.812461 |
| T, one-tailed (left) | =T.INV(0.05,10) | cumulative probability | −1.812461 |
| Chi-square, right-tailed | =CHISQ.INV.RT(0.05,5) | alpha, then df | 11.070498 |
| Chi-square, left-tailed | =CHISQ.INV(0.05,5) | cumulative probability | 1.145476 |
| Chi-square, two-sided lower | =CHISQ.INV(0.05/2,5) | cumulative probability | 0.831212 |
| Chi-square, two-sided upper | =CHISQ.INV.RT(0.05/2,5) | alpha/2 | 12.832502 |
| F, right-tailed | =F.INV.RT(0.05,3,20) | alpha, df₁, df₂ | 3.098391 |
| F, left-tailed | =F.INV(0.05,3,20) | cumulative probability | 0.115471 |
| p from z | =2*(1-NORM.S.DIST(ABS(z),TRUE)) | the statistic | two-tailed p |
| p from t | =T.DIST.2T(ABS(t),df) | positive t, df | two-tailed p |
| p from chi-square | =CHISQ.DIST.RT(x,df) | the statistic, df | right-tailed p |
| p from F | =F.DIST.RT(x,df1,df2) | the statistic, both df | right-tailed p |
| The decision | =IF(ABS(stat)>crit,"Reject","Do not reject") | both values | the verdict |
Which functions take alpha and which take the cumulative probability
| Takes alpha directly | Takes the cumulative probability |
|---|---|
T.INV.2T | NORM.S.INV |
CHISQ.INV.RT | T.INV |
F.INV.RT | CHISQ.INV |
CONFIDENCE.T | F.INV |
The rule of thumb: anything ending in .RT or .2T takes alpha. Everything else takes the cumulative probability. It is not a satisfying rule, but it is a reliable one.
Six mistakes that catch people out
- Passing alpha to NORM.S.INV.
=NORM.S.INV(0.05)returns −1.645, not 1.96. You need1-alpha/2for a two-tailed value. - Passing alpha/2 to T.INV.2T. That function already halves it internally.
=T.INV.2T(0.025,10)gives you the 2.5% two-tailed value of 2.634, not the 5% value of 2.228. - Using CHISQ.INV when you meant CHISQ.INV.RT. At alpha 0.05 with df 5 they give 1.145 and 11.070 respectively. One is nearly ten times the other.
- Swapping the F degrees of freedom. F(3,20) is 3.098 and F(20,3) is 8.660.
- Comparing a t statistic against a z critical value. Nothing errors. You just get the wrong answer, and at small n you get it badly.
- Hard-coding 1.96 everywhere. It is only correct for z at alpha 0.05 two-tailed. Point at a cell holding alpha instead, and the whole sheet updates when you change it.
NORMSINV, TINV, CHIINV and FINV names. Be careful with legacy TINV, which is the two-tailed version and takes alpha, unlike modern T.INV.📈 9. How to Find Critical Values in R
R is the cleanest of the three. Every distribution follows the same naming pattern, so once you know one you know them all: q for the quantile (critical value), p for the cumulative probability, d for the density and r for random draws.
qnorm, qt, qchisq, qf. All four take the cumulative probability, not alpha, so a two-tailed critical value is always q___(1 - alpha/2, ...). Unlike Excel there are no exceptions to remember, and lower.tail = FALSE flips any of them to the right tail.# Critical Value Calculator in R (base R, no packages)
alpha <- 0.05
# ---- 1. Z critical values ---------------------------------------------
z_two <- qnorm(1 - alpha/2) # 1.959964
z_one <- qnorm(1 - alpha) # 1.644854
# identical, using the right tail directly:
z_one_alt <- qnorm(alpha, lower.tail = FALSE)
# ---- 2. T critical values ---------------------------------------------
df <- 10
t_two <- qt(1 - alpha/2, df) # 2.228139
t_one <- qt(1 - alpha, df) # 1.812461
# ---- 3. Chi-square (right-tailed by convention) -----------------------
chi_df <- 5
chi_crit <- qchisq(1 - alpha, chi_df) # 11.070498
# both bounds, for a two-sided test about a variance:
chi_lo <- qchisq(alpha/2, chi_df)
chi_hi <- qchisq(1 - alpha/2, chi_df)
# ---- 4. F critical value (ORDER MATTERS) ------------------------------
d1 <- 3; d2 <- 20
f_crit <- qf(1 - alpha, d1, d2) # 3.098391
f_swap <- qf(1 - alpha, d2, d1) # 8.660190, completely different
# ---- 5. Compute a statistic and make the decision ---------------------
x <- c(52,48,55,61,47,58,50,63,45,56,54,49)
mu0 <- 50
n <- length(x)
t_stat <- (mean(x) - mu0) / (sd(x) / sqrt(n))
t_c <- qt(1 - alpha/2, n - 1)
p_val <- 2 * pt(-abs(t_stat), n - 1)
reject <- abs(t_stat) > t_c # identical to p_val < alpha
cat(sprintf("Z alpha=%.2f: two-tailed %.6f, one-tailed %.6f\n",
alpha, z_two, z_one))
cat(sprintf("T df=%d: two-tailed %.6f, one-tailed %.6f\n",
df, t_two, t_one))
cat(sprintf("CHI df=%d: right-tailed %.6f, two-sided [%.6f, %.6f]\n",
chi_df, chi_crit, chi_lo, chi_hi))
cat(sprintf("F (%d,%d): right-tailed %.6f F(%d,%d) = %.6f\n",
d1, d2, f_crit, d2, d1, f_swap))
cat(sprintf("DECISION t(%d) = %.6f, critical +/-%.6f, p = %.6f\n",
n-1, t_stat, t_c, p_val))
cat(sprintf(" reject = %s (p < alpha is %s: they agree)\n",
reject, p_val < alpha))
# ---- 6. One figure ----------------------------------------------------
grid <- seq(-5, 5, length.out = 700)
pdf <- dt(grid, n - 1)
plot(grid, pdf, type = "l", lwd = 2.4, col = "#4338ca", bty = "n",
xlab = "t value", ylab = "density",
main = sprintf("Rejection Region at alpha = %.2f, two-tailed, df = %d",
alpha, n - 1))
# shade both rejection tails
tail_r <- grid[grid >= t_c]
tail_l <- grid[grid <= -t_c]
polygon(c(tail_r, rev(tail_r)), c(dt(tail_r, n-1), rep(0, length(tail_r))),
col = adjustcolor("#f59e0b", 0.40), border = NA)
polygon(c(tail_l, rev(tail_l)), c(dt(tail_l, n-1), rep(0, length(tail_l))),
col = adjustcolor("#f59e0b", 0.40), border = NA)
abline(v = c(-t_c, t_c), col = "#b45309", lty = 2, lwd = 1.6)
text(t_c, dt(0, n-1) * 0.72, sprintf(" critical %.3f", t_c),
pos = 4, cex = 0.8, col = "#b45309")
points(t_stat, dt(t_stat, n-1), pch = 17, cex = 1.6, col = "#be185d")
legend("topright", bty = "n", cex = 0.85,
legend = c(sprintf("t-distribution, df = %d", n-1),
sprintf("rejection region, area = %.2f", alpha),
sprintf("your t = %.3f", t_stat)),
col = c("#4338ca", "#f59e0b", "#be185d"),
lwd = c(2.4, 6, NA), pch = c(NA, NA, 17))
What the script prints
Z alpha=0.05: two-tailed 1.959964, one-tailed 1.644854
T df=10: two-tailed 2.228139, one-tailed 1.812461
CHI df=5: right-tailed 11.070498, two-sided [0.831212, 12.832502]
F (3,20): right-tailed 3.098391 F(20,3) = 8.660190
DECISION t(11) = 1.934605, critical +/-2.200985, p = 0.079165
reject = FALSE (p < alpha is FALSE: they agree)
These are the same numbers the Python script produces and the same numbers the calculator at the top of this page produces.
Line-by-line explanation
- Block 1 shows two equivalent ways to get a one-tailed value: pass
1 - alpha, or passalphawithlower.tail = FALSE. The second is clearer about intent and avoids arithmetic errors. - Block 2 is identical in structure, with df added. That consistency is R's main advantage over Excel here.
- Block 3 gives the right-tailed chi-square value you want for goodness of fit, plus both bounds for the variance case. Note that
qchisq(1 - alpha, df)andqchisq(alpha, df, lower.tail = FALSE)are the same thing. - Block 4 demonstrates the F ordering trap explicitly: 3.098 becomes 8.660 when you swap the arguments, and nothing errors.
- Block 5 computes a statistic and makes the decision both ways. The two
rejectchecks must agree, and if they ever do not you have made an arithmetic error somewhere. - Block 6 draws the rejection region. This is the figure worth showing a class, because the shaded area is alpha, made visible.
Useful one-liners
| Task | R | Result |
|---|---|---|
| Z, two-tailed | qnorm(0.975) | 1.959964 |
| Z, one-tailed | qnorm(0.95) | 1.644854 |
| T, two-tailed | qt(0.975, 10) | 2.228139 |
| T, one-tailed | qt(0.95, 10) | 1.812461 |
| Chi-square, right | qchisq(0.95, 5) | 11.070498 |
| Chi-square, right (alt) | qchisq(0.05, 5, lower.tail=FALSE) | 11.070498 |
| F, right | qf(0.95, 3, 20) | 3.098391 |
| p from z | 2*pnorm(-abs(z)) | two-tailed p |
| p from t | 2*pt(-abs(t), df) | two-tailed p |
| p from chi-square | pchisq(x, df, lower.tail=FALSE) | right-tailed p |
| p from F | pf(x, d1, d2, lower.tail=FALSE) | right-tailed p |
| Whole t-test with its CI | t.test(x, mu=50) | statistic, p and interval |
| Whole chi-square test | chisq.test(c(22,17,20,26,14,21)) | statistic, df and p |
| Whole ANOVA | summary(aov(y ~ g, data = df)) | F, df and p |
| A whole critical value table | outer(c(1,5,10,20,30), c(.10,.05,.01), function(d,a) qt(1-a/2,d)) | a matrix of values |
🐍 10. How to Find Critical Values in Python
SciPy follows one consistent pattern across every distribution: .ppf() for the quantile (the critical value), .cdf() for the cumulative probability, .sf() for the survival function (the right tail), and .pdf() for the density. The script below was run before being published, so the output shown underneath is real.
stats.norm.ppf, stats.t.ppf, stats.chi2.ppf, stats.f.ppf. All take the cumulative probability, so a two-tailed critical value is always ppf(1 - alpha/2, ...). Use .isf(alpha, ...) as a shortcut for the right-tail value, and .sf() rather than 1 - .cdf() in the far tail, where it is more accurate.# Critical Value Calculator in Python
# z, t, chi-square and F critical values, with rejection regions and decisions.
import numpy as np
import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
from scipy import stats
alpha = 0.05
# ---- 1. Z critical values ---------------------------------------------
z_two = stats.norm.ppf(1 - alpha/2) # 1.959964
z_one = stats.norm.ppf(1 - alpha) # 1.644854
# ---- 2. T critical values ---------------------------------------------
df = 10
t_two = stats.t.ppf(1 - alpha/2, df) # 2.228139
t_one = stats.t.ppf(1 - alpha, df) # 1.812461
# ---- 3. Chi-square critical value (right-tailed by convention) --------
chi_df = 5
chi_crit = stats.chi2.ppf(1 - alpha, chi_df) # 11.070498
# both bounds, for a two-sided test about a variance:
chi_lo = stats.chi2.ppf(alpha/2, chi_df)
chi_hi = stats.chi2.ppf(1 - alpha/2, chi_df)
# ---- 4. F critical value (right-tailed; ORDER MATTERS) ----------------
d1, d2 = 3, 20
f_crit = stats.f.ppf(1 - alpha, d1, d2) # 3.098391
f_swap = stats.f.ppf(1 - alpha, d2, d1) # 8.660168, different!
# ---- 5. Compute a statistic and make the decision ---------------------
x = np.array([52,48,55,61,47,58,50,63,45,56,54,49], dtype=float)
mu0 = 50.0
n = x.size
t_stat = (x.mean() - mu0) / (x.std(ddof=1) / np.sqrt(n))
t_c = stats.t.ppf(1 - alpha/2, n - 1)
p_val = 2 * stats.t.sf(abs(t_stat), n - 1)
reject = abs(t_stat) > t_c # identical to: p_val < alpha
print(f"Z alpha={alpha}: two-tailed {z_two:.6f}, one-tailed {z_one:.6f}")
print(f"T df={df}: two-tailed {t_two:.6f}, one-tailed {t_one:.6f}")
print(f"CHI df={chi_df}: right-tailed {chi_crit:.6f}, "
f"two-sided [{chi_lo:.6f}, {chi_hi:.6f}]")
print(f"F ({d1},{d2}): right-tailed {f_crit:.6f} "
f"F({d2},{d1}) = {f_swap:.6f} <- order matters")
print(f"DECISION t({n-1}) = {t_stat:.6f}, critical +/-{t_c:.6f}, "
f"p = {p_val:.6f}")
print(f" reject = {reject} (p < alpha is {p_val < alpha}: they agree)")
# ---- 6. One figure ----------------------------------------------------
fig, ax = plt.subplots(figsize=(9, 5))
grid = np.linspace(-5, 5, 700)
pdf = stats.t.pdf(grid, n - 1)
ax.plot(grid, pdf, color="#4338ca", lw=2.4, label=f"t-distribution, df = {n-1}")
ax.fill_between(grid, pdf, where=np.abs(grid) >= t_c, color="#f59e0b",
alpha=.40, label=f"rejection region, area = {alpha}")
for c in (-t_c, t_c):
ax.axvline(c, color="#b45309", ls="--", lw=1.6)
ax.text(t_c, stats.t.pdf(0, n-1)*0.72, f" critical {t_c:.3f}",
fontsize=9, color="#b45309")
ax.plot([t_stat], [stats.t.pdf(t_stat, n-1)], marker="^", ms=13,
color="#be185d", ls="none", label=f"your t = {t_stat:.3f}")
ax.set_xlabel("t value")
ax.set_ylabel("density")
ax.set_title(f"Rejection Region at alpha = {alpha}, two-tailed, df = {n-1}")
ax.legend(frameon=False, fontsize=9)
ax.spines[["top", "right"]].set_visible(False)
fig.tight_layout()
fig.savefig("critical_value.png", dpi=150)
print("saved critical_value.png")
Actual output from running the script
Z alpha=0.05: two-tailed 1.959964, one-tailed 1.644854
T df=10: two-tailed 2.228139, one-tailed 1.812461
CHI df=5: right-tailed 11.070498, two-sided [0.831212, 12.832502]
F (3,20): right-tailed 3.098391 F(20,3) = 8.660190 <- order matters
DECISION t(11) = 1.934605, critical +/-2.200985, p = 0.079165
reject = False (p < alpha is False: they agree)
Line-by-line explanation
- Block 1 uses
stats.norm.ppf, which takes the cumulative probability. There is no alpha-taking variant to confuse it with, unlike Excel. - Block 2 is structurally identical with df added as the second argument. Every SciPy distribution follows this shape.
- Block 3 gives the right-tailed chi-square value for goodness of fit, plus both bounds for a two-sided variance test.
stats.chi2.isf(alpha, df)is an equivalent shortcut for the right tail. - Block 4 makes the F ordering trap explicit: F(3,20) is 3.098 and F(20,3) is 8.660. Both are valid calls, so nothing will error.
- Block 5 computes a statistic and makes the decision two ways. The printed line confirms that the critical value rule and the p-value rule agree, which they must.
- Block 6 shades the rejection region.
fill_betweenwith awheremask handles both tails in a single call.
Useful one-liners
| Task | Python | Result |
|---|---|---|
| Z, two-tailed | stats.norm.ppf(0.975) | 1.959964 |
| Z, one-tailed | stats.norm.ppf(0.95) | 1.644854 |
| Z, right tail shortcut | stats.norm.isf(0.05) | 1.644854 |
| T, two-tailed | stats.t.ppf(0.975, 10) | 2.228139 |
| T, one-tailed | stats.t.ppf(0.95, 10) | 1.812461 |
| Chi-square, right | stats.chi2.ppf(0.95, 5) | 11.070498 |
| Chi-square, right shortcut | stats.chi2.isf(0.05, 5) | 11.070498 |
| F, right | stats.f.ppf(0.95, 3, 20) | 3.098391 |
| p from z | 2*stats.norm.sf(abs(z)) | two-tailed p |
| p from t | 2*stats.t.sf(abs(t), df) | two-tailed p |
| p from chi-square | stats.chi2.sf(x, df) | right-tailed p |
| p from F | stats.f.sf(x, d1, d2) | right-tailed p |
| Whole t-test | stats.ttest_1samp(x, 50) | statistic and p |
| Whole chi-square test | stats.chisquare([22,17,20,26,14,21]) | statistic and p |
| Whole ANOVA | stats.f_oneway(g1, g2, g3) | F and p |
| A whole critical value table | stats.t.ppf(1-np.array([.10,.05,.01])/2, np.array([[1],[5],[10]])) | a broadcast array |
stats.t.ppf(0.975, 11) returns 2.200985, exactly the value this calculator shows for a two-tailed test at α = 0.05 with df = 11. If your own arithmetic disagrees with SciPy, the usual culprits are alpha versus alpha/2, or using z where t belongs.📋 11. Reference Tables
11.1 Z critical values
The only table that fits on one screen, because the normal distribution has no degrees of freedom. These seven pairs cover essentially every z test you will ever run.
| Alpha | Confidence | Two-tailed z | One-tailed z |
|---|---|---|---|
| 0.2 | 80% | 1.2816 | 0.8416 |
| 0.1 | 90% | 1.6449 | 1.2816 |
| 0.05 | 95% | 1.9600 | 1.6449 |
| 0.02 | 98% | 2.3263 | 2.0537 |
| 0.01 | 99% | 2.5758 | 2.3263 |
| 0.005 | 99.5% | 2.8070 | 2.5758 |
| 0.001 | 99.9% | 3.2905 | 3.0902 |
11.2 T critical values, two-tailed
Find your degrees of freedom down the left and your alpha across the top. The bottom row is the normal distribution, which is where t converges as df grows.
| df | 0.2 | 0.1 | 0.05 | 0.02 | 0.01 | 0.002 | 0.001 |
|---|---|---|---|---|---|---|---|
| 1 | 3.0777 | 6.3138 | 12.7062 | 31.8205 | 63.6567 | 318.309 | 636.619 |
| 2 | 1.8856 | 2.9200 | 4.3027 | 6.9646 | 9.9248 | 22.3271 | 31.5991 |
| 3 | 1.6377 | 2.3534 | 3.1824 | 4.5407 | 5.8409 | 10.2145 | 12.9240 |
| 4 | 1.5332 | 2.1318 | 2.7764 | 3.7469 | 4.6041 | 7.1732 | 8.6103 |
| 5 | 1.4759 | 2.0150 | 2.5706 | 3.3649 | 4.0321 | 5.8934 | 6.8688 |
| 6 | 1.4398 | 1.9432 | 2.4469 | 3.1427 | 3.7074 | 5.2076 | 5.9588 |
| 7 | 1.4149 | 1.8946 | 2.3646 | 2.9980 | 3.4995 | 4.7853 | 5.4079 |
| 8 | 1.3968 | 1.8595 | 2.3060 | 2.8965 | 3.3554 | 4.5008 | 5.0413 |
| 9 | 1.3830 | 1.8331 | 2.2622 | 2.8214 | 3.2498 | 4.2968 | 4.7809 |
| 10 | 1.3722 | 1.8125 | 2.2281 | 2.7638 | 3.1693 | 4.1437 | 4.5869 |
| 11 | 1.3634 | 1.7959 | 2.2010 | 2.7181 | 3.1058 | 4.0247 | 4.4370 |
| 12 | 1.3562 | 1.7823 | 2.1788 | 2.6810 | 3.0545 | 3.9296 | 4.3178 |
| 13 | 1.3502 | 1.7709 | 2.1604 | 2.6503 | 3.0123 | 3.8520 | 4.2208 |
| 14 | 1.3450 | 1.7613 | 2.1448 | 2.6245 | 2.9768 | 3.7874 | 4.1405 |
| 15 | 1.3406 | 1.7531 | 2.1314 | 2.6025 | 2.9467 | 3.7328 | 4.0728 |
| 16 | 1.3368 | 1.7459 | 2.1199 | 2.5835 | 2.9208 | 3.6862 | 4.0150 |
| 17 | 1.3334 | 1.7396 | 2.1098 | 2.5669 | 2.8982 | 3.6458 | 3.9651 |
| 18 | 1.3304 | 1.7341 | 2.1009 | 2.5524 | 2.8784 | 3.6105 | 3.9216 |
| 19 | 1.3277 | 1.7291 | 2.0930 | 2.5395 | 2.8609 | 3.5794 | 3.8834 |
| 20 | 1.3253 | 1.7247 | 2.0860 | 2.5280 | 2.8453 | 3.5518 | 3.8495 |
| 21 | 1.3232 | 1.7207 | 2.0796 | 2.5176 | 2.8314 | 3.5272 | 3.8193 |
| 22 | 1.3212 | 1.7171 | 2.0739 | 2.5083 | 2.8188 | 3.5050 | 3.7921 |
| 23 | 1.3195 | 1.7139 | 2.0687 | 2.4999 | 2.8073 | 3.4850 | 3.7676 |
| 24 | 1.3178 | 1.7109 | 2.0639 | 2.4922 | 2.7969 | 3.4668 | 3.7454 |
| 25 | 1.3163 | 1.7081 | 2.0595 | 2.4851 | 2.7874 | 3.4502 | 3.7251 |
| 26 | 1.3150 | 1.7056 | 2.0555 | 2.4786 | 2.7787 | 3.4350 | 3.7066 |
| 27 | 1.3137 | 1.7033 | 2.0518 | 2.4727 | 2.7707 | 3.4210 | 3.6896 |
| 28 | 1.3125 | 1.7011 | 2.0484 | 2.4671 | 2.7633 | 3.4082 | 3.6739 |
| 29 | 1.3114 | 1.6991 | 2.0452 | 2.4620 | 2.7564 | 3.3962 | 3.6594 |
| 30 | 1.3104 | 1.6973 | 2.0423 | 2.4573 | 2.7500 | 3.3852 | 3.6460 |
| 35 | 1.3062 | 1.6896 | 2.0301 | 2.4377 | 2.7238 | 3.3400 | 3.5911 |
| 40 | 1.3031 | 1.6839 | 2.0211 | 2.4233 | 2.7045 | 3.3069 | 3.5510 |
| 45 | 1.3006 | 1.6794 | 2.0141 | 2.4121 | 2.6896 | 3.2815 | 3.5203 |
| 50 | 1.2987 | 1.6759 | 2.0086 | 2.4033 | 2.6778 | 3.2614 | 3.4960 |
| 60 | 1.2958 | 1.6706 | 2.0003 | 2.3901 | 2.6603 | 3.2317 | 3.4602 |
| 70 | 1.2938 | 1.6669 | 1.9944 | 2.3808 | 2.6479 | 3.2108 | 3.4350 |
| 80 | 1.2922 | 1.6641 | 1.9901 | 2.3739 | 2.6387 | 3.1953 | 3.4163 |
| 90 | 1.2910 | 1.6620 | 1.9867 | 2.3685 | 2.6316 | 3.1833 | 3.4019 |
| 100 | 1.2901 | 1.6602 | 1.9840 | 2.3642 | 2.6259 | 3.1737 | 3.3905 |
| 120 | 1.2886 | 1.6577 | 1.9799 | 2.3578 | 2.6174 | 3.1595 | 3.3735 |
| 150 | 1.2872 | 1.6551 | 1.9759 | 2.3515 | 2.6090 | 3.1455 | 3.3566 |
| 200 | 1.2858 | 1.6525 | 1.9719 | 2.3451 | 2.6006 | 3.1315 | 3.3398 |
| 300 | 1.2844 | 1.6499 | 1.9679 | 2.3388 | 2.5923 | 3.1176 | 3.3233 |
| 500 | 1.2832 | 1.6479 | 1.9647 | 2.3338 | 2.5857 | 3.1066 | 3.3101 |
| 1000 | 1.2824 | 1.6464 | 1.9623 | 2.3301 | 2.5808 | 3.0984 | 3.3003 |
| ∞ (z) | 1.2816 | 1.6449 | 1.9600 | 2.3263 | 2.5758 | 3.0902 | 3.2905 |
11.3 T critical values, one-tailed
The same table for a directional hypothesis. Note that the one-tailed value at 0.025 equals the two-tailed value at 0.05, which is the arithmetic behind the warning about switching tails after seeing your data.
| df | 0.1 | 0.05 | 0.025 | 0.01 | 0.005 | 0.001 | 0.0005 |
|---|---|---|---|---|---|---|---|
| 1 | 3.0777 | 6.3138 | 12.7062 | 31.8205 | 63.6567 | 318.309 | 636.619 |
| 2 | 1.8856 | 2.9200 | 4.3027 | 6.9646 | 9.9248 | 22.3271 | 31.5991 |
| 3 | 1.6377 | 2.3534 | 3.1824 | 4.5407 | 5.8409 | 10.2145 | 12.9240 |
| 4 | 1.5332 | 2.1318 | 2.7764 | 3.7469 | 4.6041 | 7.1732 | 8.6103 |
| 5 | 1.4759 | 2.0150 | 2.5706 | 3.3649 | 4.0321 | 5.8934 | 6.8688 |
| 6 | 1.4398 | 1.9432 | 2.4469 | 3.1427 | 3.7074 | 5.2076 | 5.9588 |
| 7 | 1.4149 | 1.8946 | 2.3646 | 2.9980 | 3.4995 | 4.7853 | 5.4079 |
| 8 | 1.3968 | 1.8595 | 2.3060 | 2.8965 | 3.3554 | 4.5008 | 5.0413 |
| 9 | 1.3830 | 1.8331 | 2.2622 | 2.8214 | 3.2498 | 4.2968 | 4.7809 |
| 10 | 1.3722 | 1.8125 | 2.2281 | 2.7638 | 3.1693 | 4.1437 | 4.5869 |
| 11 | 1.3634 | 1.7959 | 2.2010 | 2.7181 | 3.1058 | 4.0247 | 4.4370 |
| 12 | 1.3562 | 1.7823 | 2.1788 | 2.6810 | 3.0545 | 3.9296 | 4.3178 |
| 13 | 1.3502 | 1.7709 | 2.1604 | 2.6503 | 3.0123 | 3.8520 | 4.2208 |
| 14 | 1.3450 | 1.7613 | 2.1448 | 2.6245 | 2.9768 | 3.7874 | 4.1405 |
| 15 | 1.3406 | 1.7531 | 2.1314 | 2.6025 | 2.9467 | 3.7328 | 4.0728 |
| 16 | 1.3368 | 1.7459 | 2.1199 | 2.5835 | 2.9208 | 3.6862 | 4.0150 |
| 17 | 1.3334 | 1.7396 | 2.1098 | 2.5669 | 2.8982 | 3.6458 | 3.9651 |
| 18 | 1.3304 | 1.7341 | 2.1009 | 2.5524 | 2.8784 | 3.6105 | 3.9216 |
| 19 | 1.3277 | 1.7291 | 2.0930 | 2.5395 | 2.8609 | 3.5794 | 3.8834 |
| 20 | 1.3253 | 1.7247 | 2.0860 | 2.5280 | 2.8453 | 3.5518 | 3.8495 |
| 21 | 1.3232 | 1.7207 | 2.0796 | 2.5176 | 2.8314 | 3.5272 | 3.8193 |
| 22 | 1.3212 | 1.7171 | 2.0739 | 2.5083 | 2.8188 | 3.5050 | 3.7921 |
| 23 | 1.3195 | 1.7139 | 2.0687 | 2.4999 | 2.8073 | 3.4850 | 3.7676 |
| 24 | 1.3178 | 1.7109 | 2.0639 | 2.4922 | 2.7969 | 3.4668 | 3.7454 |
| 25 | 1.3163 | 1.7081 | 2.0595 | 2.4851 | 2.7874 | 3.4502 | 3.7251 |
| 26 | 1.3150 | 1.7056 | 2.0555 | 2.4786 | 2.7787 | 3.4350 | 3.7066 |
| 27 | 1.3137 | 1.7033 | 2.0518 | 2.4727 | 2.7707 | 3.4210 | 3.6896 |
| 28 | 1.3125 | 1.7011 | 2.0484 | 2.4671 | 2.7633 | 3.4082 | 3.6739 |
| 29 | 1.3114 | 1.6991 | 2.0452 | 2.4620 | 2.7564 | 3.3962 | 3.6594 |
| 30 | 1.3104 | 1.6973 | 2.0423 | 2.4573 | 2.7500 | 3.3852 | 3.6460 |
| 35 | 1.3062 | 1.6896 | 2.0301 | 2.4377 | 2.7238 | 3.3400 | 3.5911 |
| 40 | 1.3031 | 1.6839 | 2.0211 | 2.4233 | 2.7045 | 3.3069 | 3.5510 |
| 45 | 1.3006 | 1.6794 | 2.0141 | 2.4121 | 2.6896 | 3.2815 | 3.5203 |
| 50 | 1.2987 | 1.6759 | 2.0086 | 2.4033 | 2.6778 | 3.2614 | 3.4960 |
| 60 | 1.2958 | 1.6706 | 2.0003 | 2.3901 | 2.6603 | 3.2317 | 3.4602 |
| 70 | 1.2938 | 1.6669 | 1.9944 | 2.3808 | 2.6479 | 3.2108 | 3.4350 |
| 80 | 1.2922 | 1.6641 | 1.9901 | 2.3739 | 2.6387 | 3.1953 | 3.4163 |
| 90 | 1.2910 | 1.6620 | 1.9867 | 2.3685 | 2.6316 | 3.1833 | 3.4019 |
| 100 | 1.2901 | 1.6602 | 1.9840 | 2.3642 | 2.6259 | 3.1737 | 3.3905 |
| 120 | 1.2886 | 1.6577 | 1.9799 | 2.3578 | 2.6174 | 3.1595 | 3.3735 |
| 150 | 1.2872 | 1.6551 | 1.9759 | 2.3515 | 2.6090 | 3.1455 | 3.3566 |
| 200 | 1.2858 | 1.6525 | 1.9719 | 2.3451 | 2.6006 | 3.1315 | 3.3398 |
| 300 | 1.2844 | 1.6499 | 1.9679 | 2.3388 | 2.5923 | 3.1176 | 3.3233 |
| 500 | 1.2832 | 1.6479 | 1.9647 | 2.3338 | 2.5857 | 3.1066 | 3.3101 |
| 1000 | 1.2824 | 1.6464 | 1.9623 | 2.3301 | 2.5808 | 3.0984 | 3.3003 |
| ∞ (z) | 1.2816 | 1.6449 | 1.9600 | 2.3263 | 2.5758 | 3.0902 | 3.2905 |
11.4 Chi-square critical values
Column headings are the area in the right tail. For a standard goodness-of-fit or independence test at α = 0.05, use the 0.05 column. The first five columns are for the lower tail of a two-sided variance test.
| df | 0.995 | 0.99 | 0.975 | 0.95 | 0.9 | 0.1 | 0.05 | 0.025 | 0.01 | 0.005 |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 0.0000 | 0.0002 | 0.0010 | 0.0039 | 0.0158 | 2.7055 | 3.8415 | 5.0239 | 6.6349 | 7.8794 |
| 2 | 0.0100 | 0.0201 | 0.0506 | 0.1026 | 0.2107 | 4.6052 | 5.9915 | 7.3778 | 9.2103 | 10.597 |
| 3 | 0.0717 | 0.1148 | 0.2158 | 0.3518 | 0.5844 | 6.2514 | 7.8147 | 9.3484 | 11.345 | 12.838 |
| 4 | 0.2070 | 0.2971 | 0.4844 | 0.7107 | 1.0636 | 7.7794 | 9.4877 | 11.143 | 13.277 | 14.860 |
| 5 | 0.4117 | 0.5543 | 0.8312 | 1.1455 | 1.6103 | 9.2364 | 11.070 | 12.833 | 15.086 | 16.750 |
| 6 | 0.6757 | 0.8721 | 1.2373 | 1.6354 | 2.2041 | 10.645 | 12.592 | 14.449 | 16.812 | 18.548 |
| 7 | 0.9893 | 1.2390 | 1.6899 | 2.1673 | 2.8331 | 12.017 | 14.067 | 16.013 | 18.475 | 20.278 |
| 8 | 1.3444 | 1.6465 | 2.1797 | 2.7326 | 3.4895 | 13.362 | 15.507 | 17.535 | 20.090 | 21.955 |
| 9 | 1.7349 | 2.0879 | 2.7004 | 3.3251 | 4.1682 | 14.684 | 16.919 | 19.023 | 21.666 | 23.589 |
| 10 | 2.1559 | 2.5582 | 3.2470 | 3.9403 | 4.8652 | 15.987 | 18.307 | 20.483 | 23.209 | 25.188 |
| 11 | 2.6032 | 3.0535 | 3.8157 | 4.5748 | 5.5778 | 17.275 | 19.675 | 21.920 | 24.725 | 26.757 |
| 12 | 3.0738 | 3.5706 | 4.4038 | 5.2260 | 6.3038 | 18.549 | 21.026 | 23.337 | 26.217 | 28.300 |
| 13 | 3.5650 | 4.1069 | 5.0088 | 5.8919 | 7.0415 | 19.812 | 22.362 | 24.736 | 27.688 | 29.819 |
| 14 | 4.0747 | 4.6604 | 5.6287 | 6.5706 | 7.7895 | 21.064 | 23.685 | 26.119 | 29.141 | 31.319 |
| 15 | 4.6009 | 5.2293 | 6.2621 | 7.2609 | 8.5468 | 22.307 | 24.996 | 27.488 | 30.578 | 32.801 |
| 16 | 5.1422 | 5.8122 | 6.9077 | 7.9616 | 9.3122 | 23.542 | 26.296 | 28.845 | 32.000 | 34.267 |
| 17 | 5.6972 | 6.4078 | 7.5642 | 8.6718 | 10.085 | 24.769 | 27.587 | 30.191 | 33.409 | 35.718 |
| 18 | 6.2648 | 7.0149 | 8.2307 | 9.3905 | 10.865 | 25.989 | 28.869 | 31.526 | 34.805 | 37.156 |
| 19 | 6.8440 | 7.6327 | 8.9065 | 10.117 | 11.651 | 27.204 | 30.144 | 32.852 | 36.191 | 38.582 |
| 20 | 7.4338 | 8.2604 | 9.5908 | 10.851 | 12.443 | 28.412 | 31.410 | 34.170 | 37.566 | 39.997 |
| 21 | 8.0337 | 8.8972 | 10.283 | 11.591 | 13.240 | 29.615 | 32.671 | 35.479 | 38.932 | 41.401 |
| 22 | 8.6427 | 9.5425 | 10.982 | 12.338 | 14.041 | 30.813 | 33.924 | 36.781 | 40.289 | 42.796 |
| 23 | 9.2604 | 10.196 | 11.689 | 13.091 | 14.848 | 32.007 | 35.172 | 38.076 | 41.638 | 44.181 |
| 24 | 9.8862 | 10.856 | 12.401 | 13.848 | 15.659 | 33.196 | 36.415 | 39.364 | 42.980 | 45.559 |
| 25 | 10.520 | 11.524 | 13.120 | 14.611 | 16.473 | 34.382 | 37.652 | 40.646 | 44.314 | 46.928 |
| 26 | 11.160 | 12.198 | 13.844 | 15.379 | 17.292 | 35.563 | 38.885 | 41.923 | 45.642 | 48.290 |
| 27 | 11.808 | 12.879 | 14.573 | 16.151 | 18.114 | 36.741 | 40.113 | 43.195 | 46.963 | 49.645 |
| 28 | 12.461 | 13.565 | 15.308 | 16.928 | 18.939 | 37.916 | 41.337 | 44.461 | 48.278 | 50.993 |
| 29 | 13.121 | 14.256 | 16.047 | 17.708 | 19.768 | 39.087 | 42.557 | 45.722 | 49.588 | 52.336 |
| 30 | 13.787 | 14.953 | 16.791 | 18.493 | 20.599 | 40.256 | 43.773 | 46.979 | 50.892 | 53.672 |
| 35 | 17.192 | 18.509 | 20.569 | 22.465 | 24.797 | 46.059 | 49.802 | 53.203 | 57.342 | 60.275 |
| 40 | 20.707 | 22.164 | 24.433 | 26.509 | 29.051 | 51.805 | 55.758 | 59.342 | 63.691 | 66.766 |
| 45 | 24.311 | 25.901 | 28.366 | 30.612 | 33.350 | 57.505 | 61.656 | 65.410 | 69.957 | 73.166 |
| 50 | 27.991 | 29.707 | 32.357 | 34.764 | 37.689 | 63.167 | 67.505 | 71.420 | 76.154 | 79.490 |
| 60 | 35.534 | 37.485 | 40.482 | 43.188 | 46.459 | 74.397 | 79.082 | 83.298 | 88.379 | 91.952 |
| 70 | 43.275 | 45.442 | 48.758 | 51.739 | 55.329 | 85.527 | 90.531 | 95.023 | 100.425 | 104.215 |
| 80 | 51.172 | 53.540 | 57.153 | 60.391 | 64.278 | 96.578 | 101.879 | 106.629 | 112.329 | 116.321 |
| 90 | 59.196 | 61.754 | 65.647 | 69.126 | 73.291 | 107.565 | 113.145 | 118.136 | 124.116 | 128.299 |
| 100 | 67.328 | 70.065 | 74.222 | 77.929 | 82.358 | 118.498 | 124.342 | 129.561 | 135.807 | 140.169 |
Useful sanity check: the mean of a chi-square distribution equals its degrees of freedom. If your statistic is close to df, the fit is about as good as chance would predict. The critical value always sits well above df.
11.5 F critical values at α = 0.05
Numerator degrees of freedom across the top, denominator down the side. This is the table used for ANOVA at the conventional 5% level.
| df₂ ↓ / df₁ → | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 12 | 15 | 20 | 24 | 30 | 60 | 120 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 161.4 | 199.5 | 215.7 | 224.6 | 230.2 | 234.0 | 236.8 | 238.9 | 240.5 | 241.9 | 243.9 | 245.9 | 248.0 | 249.1 | 250.1 | 252.2 | 253.3 |
| 2 | 18.513 | 19.000 | 19.164 | 19.247 | 19.296 | 19.330 | 19.353 | 19.371 | 19.385 | 19.396 | 19.413 | 19.429 | 19.446 | 19.454 | 19.462 | 19.479 | 19.487 |
| 3 | 10.128 | 9.552 | 9.277 | 9.117 | 9.013 | 8.941 | 8.887 | 8.845 | 8.812 | 8.786 | 8.745 | 8.703 | 8.660 | 8.639 | 8.617 | 8.572 | 8.549 |
| 4 | 7.709 | 6.944 | 6.591 | 6.388 | 6.256 | 6.163 | 6.094 | 6.041 | 5.999 | 5.964 | 5.912 | 5.858 | 5.803 | 5.774 | 5.746 | 5.688 | 5.658 |
| 5 | 6.608 | 5.786 | 5.409 | 5.192 | 5.050 | 4.950 | 4.876 | 4.818 | 4.772 | 4.735 | 4.678 | 4.619 | 4.558 | 4.527 | 4.496 | 4.431 | 4.398 |
| 6 | 5.987 | 5.143 | 4.757 | 4.534 | 4.387 | 4.284 | 4.207 | 4.147 | 4.099 | 4.060 | 4.000 | 3.938 | 3.874 | 3.841 | 3.808 | 3.740 | 3.705 |
| 7 | 5.591 | 4.737 | 4.347 | 4.120 | 3.972 | 3.866 | 3.787 | 3.726 | 3.677 | 3.637 | 3.575 | 3.511 | 3.445 | 3.410 | 3.376 | 3.304 | 3.267 |
| 8 | 5.318 | 4.459 | 4.066 | 3.838 | 3.687 | 3.581 | 3.500 | 3.438 | 3.388 | 3.347 | 3.284 | 3.218 | 3.150 | 3.115 | 3.079 | 3.005 | 2.967 |
| 9 | 5.117 | 4.256 | 3.863 | 3.633 | 3.482 | 3.374 | 3.293 | 3.230 | 3.179 | 3.137 | 3.073 | 3.006 | 2.936 | 2.900 | 2.864 | 2.787 | 2.748 |
| 10 | 4.965 | 4.103 | 3.708 | 3.478 | 3.326 | 3.217 | 3.135 | 3.072 | 3.020 | 2.978 | 2.913 | 2.845 | 2.774 | 2.737 | 2.700 | 2.621 | 2.580 |
| 11 | 4.844 | 3.982 | 3.587 | 3.357 | 3.204 | 3.095 | 3.012 | 2.948 | 2.896 | 2.854 | 2.788 | 2.719 | 2.646 | 2.609 | 2.570 | 2.490 | 2.448 |
| 12 | 4.747 | 3.885 | 3.490 | 3.259 | 3.106 | 2.996 | 2.913 | 2.849 | 2.796 | 2.753 | 2.687 | 2.617 | 2.544 | 2.505 | 2.466 | 2.384 | 2.341 |
| 13 | 4.667 | 3.806 | 3.411 | 3.179 | 3.025 | 2.915 | 2.832 | 2.767 | 2.714 | 2.671 | 2.604 | 2.533 | 2.459 | 2.420 | 2.380 | 2.297 | 2.252 |
| 14 | 4.600 | 3.739 | 3.344 | 3.112 | 2.958 | 2.848 | 2.764 | 2.699 | 2.646 | 2.602 | 2.534 | 2.463 | 2.388 | 2.349 | 2.308 | 2.223 | 2.178 |
| 15 | 4.543 | 3.682 | 3.287 | 3.056 | 2.901 | 2.790 | 2.707 | 2.641 | 2.588 | 2.544 | 2.475 | 2.403 | 2.328 | 2.288 | 2.247 | 2.160 | 2.114 |
| 16 | 4.494 | 3.634 | 3.239 | 3.007 | 2.852 | 2.741 | 2.657 | 2.591 | 2.538 | 2.494 | 2.425 | 2.352 | 2.276 | 2.235 | 2.194 | 2.106 | 2.059 |
| 17 | 4.451 | 3.592 | 3.197 | 2.965 | 2.810 | 2.699 | 2.614 | 2.548 | 2.494 | 2.450 | 2.381 | 2.308 | 2.230 | 2.190 | 2.148 | 2.058 | 2.011 |
| 18 | 4.414 | 3.555 | 3.160 | 2.928 | 2.773 | 2.661 | 2.577 | 2.510 | 2.456 | 2.412 | 2.342 | 2.269 | 2.191 | 2.150 | 2.107 | 2.017 | 1.968 |
| 19 | 4.381 | 3.522 | 3.127 | 2.895 | 2.740 | 2.628 | 2.544 | 2.477 | 2.423 | 2.378 | 2.308 | 2.234 | 2.155 | 2.114 | 2.071 | 1.980 | 1.930 |
| 20 | 4.351 | 3.493 | 3.098 | 2.866 | 2.711 | 2.599 | 2.514 | 2.447 | 2.393 | 2.348 | 2.278 | 2.203 | 2.124 | 2.082 | 2.039 | 1.946 | 1.896 |
| 21 | 4.325 | 3.467 | 3.072 | 2.840 | 2.685 | 2.573 | 2.488 | 2.420 | 2.366 | 2.321 | 2.250 | 2.176 | 2.096 | 2.054 | 2.010 | 1.916 | 1.866 |
| 22 | 4.301 | 3.443 | 3.049 | 2.817 | 2.661 | 2.549 | 2.464 | 2.397 | 2.342 | 2.297 | 2.226 | 2.151 | 2.071 | 2.028 | 1.984 | 1.889 | 1.838 |
| 23 | 4.279 | 3.422 | 3.028 | 2.796 | 2.640 | 2.528 | 2.442 | 2.375 | 2.320 | 2.275 | 2.204 | 2.128 | 2.048 | 2.005 | 1.961 | 1.865 | 1.813 |
| 24 | 4.260 | 3.403 | 3.009 | 2.776 | 2.621 | 2.508 | 2.423 | 2.355 | 2.300 | 2.255 | 2.183 | 2.108 | 2.027 | 1.984 | 1.939 | 1.842 | 1.790 |
| 25 | 4.242 | 3.385 | 2.991 | 2.759 | 2.603 | 2.490 | 2.405 | 2.337 | 2.282 | 2.236 | 2.165 | 2.089 | 2.007 | 1.964 | 1.919 | 1.822 | 1.768 |
| 26 | 4.225 | 3.369 | 2.975 | 2.743 | 2.587 | 2.474 | 2.388 | 2.321 | 2.265 | 2.220 | 2.148 | 2.072 | 1.990 | 1.946 | 1.901 | 1.803 | 1.749 |
| 27 | 4.210 | 3.354 | 2.960 | 2.728 | 2.572 | 2.459 | 2.373 | 2.305 | 2.250 | 2.204 | 2.132 | 2.056 | 1.974 | 1.930 | 1.884 | 1.785 | 1.731 |
| 28 | 4.196 | 3.340 | 2.947 | 2.714 | 2.558 | 2.445 | 2.359 | 2.291 | 2.236 | 2.190 | 2.118 | 2.041 | 1.959 | 1.915 | 1.869 | 1.769 | 1.714 |
| 29 | 4.183 | 3.328 | 2.934 | 2.701 | 2.545 | 2.432 | 2.346 | 2.278 | 2.223 | 2.177 | 2.104 | 2.027 | 1.945 | 1.901 | 1.854 | 1.754 | 1.698 |
| 30 | 4.171 | 3.316 | 2.922 | 2.690 | 2.534 | 2.421 | 2.334 | 2.266 | 2.211 | 2.165 | 2.092 | 2.015 | 1.932 | 1.887 | 1.841 | 1.740 | 1.683 |
| 40 | 4.085 | 3.232 | 2.839 | 2.606 | 2.449 | 2.336 | 2.249 | 2.180 | 2.124 | 2.077 | 2.003 | 1.924 | 1.839 | 1.793 | 1.744 | 1.637 | 1.577 |
| 60 | 4.001 | 3.150 | 2.758 | 2.525 | 2.368 | 2.254 | 2.167 | 2.097 | 2.040 | 1.993 | 1.917 | 1.836 | 1.748 | 1.700 | 1.649 | 1.534 | 1.467 |
| 120 | 3.920 | 3.072 | 2.680 | 2.447 | 2.290 | 2.175 | 2.087 | 2.016 | 1.959 | 1.910 | 1.834 | 1.750 | 1.659 | 1.608 | 1.554 | 1.429 | 1.352 |
| ∞ | 3.851 | 3.005 | 2.614 | 2.381 | 2.223 | 2.108 | 2.019 | 1.948 | 1.889 | 1.840 | 1.762 | 1.676 | 1.581 | 1.528 | 1.471 | 1.332 | 1.239 |
11.6 F critical values at α = 0.01
| df₂ ↓ / df₁ → | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 12 | 15 | 20 | 24 | 30 | 60 | 120 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 4052.2 | 4999.5 | 5403.4 | 5624.6 | 5763.6 | 5859.0 | 5928.4 | 5981.1 | 6022.5 | 6055.8 | 6106.3 | 6157.3 | 6208.7 | 6234.6 | 6260.6 | 6313.0 | 6339.4 |
| 2 | 98.503 | 99.000 | 99.166 | 99.249 | 99.299 | 99.333 | 99.356 | 99.374 | 99.388 | 99.399 | 99.416 | 99.433 | 99.449 | 99.458 | 99.466 | 99.482 | 99.491 |
| 3 | 34.116 | 30.817 | 29.457 | 28.710 | 28.237 | 27.911 | 27.672 | 27.489 | 27.345 | 27.229 | 27.052 | 26.872 | 26.690 | 26.598 | 26.505 | 26.316 | 26.221 |
| 4 | 21.198 | 18.000 | 16.694 | 15.977 | 15.522 | 15.207 | 14.976 | 14.799 | 14.659 | 14.546 | 14.374 | 14.198 | 14.020 | 13.929 | 13.838 | 13.652 | 13.558 |
| 5 | 16.258 | 13.274 | 12.060 | 11.392 | 10.967 | 10.672 | 10.456 | 10.289 | 10.158 | 10.051 | 9.888 | 9.722 | 9.553 | 9.466 | 9.379 | 9.202 | 9.112 |
| 6 | 13.745 | 10.925 | 9.780 | 9.148 | 8.746 | 8.466 | 8.260 | 8.102 | 7.976 | 7.874 | 7.718 | 7.559 | 7.396 | 7.313 | 7.229 | 7.057 | 6.969 |
| 7 | 12.246 | 9.547 | 8.451 | 7.847 | 7.460 | 7.191 | 6.993 | 6.840 | 6.719 | 6.620 | 6.469 | 6.314 | 6.155 | 6.074 | 5.992 | 5.824 | 5.737 |
| 8 | 11.259 | 8.649 | 7.591 | 7.006 | 6.632 | 6.371 | 6.178 | 6.029 | 5.911 | 5.814 | 5.667 | 5.515 | 5.359 | 5.279 | 5.198 | 5.032 | 4.946 |
| 9 | 10.561 | 8.022 | 6.992 | 6.422 | 6.057 | 5.802 | 5.613 | 5.467 | 5.351 | 5.257 | 5.111 | 4.962 | 4.808 | 4.729 | 4.649 | 4.483 | 4.398 |
| 10 | 10.044 | 7.559 | 6.552 | 5.994 | 5.636 | 5.386 | 5.200 | 5.057 | 4.942 | 4.849 | 4.706 | 4.558 | 4.405 | 4.327 | 4.247 | 4.082 | 3.996 |
| 11 | 9.646 | 7.206 | 6.217 | 5.668 | 5.316 | 5.069 | 4.886 | 4.744 | 4.632 | 4.539 | 4.397 | 4.251 | 4.099 | 4.021 | 3.941 | 3.776 | 3.690 |
| 12 | 9.330 | 6.927 | 5.953 | 5.412 | 5.064 | 4.821 | 4.640 | 4.499 | 4.388 | 4.296 | 4.155 | 4.010 | 3.858 | 3.780 | 3.701 | 3.535 | 3.449 |
| 13 | 9.074 | 6.701 | 5.739 | 5.205 | 4.862 | 4.620 | 4.441 | 4.302 | 4.191 | 4.100 | 3.960 | 3.815 | 3.665 | 3.587 | 3.507 | 3.341 | 3.255 |
| 14 | 8.862 | 6.515 | 5.564 | 5.035 | 4.695 | 4.456 | 4.278 | 4.140 | 4.030 | 3.939 | 3.800 | 3.656 | 3.505 | 3.427 | 3.348 | 3.181 | 3.094 |
| 15 | 8.683 | 6.359 | 5.417 | 4.893 | 4.556 | 4.318 | 4.142 | 4.004 | 3.895 | 3.805 | 3.666 | 3.522 | 3.372 | 3.294 | 3.214 | 3.047 | 2.959 |
| 16 | 8.531 | 6.226 | 5.292 | 4.773 | 4.437 | 4.202 | 4.026 | 3.890 | 3.780 | 3.691 | 3.553 | 3.409 | 3.259 | 3.181 | 3.101 | 2.933 | 2.845 |
| 17 | 8.400 | 6.112 | 5.185 | 4.669 | 4.336 | 4.102 | 3.927 | 3.791 | 3.682 | 3.593 | 3.455 | 3.312 | 3.162 | 3.084 | 3.003 | 2.835 | 2.746 |
| 18 | 8.285 | 6.013 | 5.092 | 4.579 | 4.248 | 4.015 | 3.841 | 3.705 | 3.597 | 3.508 | 3.371 | 3.227 | 3.077 | 2.999 | 2.919 | 2.749 | 2.660 |
| 19 | 8.185 | 5.926 | 5.010 | 4.500 | 4.171 | 3.939 | 3.765 | 3.631 | 3.523 | 3.434 | 3.297 | 3.153 | 3.003 | 2.925 | 2.844 | 2.674 | 2.584 |
| 20 | 8.096 | 5.849 | 4.938 | 4.431 | 4.103 | 3.871 | 3.699 | 3.564 | 3.457 | 3.368 | 3.231 | 3.088 | 2.938 | 2.859 | 2.778 | 2.608 | 2.517 |
| 21 | 8.017 | 5.780 | 4.874 | 4.369 | 4.042 | 3.812 | 3.640 | 3.506 | 3.398 | 3.310 | 3.173 | 3.030 | 2.880 | 2.801 | 2.720 | 2.548 | 2.457 |
| 22 | 7.945 | 5.719 | 4.817 | 4.313 | 3.988 | 3.758 | 3.587 | 3.453 | 3.346 | 3.258 | 3.121 | 2.978 | 2.827 | 2.749 | 2.667 | 2.495 | 2.403 |
| 23 | 7.881 | 5.664 | 4.765 | 4.264 | 3.939 | 3.710 | 3.539 | 3.406 | 3.299 | 3.211 | 3.074 | 2.931 | 2.781 | 2.702 | 2.620 | 2.447 | 2.354 |
| 24 | 7.823 | 5.614 | 4.718 | 4.218 | 3.895 | 3.667 | 3.496 | 3.363 | 3.256 | 3.168 | 3.032 | 2.889 | 2.738 | 2.659 | 2.577 | 2.403 | 2.310 |
| 25 | 7.770 | 5.568 | 4.675 | 4.177 | 3.855 | 3.627 | 3.457 | 3.324 | 3.217 | 3.129 | 2.993 | 2.850 | 2.699 | 2.620 | 2.538 | 2.364 | 2.270 |
| 26 | 7.721 | 5.526 | 4.637 | 4.140 | 3.818 | 3.591 | 3.421 | 3.288 | 3.182 | 3.094 | 2.958 | 2.815 | 2.664 | 2.585 | 2.503 | 2.327 | 2.233 |
| 27 | 7.677 | 5.488 | 4.601 | 4.106 | 3.785 | 3.558 | 3.388 | 3.256 | 3.149 | 3.062 | 2.926 | 2.783 | 2.632 | 2.552 | 2.470 | 2.294 | 2.198 |
| 28 | 7.636 | 5.453 | 4.568 | 4.074 | 3.754 | 3.528 | 3.358 | 3.226 | 3.120 | 3.032 | 2.896 | 2.753 | 2.602 | 2.522 | 2.440 | 2.263 | 2.167 |
| 29 | 7.598 | 5.420 | 4.538 | 4.045 | 3.725 | 3.499 | 3.330 | 3.198 | 3.092 | 3.005 | 2.868 | 2.726 | 2.574 | 2.495 | 2.412 | 2.234 | 2.138 |
| 30 | 7.562 | 5.390 | 4.510 | 4.018 | 3.699 | 3.473 | 3.304 | 3.173 | 3.067 | 2.979 | 2.843 | 2.700 | 2.549 | 2.469 | 2.386 | 2.208 | 2.111 |
| 40 | 7.314 | 5.179 | 4.313 | 3.828 | 3.514 | 3.291 | 3.124 | 2.993 | 2.888 | 2.801 | 2.665 | 2.522 | 2.369 | 2.288 | 2.203 | 2.019 | 1.917 |
| 60 | 7.077 | 4.977 | 4.126 | 3.649 | 3.339 | 3.119 | 2.953 | 2.823 | 2.718 | 2.632 | 2.496 | 2.352 | 2.198 | 2.115 | 2.028 | 1.836 | 1.726 |
| 120 | 6.851 | 4.787 | 3.949 | 3.480 | 3.174 | 2.956 | 2.792 | 2.663 | 2.559 | 2.472 | 2.336 | 2.192 | 2.035 | 1.950 | 1.860 | 1.656 | 1.533 |
| ∞ | 6.660 | 4.626 | 3.801 | 3.338 | 3.036 | 2.820 | 2.657 | 2.529 | 2.425 | 2.339 | 2.203 | 2.056 | 1.897 | 1.810 | 1.716 | 1.495 | 1.351 |
11.7 The same alpha, four distributions
| Distribution | Parameters | α = 0.10 | α = 0.05 | α = 0.01 | Tail used |
|---|---|---|---|---|---|
| Z | none | 1.6449 | 1.9600 | 2.5758 | two |
| Z | none | 1.2816 | 1.6449 | 2.3263 | one, right |
| T | df = 10 | 1.8125 | 2.2281 | 3.1693 | two |
| T | df = 30 | 1.6973 | 2.0423 | 2.7500 | two |
| T | df = 100 | 1.6602 | 1.9840 | 2.6259 | two |
| Chi-square | df = 1 | 2.7055 | 3.8415 | 6.6349 | right |
| Chi-square | df = 5 | 9.2364 | 11.0705 | 15.0863 | right |
| Chi-square | df = 10 | 15.9872 | 18.3070 | 23.2093 | right |
| F | (1, 10) | 3.2850 | 4.9646 | 10.0443 | right |
| F | (3, 20) | 2.3801 | 3.0984 | 4.9382 | right |
| F | (5, 30) | 2.0492 | 2.5336 | 3.6990 | right |
Notice the relationship in the df = 1 rows: 3.8415 is exactly 1.9600 squared, and 6.6349 is 2.5758 squared. A chi-square with one degree of freedom is the square of a standard normal, which is not a coincidence but a definition.
11.8 Degrees of freedom, by test
| Test | Distribution | Degrees of freedom | Example |
|---|---|---|---|
| One-sample t-test | t | n − 1 | n = 12 gives df = 11 |
| Paired t-test | t | pairs − 1 | 10 pairs gives df = 9 |
| Two-sample t-test, pooled | t | n₁ + n₂ − 2 | 10 and 10 gives df = 18 |
| Two-sample t-test, Welch | t | Welch-Satterthwaite, usually fractional | often around 15.49 |
| Chi-square goodness of fit | chi-square | categories − 1 | 6 categories gives df = 5 |
| Chi-square independence | chi-square | (rows − 1) × (columns − 1) | 3 by 4 table gives df = 6 |
| Chi-square for a variance | chi-square | n − 1 | n = 20 gives df = 19 |
| One-way ANOVA | F | k − 1 and N − k | 3 groups of 8 gives 2 and 21 |
| Two variances compared | F | n₁ − 1 and n₂ − 1 | 10 and 10 gives 9 and 9 |
| Regression, overall F | F | predictors and N − predictors − 1 | 3 predictors, n = 50 gives 3 and 46 |
| Regression, single coefficient | t | N − predictors − 1 | 3 predictors, n = 50 gives df = 46 |
| Correlation coefficient | t | n − 2 | n = 25 gives df = 23 |
11.9 Excel, R and Python side by side
| Critical value | Excel | R | Python (SciPy) |
|---|---|---|---|
| Z, two-tailed | NORM.S.INV(1-a/2) | qnorm(1-a/2) | stats.norm.ppf(1-a/2) |
| Z, one-tailed | NORM.S.INV(1-a) | qnorm(1-a) | stats.norm.ppf(1-a) |
| T, two-tailed | T.INV.2T(a,df) | qt(1-a/2,df) | stats.t.ppf(1-a/2,df) |
| T, one-tailed | T.INV(1-a,df) | qt(1-a,df) | stats.t.ppf(1-a,df) |
| Chi-square, right | CHISQ.INV.RT(a,df) | qchisq(1-a,df) | stats.chi2.ppf(1-a,df) |
| F, right | F.INV.RT(a,d1,d2) | qf(1-a,d1,d2) | stats.f.ppf(1-a,d1,d2) |
| Argument convention | mixed: .RT and .2T take alpha, the rest take cumulative | always cumulative | always cumulative |
11.10 How to read any of these tables
| Step | What to do | Common error |
|---|---|---|
| 1 | Identify the distribution from your test | Using z for a small-sample mean |
| 2 | Work out the degrees of freedom | Using n instead of n − 1 |
| 3 | Decide the tail, before seeing the data | Choosing one tail after seeing the direction |
| 4 | Pick the correct column: two-tailed or one | Reading the one-tailed column for a two-tailed test |
| 5 | Read the value at that row and column | Reading across from the wrong row on wide tables |
| 6 | Compare with your statistic in absolute terms | Forgetting the absolute value on a negative statistic |
💡 12. Eight Worked Examples
Every number below was computed with the calculator on this page and cross-checked against SciPy. Each example has its own colour and its own figure showing the distribution with the rejection region shaded. Examples 5 and 7 are the two mistakes worth studying: both flip a decision and neither produces any error message.
Setup: A z-test at α = 0.05. No degrees of freedom are needed.
| Distribution | Standard normal |
|---|---|
| Alpha | 0.05 |
| Two-tailed critical value | ±1.9600 |
| One-tailed critical value | 1.6449 |
| Area in each tail, two-tailed | 0.025 |
| Area in the single tail, one-tailed | 0.05 |
| At alpha 0.01, two-tailed | ±2.5758 |
| At alpha 0.01, one-tailed | 2.3263 |
Reading it: The two-tailed value of 1.9600 is the most quoted number in statistics. The one-tailed value at the same alpha is only 1.6449, because all 5% sits in a single tail rather than being split into two lots of 2.5%. That gap is why choosing your tail after seeing which way the data went is indefensible: it converts a nominal 5% test into a 10% one while you report it as 5%.
Setup: A two-tailed t-test at α = 0.05 with df = 10.
| Distribution | Student's t |
|---|---|
| Degrees of freedom | 10 |
| Critical value | ±2.2281 |
| Same test at df = 1 | ±12.7062 |
| Same test at df = 30 | ±2.0423 |
| Same test at df = 100 | ±1.9840 |
| Normal (z) limit | ±1.9600 |
| How much larger than z at df = 10 | 13.7% |
Reading it: The t critical value starts at an extraordinary 12.7062 with one degree of freedom and falls steadily: 2.2281 at df = 10, 2.0423 at df = 30, 1.9840 at df = 100, converging on the normal 1.9600. The reason is that t accounts for uncertainty in your estimate of the standard deviation, and with a tiny sample that estimate is nearly worthless. The heavier tails are visible in the figure. This is honest rather than harsh: a small sample genuinely cannot establish much.
Setup: 120 dice rolls giving counts 22, 17, 20, 26, 14, 21. Is the die fair?
| Observed counts | 22, 17, 20, 26, 14, 21 |
|---|---|
| Total rolls | 120 |
| Expected under fairness | 20 in each category |
| Chi-square statistic | 4.3000 |
| Degrees of freedom | categories − 1 = 5 |
| Critical value at 0.05 | 11.0705 |
| p-value | 0.5071 |
| Decision | Do not reject. The die looks fair |
Reading it: The statistic of 4.30 is nowhere near the critical value of 11.0705, so there is no evidence against fairness. Note the shape of the distribution in the figure: chi-square cannot be negative and is right-skewed, with a mean equal to its degrees of freedom. A statistic near 5 is exactly what chance predicts here. Only the right tail is shaded, because a small chi-square means the data fit the null better than expected, which is not evidence against it.
Setup: Three sites of 8 observations each, compared by one-way ANOVA.
| Groups | 3 |
|---|---|
| Total observations | 24 |
| Numerator df | groups − 1 = 2 |
| Denominator df | N − groups = 21 |
| F statistic | 29.8834 |
| Critical value F(2,21) at 0.05 | 3.4668 |
| p-value | 7.200e-07 |
| Decision | Reject. At least one group mean differs |
| At alpha 0.01 instead | 5.7804 |
Reading it: The F statistic of 29.88 dwarfs the critical value of 3.4668, so the null of equal means is rejected decisively. What ANOVA does not tell you is which groups differ, only that at least one does; that requires post-hoc comparisons with a correction for multiplicity. Note also that a significant F says nothing about the size of the differences. The figure shows the F distribution is right-skewed and strictly positive, which is why only the upper tail is ever used.
Setup: The same alpha, the same two numbers, entered in the wrong order.
| F(3, 20) at 0.05 | 3.0984 |
|---|---|
| F(20, 3) at 0.05 | 8.6602 |
| Ratio between them | 2.80 times |
| F(3, 20) at 0.01 | 4.9382 |
| F(20, 3) at 0.01 | 26.6898 |
| Consequence of the error | a real effect declared non-significant |
| Which is which | numerator first, always |
Reading it: These are not close. Using 8.6602 where 3.0984 belongs would make you retain a null hypothesis you should have rejected, and nothing in any software will warn you. The F distribution is not symmetric in its two parameters, so the order carries real information: the numerator df comes from what you are testing (groups minus one in ANOVA) and the denominator from the residual (observations minus groups). When reading a printed F table, the numerator runs across the top.
Setup: A one-sample t-test giving t(11) = 1.9346, p = 0.0792.
| Test statistic | 1.9346 |
|---|---|
| Degrees of freedom | 11 |
| p-value | 0.0792 |
| Critical value at alpha 0.10 | ±1.7959 |
| Critical value at alpha 0.05 | ±2.2010 |
| Critical value at alpha 0.01 | ±3.1058 |
| Decision at 0.10 | Reject |
| Decision at 0.05 | Do not reject |
| Decision at 0.01 | Do not reject |
Reading it: The same statistic gives opposite verdicts at different alphas: it clears the 0.10 bar of 1.7959 but not the 0.05 bar of 2.2010. This is exactly why alpha must be fixed before you see the data. It also shows the weakness of a bare reject-or-not verdict: a p of 0.0792 is not meaningfully different from one of 0.0492, yet the decision rule treats them as opposites. Report the exact p-value and a confidence interval rather than the verdict alone.
Setup: A small sample, n = 6, giving a statistic of 2.10.
| Sample size | 6 |
|---|---|
| Degrees of freedom | 5 |
| Test statistic | 2.10 |
| Correct critical value, t(5) | ±2.5706 |
| Wrong critical value, z | ±1.9600 |
| Correct decision | Do not reject (2.10 < 2.5706) |
| Wrong decision | Reject (2.10 > 1.9600) |
| True p-value from t(5) | 0.0898 |
| False p-value from z | 0.0357 |
Reading it: This is the most consequential error on the page, because it is invisible. Using the normal critical value of 1.9600 instead of the correct t(5) value of 2.5706 flips the decision from retain to reject. The true p-value is 0.0897 and the false one is 0.0357. Nothing errors, nothing warns you, and the write-up looks perfectly normal. The rule is simple: if you estimated the standard deviation from your sample, you need t, and at small n the difference is decisive.
Setup: A test about a variance with n = 20, where both directions matter.
| Test | Chi-square test for a single variance |
|---|---|
| Sample size | 20 |
| Degrees of freedom | n − 1 = 19 |
| Lower critical value | 8.9065 |
| Upper critical value | 32.8523 |
| Right-tailed value at 0.05 for comparison | 30.1435 |
| Area in each tail | 0.025 |
| Reject if | statistic below 8.907 or above 32.852 |
Reading it: Goodness-of-fit and independence tests are right-tailed because only a large chi-square is evidence against the null. A test about a variance is the exception: a variance that is unusually small can be just as interesting as one that is unusually large, for instance when a process is suspiciously consistent. Here you need both bounds, 8.9065 and 32.8523, with 2.5% in each tail. Note the upper bound is well above the one-tailed 0.05 value of 30.1435, because the alpha has been split.
📋 13. Testing Protocol
A critical value is the last thing you look up and the first thing that can be gamed. Everything that makes it meaningful is decided before you see a single number.
- State the null and alternative hypotheses in writing. The alternative determines the tail, and writing it down before collecting data is what stops it from drifting to match your results.
- Fix alpha in advance. 0.05 is a convention Fisher suggested for convenience, not a law. Choose it deliberately: a stricter alpha protects against false positives at the cost of missing real effects.
- Choose the tail from the hypothesis, not the data. One tail is legitimate only if you would treat a result in the opposite direction exactly as you would treat no result. If a reversal would interest you, use two tails.
- Pick the distribution from the design. Means with an estimated SD go to t, counts go to chi-square, variance ratios and ANOVA go to F, and z only when the population standard deviation is genuinely known.
- Work out the degrees of freedom before you run anything. Section 11.8 lists them by test. This is where most silent errors originate.
- Check the assumptions of the test itself, not just the arithmetic. The critical value is correct regardless; the question is whether the statistic follows that distribution at all.
- Do not peek and continue collecting. Checking whether you have cleared the bar and then adding more data until you do inflates the false positive rate well above your stated alpha.
- Run one primary test. Twenty tests at 5% give you a 64% chance of at least one false positive. Pre-register the primary comparison, or correct for multiplicity and say that you did.
- Report the exact p-value, not just the verdict. Journals expect it, and a bare "significant at 0.05" hides the difference between p = 0.049 and p = 0.0001.
- Report a confidence interval and an effect size alongside. The critical value comparison answers a yes-or-no question that is rarely the one anyone actually cares about.
- State alpha, the tail and the degrees of freedom in the write-up. A critical value without them cannot be checked by a reader.
- Keep a record of the decisions made before data collection. Pre-registration exists precisely because these choices are unverifiable after the fact.
🎯 14. When to Use Each Distribution
Use z when
- The population standard deviation is genuinely known. Rare outside textbooks, quality control with a long-established process, and standardised tests with published norms.
- You are working with proportions, where the standard error is determined by p and n rather than estimated separately.
- The sample is very large, where t has converged on z anyway. Above about n = 100 the difference is under 1%.
- You are building a confidence interval for a percentage, which is where 1.96 earns its fame.
Use t when
- You estimated the standard deviation from your sample. This covers almost every real analysis of means.
- The sample is small. Below about n = 30 the difference between t and z is large enough to change conclusions, as Example 7 shows.
- You are testing a regression coefficient, where the residual standard error is estimated from the data.
- You are unsure. There is never a penalty for using t. It is slightly conservative at large n and correct at small n.
Use chi-square when
- You have counts in categories and want to test whether they match an expected pattern.
- You are testing independence in a contingency table.
- You are testing a hypothesis about a single variance, which is the one case where two tails make sense.
- You are assessing model fit via a likelihood ratio, which follows a chi-square distribution asymptotically.
Use F when
- You are comparing three or more group means via ANOVA.
- You are comparing two variances directly.
- You are testing overall regression significance, or comparing nested models.
Do not use a critical value at all when
| Situation | Why not | What to do instead |
|---|---|---|
| Your data are badly non-normal and n is small | The statistic does not follow the assumed distribution, so the critical value is the wrong cut-off | Mann-Whitney, Wilcoxon, or a permutation test |
| Expected counts below 5 in chi-square | The chi-square approximation breaks down | Fisher's exact test, or combine categories |
| You want to know how big an effect is | A critical value answers a yes-or-no question only | A confidence interval and an effect size |
| You want to show two groups are equivalent | Failing to reject is not evidence of equivalence | A TOST equivalence test with a pre-specified margin |
| You are running many tests | Each carries its own alpha and they accumulate | Bonferroni, Holm, or false discovery rate control |
| Observations are clustered or repeated | Independence fails, so the true distribution is wider | A mixed model with the correct error structure |
| You want the probability that the hypothesis is true | Frequentist tests do not provide this | A Bayesian analysis with an explicit prior |
🔧 15. Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| Excel gave you −1.645 instead of 1.96 | Passed alpha to NORM.S.INV instead of 1 − alpha/2 | =NORM.S.INV(1-0.05/2) |
| Your t critical value looks too big | Passed alpha/2 to T.INV.2T, which halves it again | T.INV.2T takes alpha directly: =T.INV.2T(0.05,df) |
| Chi-square critical value is around 1 instead of 11 | Used CHISQ.INV instead of CHISQ.INV.RT | The .RT version is right-tailed and is what you want |
| F critical value is much larger than expected | Degrees of freedom entered in the wrong order | Numerator first. F(3,20) = 3.098, F(20,3) = 8.660 |
| Your result is significant with z but not with t | Wrong distribution for an estimated SD | Use t. At small n this flips decisions, as Example 7 shows |
| Critical value and p-value seem to disagree | Different tails, or different alpha between the two | They cannot disagree when both use the same alpha and tail |
| Your statistic is negative and the table has no negatives | Tables list the positive bound only | Compare absolute values. The distribution is symmetric for z and t |
| Chi-square statistic came out negative | Arithmetic error, this is impossible | Check the (O − E)² term. Squares cannot be negative |
| Your chi-square p-value looks wrong | Used a two-tailed p on a right-tailed test | Goodness of fit and independence use the right tail only |
| Degrees of freedom off by one | Used n instead of n − 1, or categories instead of categories − 1 | See table 11.8 for every test |
| Two-sample t df looks wrong | Confusing pooled with Welch | Pooled is n₁ + n₂ − 2. Welch is fractional |
| Expected counts below 5 | Sparse categories | Combine categories, or use Fisher's exact test |
| Result changed after you added more data | Optional stopping | Fix the sample size in advance, or use a sequential design |
| The R answer differs from your table lookup | Printed tables round to 3 or 4 decimals | R and this calculator are exact. Trust them over a printed table |
| You cannot find your df in the table | Printed tables jump from 30 to 40 to 60 | Never interpolate. Use the calculator, which handles any df |
| ANOVA is significant but no pair looks different | ANOVA tests all groups jointly | Run post-hoc comparisons with a multiplicity correction |
⚖ 16. Assumptions and Limitations
What a critical value assumes
The critical value itself is exact arithmetic: it is the quantile of a named distribution and cannot be wrong. What can be wrong is the assumption that your statistic follows that distribution. Everything below is about that.
| Assumption | How much it matters | What happens if it fails | How to check |
|---|---|---|---|
| Alpha and tail fixed in advance | Critical | The stated error rate is not the actual one. Nothing reveals it | Pre-registration. Not testable afterwards |
| Independent observations | Critical | The true distribution is wider, so your critical value is too low | A property of the design, not the data |
| Correct distribution chosen | Critical | Using z for an estimated SD understates the bar, as Example 7 shows | Did you estimate the SD? Then use t |
| Correct degrees of freedom | High | Wrong cut-off entirely, and no error message | Table 11.8 |
| Approximate normality (t and z) | Moderate, falling as n grows | Inaccurate coverage below about n = 15 | Histogram, Q-Q plot, Shapiro-Wilk |
| Expected counts of at least 5 (chi-square) | Moderate | The approximation degrades and p-values become unreliable | Compute the expected counts and look |
| Equal variances (ANOVA, pooled t) | Moderate | Inflated false positive rate with unequal group sizes | Variance ratio, or use Welch |
| Normality (F-test for variances) | High | This test is notoriously sensitive to non-normality | Use Levene's or Brown-Forsythe instead |
| One primary test | High | Twenty tests at 5% give a 64% chance of a false positive | Count how many tests you ran |
Limitations of the approach itself
- It answers a yes-or-no question. Statistics at 1.95 and 1.97 receive opposite verdicts despite being nearly identical evidence. The threshold is a convenience, not a natural boundary.
- It says nothing about effect size. With a large enough sample, any non-zero difference clears any critical value. Significance and importance are different questions.
- Failing to clear it is not evidence of no effect. It means this sample could not distinguish the hypotheses, which is partly a statement about your power.
- Alpha is a convention. There is nothing special about 5%. Fisher proposed it as a convenient default and it hardened into a rule he did not intend.
- It does not give the probability that the hypothesis is true. That is a Bayesian quantity requiring a prior. The p-value is the probability of the data given the null, not the reverse.
- Printed tables force interpolation. Real tables jump from df 30 to 40 to 60, and interpolating between rows is an approximation that software makes unnecessary.
- Multiple testing is not handled. Each critical value controls one test's error rate, not the family's.
- The distribution may not apply at all. The critical value is exact for the assumed distribution and irrelevant if your statistic does not follow it.
🏁 17. Conclusion
A critical value is the cut-off your test statistic has to beat. You fix a significance level, look up the point beyond which only that proportion of the distribution lies, and reject the null hypothesis if your statistic is more extreme. The shaded region in chart 1 has an area of exactly alpha, and that single fact explains everything else on this page.
Four distributions cover almost all of applied work. Z is used when the population standard deviation is genuinely known, which is rare, and its value depends only on alpha and the tail: 1.9600 two-tailed at 5%, 1.6449 one-tailed. T is used whenever you estimated the standard deviation from your own data, which is almost always, and it needs degrees of freedom. Chi-square handles counts and categorical data. F handles ANOVA and variance ratios and needs two degrees of freedom in a fixed order.
Three things about those values are worth internalising. First, the tail choice matters enormously: at alpha 0.05 the two-tailed z is 1.9600 and the one-tailed is 1.6449, because all the alpha sits in one tail rather than being split. Choosing the tail after seeing which direction your data went converts a nominal 5% test into a 10% test while you report it as 5%, and nothing in your output reveals it. Second, degrees of freedom change everything except z: the t critical value falls from 12.7062 at df = 1 through 2.2281 at df = 10 to 1.9840 at df = 100, converging on the normal value. Small samples are held to a much higher bar, which is honest rather than harsh. Third, chi-square and F are right-tailed by convention, because only a large statistic is evidence against the null; the exception is a test about a variance, where an unusually small value can matter too.
Two errors on this page flip decisions and produce no warning whatsoever. Using the normal critical value of 1.9600 where a t(5) value of 2.5706 belongs turns a correct retain into a false reject, and the write-up looks entirely normal. Swapping the F degrees of freedom turns 3.0984 into 8.6602, which does the opposite: a real effect declared non-significant. Both are silent, both are common, and both are avoidable by checking the distribution and the argument order before you look anything up.
Critical values and p-values are the same comparison read from opposite ends of the distribution, so they cannot disagree. Tables existed because computing an exact tail area by hand was infeasible; software removed that constraint and journals now expect exact p-values. What tables still do better is make the reasoning visible, which is why every result here is drawn as well as printed.
The last point is the one most worth keeping. A critical value answers a yes-or-no question, and it is rarely the question anyone actually has. Clearing the bar means the effect is detectable at your sample size, not that it is large or important, and with enough data any non-zero difference clears any threshold. Failing to clear it is not evidence that nothing is there. Report the exact p-value, a confidence interval and an effect size, and treat the threshold as one input to a judgement rather than the judgement itself.
❓ 18. Frequently Asked Questions
What is a critical value in statistics?
How do you find the critical value?
NORM.S.INV(1-alpha/2) for z or T.INV.2T(alpha,df) for t; in R it is qnorm(1-alpha/2) or qt(1-alpha/2,df); in Python it is stats.norm.ppf(1-alpha/2) or stats.t.ppf(1-alpha/2,df). Or just use the calculator on this page, which handles all four distributions.What is the z critical value for 95% confidence?
Why is the one-tailed critical value smaller than the two-tailed one?
Can I choose one-tailed after seeing my data?
What are degrees of freedom and how do I work them out?
Should I use z or t?
Why are chi-square and F tests only right-tailed?
What is the chi-square critical value at 0.05?
Does the order of the F degrees of freedom matter?
What is the difference between a critical value and a p-value?
What happens if my statistic exactly equals the critical value?
How does alpha change the critical value?
Is 1.96 always the right critical value?
Do I still need critical value tables now that software gives p-values?
Why does my printed table not have my degrees of freedom?
My critical value comparison and my p-value disagree. What went wrong?
Does clearing the critical value mean my result is important?
What if my statistic does not clear the bar?
Why is alpha 0.05 the standard?
🔖 19. Cite This Tool
🔗 20. Related Calculators
📖 21. Glossary
| Term | Meaning |
|---|---|
| Critical value | The cut-off marking the edge of the rejection region. Reject if your statistic is beyond it. |
| Rejection region | The set of statistic values leading to rejection. Its area equals alpha by construction. |
| Acceptance region | The complement. A poor name, since you never accept the null, only fail to reject it. |
| Alpha (α) | The significance level. The false positive rate you agree to tolerate, fixed in advance. |
| Test statistic | A single number summarising how far your data sit from what the null predicts. |
| Null hypothesis (H₀) | The proposition of no effect, which the test attempts to rule out. |
| Alternative hypothesis (H₁) | What you conclude if you reject. Its form determines the tail. |
| Two-tailed test | Tests for a difference in either direction. Alpha is split between both tails. |
| One-tailed test | Tests in one direction only. All of alpha sits in one tail, so the cut-off is closer in. |
| Degrees of freedom | The number of values free to vary. Sets the shape of t, chi-square and F. |
| P-value | The probability of a statistic at least this extreme if the null were true. |
| Quantile function | The inverse of the cumulative distribution. What actually computes a critical value. |
| Standard normal (z) | Mean 0, SD 1. No degrees of freedom, so its critical values are fixed. |
| Student's t | Like the normal but with heavier tails, to account for an estimated standard deviation. |
| Chi-square | A right-skewed distribution of squared quantities. Mean equals its degrees of freedom. |
| F distribution | A ratio of two variances. Needs two degrees of freedom, and the order matters. |
| Type I error | A false positive: rejecting a true null. Its rate is alpha. |
| Type II error | A false negative: failing to reject a false null. Its rate is beta. |
| Power | 1 minus beta. The probability of detecting an effect that is really there. |
| Goodness of fit | A chi-square test of whether observed counts match an expected pattern. |
| Test of independence | A chi-square test of whether two categorical variables are related. |
| ANOVA | Analysis of variance. Compares three or more means using an F statistic. |
| Welch's correction | An adjustment for unequal variances that produces fractional degrees of freedom. |
| Optional stopping | Collecting more data until the result clears the bar. Badly inflates false positives. |
| Multiple comparisons | Running many tests, each with its own alpha, so errors accumulate across the family. |
| Pre-registration | Recording alpha, tail and test before data collection, so the choices are verifiable. |
| Effect size | How large a difference is, independent of sample size. What a critical value cannot tell you. |
📚 22. References
- Student [Gosset, W. S.] (1908). The probable error of a mean. Biometrika, 6(1), 1-25. doi.org/10.2307/2331554
- Fisher, R. A. (1925). Statistical Methods for Research Workers. Oliver and Boyd. archive.org
- Fisher, R. A. (1922). On the interpretation of chi-square from contingency tables, and the calculation of P. Journal of the Royal Statistical Society, 85(1), 87-94. doi.org/10.2307/2340521
- Pearson, K. (1900). On the criterion that a given system of deviations from the probable in the case of a correlated system of variables is such that it can be reasonably supposed to have arisen from random sampling. Philosophical Magazine, 50(302), 157-175. doi.org/10.1080/14786440009463897
- Neyman, J., & Pearson, E. S. (1933). On the problem of the most efficient tests of statistical hypotheses. Philosophical Transactions of the Royal Society A, 231, 289-337. doi.org/10.1098/rsta.1933.0009
- Snedecor, G. W., & Cochran, W. G. (1989). Statistical Methods (8th ed.). Iowa State University Press. wiley.com
- Welch, B. L. (1947). The generalization of Student's problem when several different population variances are involved. Biometrika, 34(1-2), 28-35. doi.org/10.1093/biomet/34.1-2.28
- Wasserstein, R. L., & Lazar, N. A. (2016). The ASA statement on p-values: Context, process, and purpose. The American Statistician, 70(2), 129-133. doi.org/10.1080/00031305.2016.1154108
- Greenland, S., et al. (2016). Statistical tests, p-values, confidence intervals, and power: A guide to misinterpretations. European Journal of Epidemiology, 31, 337-350. doi.org/10.1007/s10654-016-0149-3
- Wasserstein, R. L., Schirm, A. L., & Lazar, N. A. (2019). Moving to a world beyond "p < 0.05". The American Statistician, 73(sup1), 1-19. doi.org/10.1080/00031305.2019.1583913
- Simmons, J. P., Nelson, L. D., & Simonsohn, U. (2011). False-positive psychology. Psychological Science, 22(11), 1359-1366. doi.org/10.1177/0956797611417632
- Cohen, J. (1994). The earth is round (p < .05). American Psychologist, 49(12), 997-1003. doi.org/10.1037/0003-066X.49.12.997
- Lakens, D. (2013). Calculating and reporting effect sizes to facilitate cumulative science. Frontiers in Psychology, 4, 863. doi.org/10.3389/fpsyg.2013.00863
- Delacre, M., Lakens, D., & Leys, C. (2017). Why psychologists should by default use Welch's t-test instead of Student's t-test. International Review of Social Psychology, 30(1), 92-101. doi.org/10.5334/irsp.82
- Cochran, W. G. (1952). The chi-square test of goodness of fit. Annals of Mathematical Statistics, 23(3), 315-345. doi.org/10.1214/aoms/1177729380
- Box, G. E. P. (1953). Non-normality and tests on variances. Biometrika, 40(3-4), 318-335. doi.org/10.1093/biomet/40.3-4.318
- Press, W. H., Teukolsky, S. A., Vetterling, W. T., & Flannery, B. P. (2007). Numerical Recipes: The Art of Scientific Computing (3rd ed.). Cambridge University Press. numerical.recipes
- Abramowitz, M., & Stegun, I. A. (1964). Handbook of Mathematical Functions. National Bureau of Standards. personal.math.ubc.ca
- Virtanen, P., et al. (2020). SciPy 1.0: Fundamental algorithms for scientific computing in Python. Nature Methods, 17, 261-272. doi.org/10.1038/s41592-019-0686-2
- R Core Team (2024). R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing. r-project.org
