Skip to content

Latest commit

 

History

History
145 lines (87 loc) · 3.72 KB

File metadata and controls

145 lines (87 loc) · 3.72 KB

meanwd

Compute the arithmetic mean of a one-dimensional ndarray using Welford's algorithm.

The arithmetic mean is defined as

$$\mu = \frac{1}{n} \sum_{i=0}^{n-1} x_i$$

Usage

var meanwd = require( '@stdlib/stats/base/ndarray/meanwd' );

meanwd( arrays )

Computes the arithmetic mean of a one-dimensional ndarray using Welford's algorithm.

var ndarray = require( '@stdlib/ndarray/base/ctor' );

var xbuf = [ 1.0, 3.0, 4.0, 2.0 ];
var x = new ndarray( 'generic', xbuf, [ 4 ], [ 1 ], 0, 'row-major' );

var v = meanwd( [ x ] );
// returns 2.5

The function has the following parameters:

  • arrays: array-like object containing a one-dimensional input ndarray.

Notes

  • If provided an empty one-dimensional ndarray, the function returns NaN.

Examples

var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
var ndarray = require( '@stdlib/ndarray/base/ctor' );
var ndarray2array = require( '@stdlib/ndarray/to-array' );
var meanwd = require( '@stdlib/stats/base/ndarray/meanwd' );

var xbuf = discreteUniform( 10, -50, 50, {
    'dtype': 'generic'
});
var x = new ndarray( 'generic', xbuf, [ xbuf.length ], [ 1 ], 0, 'row-major' );
console.log( ndarray2array( x ) );

var v = meanwd( [ x ] );
console.log( v );

References

  • Welford, B. P. 1962. "Note on a Method for Calculating Corrected Sums of Squares and Products." Technometrics 4 (3). Taylor & Francis: 419–20. doi:10.1080/00401706.1962.10490022.
  • van Reeken, A. J. 1968. "Letters to the Editor: Dealing with Neely's Algorithms." Communications of the ACM 11 (3): 149–50. doi:10.1145/362929.362961.