Kumaraswamy
Kumaraswamy's double bounded distribution.
Usage
var kumaraswamy = require( '@stdlib/stats/base/dists/kumaraswamy' );
kumaraswamy
Kumaraswamy's double bounded distribution.
var dist = kumaraswamy;
// returns {...}
The namespace contains the following distribution functions:
cdf( x, a, b )
: Kumaraswamy's double bounded distribution cumulative distribution function.logcdf( x, a, b )
: evaluate the natural logarithm of the cumulative distribution function for a Kumaraswamy's double bounded distribution.logpdf( x, a, b )
: evaluate the natural logarithm of the probability density function for a Kumaraswamy's double bounded distribution.pdf( x, a, b )
: Kumaraswamy's double bounded distribution probability density function.quantile( p, a, b )
: Kumaraswamy's double bounded distribution quantile function.
The namespace contains the following functions for calculating distribution properties:
kurtosis( a, b )
: Kumaraswamy's double bounded distribution excess kurtosis.mean( a, b )
: Kumaraswamy's double bounded distribution expected value.median( a, b )
: Kumaraswamy's double bounded distribution median.mode( a, b )
: Kumaraswamy's double bounded distribution mode.skewness( a, b )
: Kumaraswamy's double bounded distribution skewness.stdev( a, b )
: Kumaraswamy's double bounded distribution standard deviation.variance( a, b )
: Kumaraswamy's double bounded distribution variance.
The namespace contains a constructor function for creating a Kumaraswamy's double bounded distribution object.
Kumaraswamy( [a, b] )
: Kumaraswamy's double bounded distribution constructor.
var Kumaraswamy = require( '@stdlib/stats/base/dists/kumaraswamy' ).Kumaraswamy;
var dist = new Kumaraswamy( 2.0, 4.0 );
var y = dist.logpdf( 0.8 );
// returns ~-1.209
Examples
var kumaraswamy = require( '@stdlib/stats/base/dists/kumaraswamy' );
// Create a Kumaraswamy distribution object:
var a = 2.0;
var b = 5.0;
var dist = new kumaraswamy.Kumaraswamy( a, b );
// Calculate basic distribution properties:
console.log( 'Mean: %d', dist.mean );
console.log( 'Median: %d', dist.median );
console.log( 'Mode: %d', dist.mode );
console.log( 'Variance: %d', dist.variance );
// Evaluate the probability density function (PDF):
var x = 0.5;
var y = dist.pdf( x );
console.log( 'PDF at x = %d: %d', x, y );
// Evaluate the cumulative distribution function (CDF):
y = dist.cdf( x );
console.log( 'CDF at x = %d: %d', x, y );
// Evaluate the natural logarithm of PDF and CDF:
console.log( 'Log PDF at x = %d: %d', x, dist.logpdf( x ) );
console.log( 'Log CDF at x = %d: %d', x, dist.logcdf( x ) );
// Calculate the quantile for a given probability:
var p = 0.75;
x = dist.quantile( p );
console.log( 'Quantile at p = %d: %d', p, x );
// Use standalone distribution functions:
x = 0.3;
y = kumaraswamy.pdf( x, a, b );
console.log( 'Standalone PDF at x = %d: %d', x, y );
y = kumaraswamy.cdf( x, a, b );
console.log( 'Standalone CDF at x = %d: %d', x, y );
y = kumaraswamy.quantile( 0.9, a, b );
console.log( 'Standalone Quantile at p = 0.9: %d', y );
// Calculate additional distribution properties:
console.log( 'Kurtosis: %d', kumaraswamy.kurtosis( a, b ) );
console.log( 'Skewness: %d', kumaraswamy.skewness( a, b ) );
console.log( 'Standard Deviation: %d', kumaraswamy.stdev( a, b ) );
// Demonstrate the effect of different shape parameters:
console.log( '\nEffect of shape parameters:' );
var shapes = [
[ 0.5, 0.5 ],
[ 5.0, 1.0 ],
[ 1.0, 5.0 ],
[ 2.0, 2.0 ],
[ 10.0, 10.0 ]
];
var params;
var i;
for ( i = 0; i < shapes.length; i++ ) {
params = shapes[i];
console.log( '\na = %d, b = %d', params[0], params[1] );
console.log( 'Mean: %d', kumaraswamy.mean( params[0], params[1] ) );
console.log( 'Median: %d', kumaraswamy.median( params[0], params[1] ) );
console.log( 'Mode: %d', kumaraswamy.mode( params[0], params[1] ) );
console.log( 'Skewness: %d', kumaraswamy.skewness( params[0], params[1] ) );
}