Skip to content

Commit

Permalink
issue#1632 resolved
Browse files Browse the repository at this point in the history
  • Loading branch information
ruthwikchikoti committed Jul 15, 2024
1 parent 722452c commit 2786956
Show file tree
Hide file tree
Showing 2 changed files with 139 additions and 0 deletions.
70 changes: 70 additions & 0 deletions lib/node_modules/@stdlib/stats/base/dists/kumaraswamy/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,76 @@ var objectKeys = require( '@stdlib/utils/keys' );
var kumaraswamy = require( '@stdlib/stats/base/dists/kumaraswamy' );

console.log( objectKeys( 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 );

// Generate random numbers
var r = new Array( 5 );
for ( var i = 0; i < 5; i++ ) {
r[ i ] = kumaraswamy.random( a, b );
}
console.log( 'Random samples: %s', r.join( ', ' ) );

// Use standalone 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]
];

for ( var i = 0; i < shapes.length; i++ ) {
var 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] ) );
}
```

</section>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,72 @@ var objectKeys = require( '@stdlib/utils/keys' );
var kumaraswamy = require( './../lib' );

console.log( objectKeys( 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 );

// Generate random numbers
var r = new Array( 5 );
for ( var i = 0; i < 5; i++ ) {
r[ i ] = kumaraswamy.random( a, b );
}
console.log( 'Random samples: %s', r.join( ', ' ) );

// Use standalone 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]
];
for ( var i = 0; i < shapes.length; i++ ) {
var 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] ) );
}

0 comments on commit 2786956

Please sign in to comment.