# statsmodels.stats.proportion.proportions_ztest¶

statsmodels.stats.proportion.proportions_ztest(count, nobs, value=`None`, alternative=`'two-sided'`, prop_var=`False`)[source]

Test for proportions based on normal (z) test

Parameters:
count

the number of successes in nobs trials. If this is array_like, then the assumption is that this represents the number of successes for each independent sample

nobs

the number of trials or observations, with the same length as count.

value`float`, array_like or `None`, `optional`

This is the value of the null hypothesis equal to the proportion in the case of a one sample test. In the case of a two-sample test, the null hypothesis is that prop - prop = value, where prop is the proportion in the two samples. If not provided value = 0 and the null is prop = prop

alternative`str` `in` [‘two-sided’, ‘smaller’, ‘larger’]

The alternative hypothesis can be either two-sided or one of the one- sided tests, smaller means that the alternative hypothesis is `prop < value` and larger means `prop > value`. In the two sample test, smaller means that the alternative hypothesis is `p1 < p2` and larger means `p1 > p2` where `p1` is the proportion of the first sample and `p2` of the second one.

prop_var`False` or `float` `in` (0, 1)

If prop_var is false, then the variance of the proportion estimate is calculated based on the sample proportion. Alternatively, a proportion can be specified to calculate this variance. Common use case is to use the proportion under the Null hypothesis to specify the variance of the proportion estimate.

Returns:
zstat`float`

test statistic for the z-test

p-value`float`

p-value for the z-test

Notes

This uses a simple normal test for proportions. It should be the same as running the mean z-test on the data encoded 1 for event and 0 for no event so that the sum corresponds to the count.

In the one and two sample cases with two-sided alternative, this test produces the same p-value as `proportions_chisquare`, since the chisquare is the distribution of the square of a standard normal distribution.

Examples

``````>>> count = 5
>>> nobs = 83
>>> value = .05
>>> stat, pval = proportions_ztest(count, nobs, value)
>>> print('{0:0.3f}'.format(pval))
0.695
``````
``````>>> import numpy as np
>>> from statsmodels.stats.proportion import proportions_ztest
>>> count = np.array([5, 12])
>>> nobs = np.array([83, 99])
>>> stat, pval = proportions_ztest(count, nobs)
>>> print('{0:0.3f}'.format(pval))
0.159
``````

Last update: Sep 01, 2023