Compute the sum of absolute values for all iterated values.

The sum of absolute values is defined as

s equals sigma-summation Underscript i equals 0 Overscript n minus 1 Endscripts StartAbsoluteValue x Subscript i Baseline EndAbsoluteValue


var itersumabs = require( '@stdlib/stats/iter/sumabs' );

itersumabs( iterator )

Computes the sum of absolute values for all iterated values.

var array2iterator = require( '@stdlib/array/to-iterator' );

var arr = array2iterator( [ 1.0, 2.0, -3.5, 4.0 ] );

var s = itersumabs( arr );
// returns 10.5


  • If an iterated value is non-numeric (including NaN), the returned iterator returns NaN. If non-numeric iterated values are possible, you are advised to provide an iterator which type checks and handles non-numeric values accordingly.
  • For iterators which can generate many values or which may output large numbers, care should be taken to prevent overflow.


var runif = require( '@stdlib/random/iter/uniform' );
var itersumabs = require( '@stdlib/stats/iter/sumabs' );

// Create an iterator for generating uniformly distributed pseudorandom numbers:
var rand = runif( -10.0, 10.0, {
    'seed': 1234,
    'iter': 100

// Compute the sum of absolute values:
var s = itersumabs( rand );
// returns <number>

console.log( 'sumabs: %d.', s );