binomtest — SciPy v1.15.2 Manual (original) (raw)
scipy.stats.
scipy.stats.binomtest(k, n, p=0.5, alternative='two-sided')[source]#
Perform a test that the probability of success is p.
The binomial test [1] is a test of the null hypothesis that the probability of success in a Bernoulli experiment is p.
Details of the test can be found in many texts on statistics, such as section 24.5 of [2].
Parameters:
kint
The number of successes.
nint
The number of trials.
pfloat, optional
The hypothesized probability of success, i.e. the expected proportion of successes. The value must be in the interval0 <= p <= 1
. The default value is p = 0.5
.
alternative{‘two-sided’, ‘greater’, ‘less’}, optional
Indicates the alternative hypothesis. The default value is ‘two-sided’.
Returns:
resultBinomTestResult instance
The return value is an object with the following attributes:
kint
The number of successes (copied from binomtest input).
nint
The number of trials (copied from binomtest input).
alternativestr
Indicates the alternative hypothesis specified in the input to binomtest. It will be one of 'two-sided'
, 'greater'
, or 'less'
.
statisticfloat
The estimate of the proportion of successes.
pvaluefloat
The p-value of the hypothesis test.
The object has the following methods:
proportion_ci(confidence_level=0.95, method=’exact’) :
Compute the confidence interval for statistic
.
Notes
Added in version 1.7.0.
References
[2]
Jerrold H. Zar, Biostatistical Analysis (fifth edition), Prentice Hall, Upper Saddle River, New Jersey USA (2010)
Examples
from scipy.stats import binomtest
A car manufacturer claims that no more than 10% of their cars are unsafe. 15 cars are inspected for safety, 3 were found to be unsafe. Test the manufacturer’s claim:
result = binomtest(3, n=15, p=0.1, alternative='greater') result.pvalue 0.18406106910639114
The null hypothesis cannot be rejected at the 5% level of significance because the returned p-value is greater than the critical value of 5%.
The test statistic is equal to the estimated proportion, which is simply3/15
:
We can use the proportion_ci() method of the result to compute the confidence interval of the estimate:
result.proportion_ci(confidence_level=0.95) ConfidenceInterval(low=0.05684686759024681, high=1.0)