Binomial distributions are used to represent situations can that can be thought as the result of $$n$$ Bernoulli experiments (here the $$n$$ is defined as the size of the experiment). The classical example is $$n$$ independent coin flips, where each coin flip has probability p of success. In this case, the individual probability of flipping heads or tails is given by the Bernoulli(p) distribution, and the probability of having $$x$$ equal results ($$x$$ heads, for example), in $$n$$ trials is given by the Binomial(n, p) distribution. The equation of the Binomial distribution is directly derived from the equation of the Bernoulli distribution.

Binomial(size, p = 0.5)

## Arguments

size The number of trials. Must be an integer greater than or equal to one. When size = 1L, the Binomial distribution reduces to the bernoulli distribution. Often called n in textbooks. The success probability for a given trial. p can be any value in [0, 1], and defaults to 0.5.

## Value

A Binomial object.

## Details

The Binomial distribution comes up when you are interested in the portion of people who do a thing. The Binomial distribution also comes up in the sign test, sometimes called the Binomial test (see stats::binom.test()), where you may need the Binomial C.D.F. to compute p-values.

We recommend reading this documentation on https://alexpghayes.github.io/distributions3, where the math will render with additional detail.

In the following, let $$X$$ be a Binomial random variable with parameter size = $$n$$ and p = $$p$$. Some textbooks define $$q = 1 - p$$, or called $$\pi$$ instead of $$p$$.

Support: $$\{0, 1, 2, ..., n\}$$

Mean: $$np$$

Variance: $$np \cdot (1 - p) = np \cdot q$$

Probability mass function (p.m.f):

$$P(X = k) = {n \choose k} p^k (1 - p)^{n-k}$$

Cumulative distribution function (c.d.f):

$$P(X \le k) = \sum_{i=0}^{\lfloor k \rfloor} {n \choose i} p^i (1 - p)^{n-i}$$

Moment generating function (m.g.f):

$$E(e^{tX}) = (1 - p + p e^t)^n$$

Other discrete distributions: Bernoulli, Categorical, Geometric, HyperGeometric, Multinomial, NegativeBinomial, Poisson

## Examples


set.seed(27)

X <- Binomial(10, 0.2)
X#> Binomial distribution (size = 10, p = 0.2)
random(X, 10)#>   5 0 3 1 1 2 0 0 1 1
pdf(X, 2L)#>  0.3019899log_pdf(X, 2L)#>  -1.197362
cdf(X, 4L)#>  0.9672065quantile(X, 0.7)#>  3
cdf(X, quantile(X, 0.7))#>  0.8791261quantile(X, cdf(X, 7))#>  7