Hypergeometric
Hypergeometric distribution constructor.
Usage
var Hypergeometric = require( '@stdlib/stats/base/dists/hypergeometric/ctor' );
Hypergeometric( N, K, n )
Returns a hypergeometric distribution object with parameters N
(population size), K
(subpopulation size), and n
(number of draws).
var hypergeometric = new Hypergeometric( 20, 15, 5 );
var mu = hypergeometric.mean;
// returns 3.75
hypergeometric
A hypergeometric distribution object has the following properties and methods...
Writable Properties
hypergeometric.N
Population size of the distribution. N
must be a nonnegative integer that is both larger than or equal to K
and n
.
var hypergeometric = new Hypergeometric( 100, 50, 20 );
var N = hypergeometric.N;
// returns 100.0
hypergeometric.N = 60;
N = hypergeometric.N;
// returns 60.0
hypergeometric.K
Subpopulation size of the distribution. K
must be a nonnegative integer that is smaller than or equal to N
.
var hypergeometric = new Hypergeometric( 100, 50, 20 );
var K = hypergeometric.K;
// returns 50.0
hypergeometric.K = 30;
K = hypergeometric.K;
// returns 30.0
hypergeometric.n
Number of draws of the distribution. n
must be a nonnegative integer that is smaller than or equal to N
.
var hypergeometric = new Hypergeometric( 100, 50, 20 );
var n = hypergeometric.n;
// returns 20.0
hypergeometric.n = 80;
n = hypergeometric.n;
// returns 80.0
Computed Properties
Hypergeometric.prototype.kurtosis
Returns the excess kurtosis.
var hypergeometric = new Hypergeometric( 20, 15, 5 );
var kurtosis = hypergeometric.kurtosis;
// returns ~-0.276
Hypergeometric.prototype.mean
Returns the expected value.
var hypergeometric = new Hypergeometric( 20, 15, 5 );
var mu = hypergeometric.mean;
// returns ~3.75
Hypergeometric.prototype.mode
Returns the mode.
var hypergeometric = new Hypergeometric( 20, 15, 5 );
var mode = hypergeometric.mode;
// returns 4.0
Hypergeometric.prototype.skewness
Returns the skewness.
var hypergeometric = new Hypergeometric( 20, 15, 5 );
var skewness = hypergeometric.skewness;
// returns ~-0.323
Hypergeometric.prototype.stdev
Returns the standard deviation.
var hypergeometric = new Hypergeometric( 20, 15, 5 );
var s = hypergeometric.stdev;
// returns ~0.86
Hypergeometric.prototype.variance
Returns the variance.
var hypergeometric = new Hypergeometric( 20, 15, 5 );
var s2 = hypergeometric.variance;
// returns ~0.74
Methods
Hypergeometric.prototype.cdf( x )
Evaluates the cumulative distribution function (CDF).
var hypergeometric = new Hypergeometric( 8, 2, 4 );
var y = hypergeometric.cdf( 0.5 );
// returns ~0.214
Hypergeometric.prototype.logpmf( x )
Evaluates the natural logarithm of the probability mass function (PMF).
var hypergeometric = new Hypergeometric( 8, 2, 4 );
var y = hypergeometric.logpmf( 2.0 );
// returns ~-1.54
Hypergeometric.prototype.pmf( x )
Evaluates the probability mass function (PMF).
var hypergeometric = new Hypergeometric( 8, 2, 4 );
var y = hypergeometric.pmf( 2.0 );
// returns ~0.214
Hypergeometric.prototype.quantile( p )
Evaluates the quantile function at probability p
.
var hypergeometric = new Hypergeometric( 8, 2, 4 );
var y = hypergeometric.quantile( 0.8 );
// returns 2.0
y = hypergeometric.quantile( 1.9 );
// returns NaN
Examples
var Hypergeometric = require( '@stdlib/stats/base/dists/hypergeometric/ctor' );
var hypergeometric = new Hypergeometric( 100, 50, 20 );
var mu = hypergeometric.mean;
// returns 10.0
var mode = hypergeometric.mode;
// returns 10.0
var s2 = hypergeometric.variance;
// returns ~4.04
var y = hypergeometric.cdf( 10.5 );
// returns ~0.598