Negative Binomial

Negative binomial distribution constructor.

Usage

var NegativeBinomial = require( '@stdlib/math/base/dists/negative-binomial/ctor' );

NegativeBinomial( [r, p] )

Returns a negative binomial distribution object.

var nbinomial = new NegativeBinomial();

var mu = nbinomial.mean;
// returns 1.0

By default, r = 1.0 and p = 0.5. To create a distribution having a different r (number of trials until experiment is stopped) and p (success probability), provide parameter values.

var nbinomial = new NegativeBinomial( 4.0, 0.2 );

var mu = nbinomial.mean;
// returns 16.0

nbinomial

A negative binomial distribution object has the following properties and methods...

Writable Properties

nbinomial.r

Number of trials of the distribution. r must be a positive number.

var nbinomial = new NegativeBinomial();

var r = nbinomial.r;
// returns 1.0

binomial.r = 4.5;

r = nbinomial.r;
// returns 4.5

nbinomial.p

Success probability of the distribution. p must be a number between 0 and 1.

var nbinomial = new NegativeBinomial( 4.0, 0.2 );

var p = nbinomial.p;
// returns 0.2

binomial.p = 0.7;

p = nbinomial.p;
// returns 0.7

Computed Properties

NegativeBinomial.prototype.kurtosis

Returns the excess kurtosis.

var nbinomial = new NegativeBinomial( 12.0, 0.4 );

var kurtosis = nbinomial.kurtosis;
// returns ~0.522

NegativeBinomial.prototype.mean

Returns the expected value.

var nbinomial = new NegativeBinomial( 12.0, 0.4 );

var mu = nbinomial.mean;
// returns ~18.0

NegativeBinomial.prototype.mode

Returns the mode.

var nbinomial = new NegativeBinomial( 12.0, 0.4 );

var mode = nbinomial.mode;
// returns 16.0

NegativeBinomial.prototype.skewness

Returns the skewness.

var nbinomial = new NegativeBinomial( 12.0, 0.4 );

var skewness = nbinomial.skewness;
// returns ~0.596

NegativeBinomial.prototype.stdev

Returns the standard deviation.

var nbinomial = new NegativeBinomial( 12.0, 0.4 );

var s = nbinomial.stdev;
// returns ~6.708

NegativeBinomial.prototype.variance

Returns the variance.

var nbinomial = new NegativeBinomial( 12.0, 0.4 );

var s2 = nbinomial.variance;
// returns ~45.0

Methods

NegativeBinomial.prototype.cdf( x )

Evaluates the cumulative distribution function (CDF).

var nbinomial = new NegativeBinomial( 4.0, 0.2 );

var y = nbinomial.cdf( 3.5 );
// returns ~0.033

NegativeBinomial.prototype.logpmf( x )

Evaluates the natural logarithm of the probability mass function (PMF).

var nbinomial = new NegativeBinomial( 4.0, 0.2 );

var y = nbinomial.logpmf( 4.0 );
// returns ~-3.772

NegativeBinomial.prototype.mgf( t )

Evaluates the moment-generating function (MGF).

var nbinomial = new NegativeBinomial( 4.0, 0.2 );

var y = nbinomial.mgf( 0.1 );
// returns ~1.66

NegativeBinomial.prototype.pmf( x )

Evaluates the probability mass function (PMF).

var nbinomial = new NegativeBinomial( 4.0, 0.2 );

var y = nbinomial.pmf( 4.0 );
// returns ~0.023

NegativeBinomial.prototype.quantile( p )

Evaluates the quantile function at probability p.

var nbinomial = new NegativeBinomial( 4.0, 0.2 );

var y = nbinomial.quantile( 0.5 );
// returns 15.0

y = quantile( 1.9 );
// returns NaN

Examples

var NegativeBinomial = require( '@stdlib/math/base/dists/negative-binomial/ctor' );

var nbinomial = new NegativeBinomial( 10.0, 0.4 );

var mu = nbinomial.mean;
// returns 15.0

var mode = nbinomial.mode;
// returns 13.0

var s2 = nbinomial.variance;
// returns ~37.5

var y = nbinomial.cdf( 8.0 );
// returns ~0.135