Laplace distribution expected value.
The expected value for a Laplace random variable with location μ and scale b > 0 is
var mean = require( '@stdlib/stats/base/dists/laplace/mean' );Returns the expected value for a Laplace distribution with location parameter mu and scale parameter b.
var y = mean( 2.0, 1.0 );
// returns 2.0
y = mean( 0.0, 1.0 );
// returns 0.0
y = mean( -1.0, 4.0 );
// returns -1.0If provided NaN as any argument, the function returns NaN.
var y = mean( NaN, 1.0 );
// returns NaN
y = mean( 0.0, NaN );
// returns NaNIf provided b <= 0, the function returns NaN.
var y = mean( 0.0, 0.0 );
// returns NaN
y = mean( 0.0, -1.0 );
// returns NaNvar uniform = require( '@stdlib/random/array/uniform' );
var logEachMap = require( '@stdlib/console/log-each-map' );
var mean = require( '@stdlib/stats/base/dists/laplace/mean' );
var opts = {
'dtype': 'float64'
};
var mu = uniform( 10, -5.0, 5.0, opts );
var b = uniform( 10, 0.0, 20.0, opts );
logEachMap( 'µ: %0.4f, b: %0.4f, E(X;µ,b): %0.4f', mu, b, mean );#include "stdlib/stats/base/dists/laplace/mean.h"Returns the expected value for a Laplace distribution with location mu and scale b.
double out = stdlib_base_dists_laplace_mean( 2.0, 1.0 );
// returns 2.0The function accepts the following arguments:
- mu:
[in] doublelocation parameter. - b:
[in] doublescale parameter.
double stdlib_base_dists_laplace_mean( const double mu, const double b );#include "stdlib/stats/base/dists/laplace/mean.h"
#include <stdlib.h>
#include <stdio.h>
static double random_uniform( const double min, const double max ) {
double v = (double)rand() / ( (double)RAND_MAX + 1.0 );
return min + ( v*(max-min) );
}
int main( void ) {
double scale;
double mu;
double y;
int i;
for ( i = 0; i < 25; i++ ) {
mu = random_uniform( -5.0, 5.0 );
scale = random_uniform( 0.0, 20.0 );
y = stdlib_base_dists_laplace_mean( mu, scale );
printf( "µ: %lf, scale: %lf, E(X;µ,scale): %lf\n", mu, scale, y );
}
}