Compute a maximum absolute value incrementally, ignoring
NaN
values.
var incrnanmaxabs = require( '@stdlib/stats/incr/nanmaxabs' );
Returns an accumulator function which incrementally computes a maximum absolute value, ignoring NaN
values.
var accumulator = incrnanmaxabs();
If provided an input value x
, the accumulator function returns an updated maximum absolute value. If not provided an input value x
, the accumulator function returns the current maximum absolute value.
var accumulator = incrnanmaxabs();
var max = accumulator( 2.0 );
// returns 2.0
max = accumulator( 1.0 );
// returns 2.0
max = accumulator( NaN );
// returns 2.0
max = accumulator( -3.0 );
// returns 3.0
max = accumulator();
// returns 3.0
- Input values are not type checked. If non-numeric inputs are possible, you are advised to type check and handle accordingly before passing the value to the accumulator function.
var uniform = require( '@stdlib/random/base/uniform' );
var bernoulli = require( '@stdlib/random/base/bernoulli' );
var incrnanmaxabs = require( '@stdlib/stats/incr/nanmaxabs' );
// Initialize an accumulator:
var accumulator = incrnanmaxabs();
// For each simulated datum, update the max absolute value...
var i;
for ( i = 0; i < 100; i++ ) {
accumulator( ( bernoulli( 0.8 ) < 1 ) ? NaN : uniform( -50.0, 50.0 ) );
}
console.log( accumulator() );