How to Find the Z Critical Value in Python?

In statistics, the Z critical value represents a threshold on the standard normal distribution used to determine statistical significance in hypothesis testing. When your test statistic exceeds this critical value, the result is considered statistically significant.

What is Z Critical Value?

The Z critical value is a point on the standard normal distribution that separates the rejection region from the non-rejection region in hypothesis testing. When you perform a hypothesis test, you compare your test statistic to this critical value to determine if your results are statistically significant.

If the absolute value of your test statistic exceeds the Z critical value, the results are considered statistically significant, meaning you can reject the null hypothesis.

Syntax

In Python, you can find the Z critical value using the scipy.stats.norm.ppf() method ?

scipy.stats.norm.ppf(q)

Where q represents the cumulative probability (significance level) to use.

Finding Z Critical Values for Different Test Types

Left-tailed Test

For a left-tailed test with ? = 0.05 significance level ?

import scipy.stats

# Find Z critical value for left-tailed test
z_critical = scipy.stats.norm.ppf(0.05)
print(f"Z critical value: {z_critical:.4f}")
Z critical value: -1.6449

The Z critical value is -1.6449. The test results are statistically significant if the test statistic is less than this value.

Right-tailed Test

For a right-tailed test with ? = 0.05 significance level ?

import scipy.stats

# Find Z critical value for right-tailed test
z_critical = scipy.stats.norm.ppf(1 - 0.05)
print(f"Z critical value: {z_critical:.4f}")
Z critical value: 1.6449

The Z critical value is 1.6449. The test results are statistically significant if the test statistic is greater than this value.

Two-tailed Test

For a two-tailed test with ? = 0.05 significance level ?

import scipy.stats

# Find Z critical values for two-tailed test
z_critical = scipy.stats.norm.ppf(1 - 0.05/2)
print(f"Z critical values: ±{z_critical:.4f}")
print(f"Lower critical value: {-z_critical:.4f}")
print(f"Upper critical value: {z_critical:.4f}")
Z critical values: ±1.9600
Lower critical value: -1.9600
Upper critical value: 1.9600

For two-tailed tests, there are always two critical values: -1.9600 and +1.9600. The test results are statistically significant if the test statistic is either less than -1.9600 or greater than +1.9600.

Common Significance Levels

Here are Z critical values for common significance levels ?

import scipy.stats

significance_levels = [0.01, 0.05, 0.10]

print("Two-tailed Z critical values:")
for alpha in significance_levels:
    z_critical = scipy.stats.norm.ppf(1 - alpha/2)
    print(f"? = {alpha}: ±{z_critical:.4f}")
Two-tailed Z critical values:
? = 0.01: ±2.5758
? = 0.05: ±1.9600
? = 0.10: ±1.6449

Conclusion

Z critical values are essential for hypothesis testing in statistics. Use scipy.stats.norm.ppf() to calculate these values based on your significance level and test type (left-tailed, right-tailed, or two-tailed).

Updated on: 2026-03-26T22:49:25+05:30

988 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements