The negative binomial distribution models the number of failures
before a specified number of successes in a series of Bernoulli trials.
A Bernoulli trial is an experiment with two possible outcomes, labeled 'success'
and 'failure,' where the probability of success has a fixed value for all trials.
The negative binomial distribution is related to the
The Binomial Distribution.
Where the binomial distribution models the number of successful trials
for a given total number of trials, the negative binomial distribution
can be used to model the total number of trials for a given number of
successful trials.
The negative binomial distribution has two parameters: the number of successful trials,
and the probability of success in each trial. If the number of trials is equal to 1,
the negative binomial distribution reduces to the
The Geometric Distribution.
Note that the distribution as defined here models only the number of failures, not the total number of trials.
Practical examples include:
In jury selection, the number of rejected candidates before 12 jurors
have been selected has a negative binomial distribution.
When playing a video game where the probability of completing
a level is constant, the total number of levels completed
before the three lives are used up has a negative binomial distribution.
The negative binomial distribution is sometimes called
the Pascal distribution or the Polya distribution.
The negative binomial distribution is implemented by the NegativeBinomialDistribution class. It has
one constructor which takes two arguments. The first argument is the number of successful trials. The second
parameter is the probability of success of a trial. The probability must be between 0 and 1. The following constructs
a negative binomial distribution for 12 successes and probability of success 0.35:
var negativeBinomial = new NegativeBinomialDistribution(12, 0.35);
Dim negativeBinomial = New NegativeBinomialDistribution(12, 0.35)
No code example is currently available or this language may not be supported.
let negativeBinomial = NegativeBinomialDistribution(12, 0.35)
The NegativeBinomialDistribution class has two specific properties. NumberOfTrials returns the
number of successful trials. ProbabilityOfSuccess
returns the probability of success of a trial.
NegativeBinomialDistribution has one static (Shared in Visual Basic) method, Sample, which
generates a random sample using a user-supplied uniform random number generator.
var random = new MersenneTwister();
int sample = NegativeBinomialDistribution.Sample(random, 12, 0.35);
Dim random = New MersenneTwister()
Dim sample = NegativeBinomialDistribution.Sample(random, 12, 0.35)
No code example is currently available or this language may not be supported.
let random = MersenneTwister()
let sample = NegativeBinomialDistribution.Sample(random, 12, 0.35)
The above example uses the MersenneTwister class to generate uniform random numbers.
For details of the properties and methods common to all
discrete probability distribution classes, see the topic on
Discrete Distributions.