UNPKG

@stdlib/stats

Version:

Standard library statistical functions.

1,324 lines (1,273 loc) 33.5 kB
/* * @license Apache-2.0 * * Copyright (c) 2021 The Stdlib Authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ // TypeScript Version: 4.1 /* eslint-disable max-lines */ import itercugmean = require( './../../../iter/cugmean' ); import itercuhmean = require( './../../../iter/cuhmean' ); import itercumax = require( './../../../iter/cumax' ); import itercumaxabs = require( './../../../iter/cumaxabs' ); import itercumean = require( './../../../iter/cumean' ); import itercumeanabs = require( './../../../iter/cumeanabs' ); import itercumeanabs2 = require( './../../../iter/cumeanabs2' ); import itercumidrange = require( './../../../iter/cumidrange' ); import itercumin = require( './../../../iter/cumin' ); import itercuminabs = require( './../../../iter/cuminabs' ); import itercuprod = require( './../../../iter/cuprod' ); import itercurange = require( './../../../iter/curange' ); import itercusum = require( './../../../iter/cusum' ); import itercusumabs = require( './../../../iter/cusumabs' ); import itercusumabs2 = require( './../../../iter/cusumabs2' ); import itermax = require( './../../../iter/max' ); import itermaxabs = require( './../../../iter/maxabs' ); import itermean = require( './../../../iter/mean' ); import itermeanabs = require( './../../../iter/meanabs' ); import itermeanabs2 = require( './../../../iter/meanabs2' ); import itermidrange = require( './../../../iter/midrange' ); import itermin = require( './../../../iter/min' ); import iterminabs = require( './../../../iter/minabs' ); import itermmax = require( './../../../iter/mmax' ); import itermmaxabs = require( './../../../iter/mmaxabs' ); import itermmean = require( './../../../iter/mmean' ); import itermmeanabs = require( './../../../iter/mmeanabs' ); import itermmeanabs2 = require( './../../../iter/mmeanabs2' ); import itermmidrange = require( './../../../iter/mmidrange' ); import itermmin = require( './../../../iter/mmin' ); import itermminabs = require( './../../../iter/mminabs' ); import itermprod = require( './../../../iter/mprod' ); import itermrange = require( './../../../iter/mrange' ); import itermsum = require( './../../../iter/msum' ); import itermsumabs = require( './../../../iter/msumabs' ); import itermsumabs2 = require( './../../../iter/msumabs2' ); import iterprod = require( './../../../iter/prod' ); import iterrange = require( './../../../iter/range' ); import iterstdev = require( './../../../iter/stdev' ); import itersum = require( './../../../iter/sum' ); import itersumabs = require( './../../../iter/sumabs' ); import itersumabs2 = require( './../../../iter/sumabs2' ); import itervariance = require( './../../../iter/variance' ); /** * Interface describing the `iter` namespace. */ interface Namespace { /** * Returns an iterator which iteratively computes a cumulative arithmetic geometric mean. * * ## Notes * * - If provided a negative value, the iterated value is `NaN` for all future invocations. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( 0.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercugmean( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercugmean: typeof itercugmean; /** * Returns an iterator which iteratively computes a cumulative arithmetic geometric mean. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( 0.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercuhmean( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercuhmean: typeof itercuhmean; /** * Returns an iterator which iteratively computes a cumulative maximum value. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercumax( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercumax: typeof itercumax; /** * Returns an iterator which iteratively computes a cumulative maximum absolute value. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercumaxabs( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercumaxabs: typeof itercumaxabs; /** * Returns an iterator which iteratively computes a cumulative arithmetic mean. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercumean( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercumean: typeof itercumean; /** * Returns an iterator which iteratively computes a cumulative arithmetic mean of absolute values. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercumeanabs( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercumeanabs: typeof itercumeanabs; /** * Returns an iterator which iteratively computes a cumulative arithmetic mean of squared absolute values. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercumeanabs2( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercumeanabs2: typeof itercumeanabs2; /** * Returns an iterator which iteratively computes a cumulative mid-range. * * ## Notes * * - The mid-range is the arithmetic mean of maximum and minimum values. Accordingly, the mid-range is the midpoint of the range and a measure of central tendency. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercumidrange( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercumidrange: typeof itercumidrange; /** * Returns an iterator which iteratively computes a cumulative minimum value. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercumin( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercumin: typeof itercumin; /** * Returns an iterator which iteratively computes a cumulative minimum absolute value. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercuminabs( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercuminabs: typeof itercuminabs; /** * Returns an iterator which iteratively computes a cumulative product. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercuprod( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercuprod: typeof itercuprod; /** * Returns an iterator which iteratively computes a cumulative range. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercurange( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercurange: typeof itercurange; /** * Returns an iterator which iteratively computes a cumulative sum. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercusum( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercusum: typeof itercusum; /** * Returns an iterator which iteratively computes a cumulative sum of absolute values. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercusumabs( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercusumabs: typeof itercusumabs; /** * Returns an iterator which iteratively computes a cumulative sum of squared absolute values. * * ## Notes * * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itercusumabs2( rand ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itercusumabs2: typeof itercusumabs2; /** * Computes the maximum value of all iterated values. * * @param iterator - input iterator * @returns maximum value * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var m = ns.itermax( rand ); * // returns <number> */ itermax: typeof itermax; /** * Computes the maximum absolute value of all iterated values. * * @param iterator - input iterator * @returns maximum absolute value * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var m = ns.itermaxabs( rand ); * // returns <number> */ itermaxabs: typeof itermaxabs; /** * Computes the arithmetic mean over all iterated values. * * @param iterator - input iterator * @returns arithmetic mean * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var m = ns.itermean( rand ); * // returns <number> */ itermean: typeof itermean; /** * Computes the arithmetic mean of absolute values for all iterated values. * * @param iterator - input iterator * @returns arithmetic mean of absolute values * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var m = ns.itermeanabs( rand ); * // returns <number> */ itermeanabs: typeof itermeanabs; /** * Computes the arithmetic mean of squared absolute values for all iterated values. * * @param iterator - input iterator * @returns arithmetic mean of squared absolute values * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var m = ns.itermeanabs2( rand ); * // returns <number> */ itermeanabs2: typeof itermeanabs2; /** * Computes the mid-range of all iterated values. * * ## Notes * * - The mid-range is the arithmetic mean of maximum and minimum values. Accordingly, the mid-range is the midpoint of the range and a measure of central tendency. * * @param iterator - input iterator * @returns mid-range * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var m = ns.itermidrange( rand ); * // returns <number> */ itermidrange: typeof itermidrange; /** * Computes the minimum value of all iterated values. * * @param iterator - input iterator * @returns minimum value * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var m = ns.itermin( rand ); * // returns <number> */ itermin: typeof itermin; /** * Computes the minimum absolute value of all iterated values. * * @param iterator - input iterator * @returns minimum absolute value * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var m = ns.iterminabs( rand ); * // returns <number> */ iterminabs: typeof iterminabs; /** * Returns an iterator which iteratively computes a moving maximum value. * * ## Notes * * - The `W` parameter defines the number of iterated values over which to compute the moving maximum value. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermmax( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermmax: typeof itermmax; /** * Returns an iterator which iteratively computes a moving maximum absolute value. * * ## Notes * * - The `W` parameter defines the number of iterated values over which to compute the moving maximum absolute value. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermmaxabs( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermmaxabs: typeof itermmaxabs; /** * Returns an iterator which iteratively computes a moving arithmetic mean. * * ## Notes * * - The `W` parameter defines the number of iterated values over which to compute the moving mean. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermmean( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermmean: typeof itermmean; /** * Returns an iterator which iteratively computes a moving arithmetic mean of absolute values. * * ## Notes * * - The `W` parameter defines the number of iterated values over which to compute the moving mean of absolute values. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermmeanabs( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermmeanabs: typeof itermmeanabs; /** * Returns an iterator which iteratively computes a moving arithmetic mean of squared absolute values. * * ## Notes * * - The `W` parameter defines the number of iterated values over which to compute the moving mean of squared absolute values. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermmeanabs2( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermmeanabs2: typeof itermmeanabs2; /** * Returns an iterator which iteratively computes a moving mid-range. * * ## Notes * * - The mid-range is the arithmetic mean of maximum and minimum values. Accordingly, the mid-range is the midpoint of the range and a measure of central tendency. * - The `W` parameter defines the number of iterated values over which to compute the moving mid-range. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermmidrange( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermmidrange: typeof itermmidrange; /** * Returns an iterator which iteratively computes a moving minimum value. * * ## Notes * * - The `W` parameter defines the number of iterated values over which to compute the moving minimum value. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermmin( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermmin: typeof itermmin; /** * Returns an iterator which iteratively computes a moving minimum absolute value. * * ## Notes * * - The `W` parameter defines the number of iterated values over which to compute the moving minimum absolute value. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermminabs( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermminabs: typeof itermminabs; /** * Returns an iterator which iteratively computes a moving product. * * ## Notes * * - The `W` parameter defines the number of iterated values over which to compute the moving product. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermprod( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermprod: typeof itermprod; /** * Returns an iterator which iteratively computes a moving range. * * ## Notes * * - The `W` parameter defines the number of iterated values over which to compute the moving range. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermrange( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermrange: typeof itermrange; /** * Returns an iterator which iteratively computes a moving sum. * * ## Notes * * - The `W` parameter defines the number of iterated values over which to compute the moving sum. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports Symbol.iterator and the provided iterator is iterable, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermsum( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermsum: typeof itermsum; /** * Returns an iterator which iteratively computes a moving sum of absolute values. * * ## Notes * * - The `W` parameter defines the number of iterated values over which to compute the moving sum. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermsumabs( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermsumabs: typeof itermsumabs; /** * Returns an iterator which iteratively computes a moving sum of squared absolute values. * * ## Notes * * - The `W` parameter defines the number of iterated values over which to compute the moving sum. * - As `W` values are needed to fill the window buffer, the first `W-1` returned values are calculated from smaller sample sizes. Until the window is full, each returned value is calculated from all previously iterated values. * - If an environment supports `Symbol.iterator`, the returned iterator is iterable. * * @param iterator - input iterator * @param W - window size * @throws second argument must be a positive integer * @returns iterator * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var it = ns.itermsumabs2( rand, 3 ); * * var v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * v = it.next().value; * // returns <number> * * // ... */ itermsumabs2: typeof itermsumabs2; /** * Computes the product of all iterated values. * * ## Notes * * - For iterators which can generate many values or which may output large numbers, care should be taken to prevent overflow. * * @param iterator - input iterator * @returns product * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var p = ns.iterprod( rand ); * // returns <number> */ iterprod: typeof iterprod; /** * Computes the range of all iterated values. * * @param iterator - input iterator * @returns range * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var v = ns.iterrange( rand ); * // returns <number> */ iterrange: typeof iterrange; /** * Computes the corrected sample standard deviation over all iterated values. * * @param iterator - input iterator * @param mean - known mean * @returns corrected sample standard deviation * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var s = ns.iterstdev( rand ); * // returns <number> */ iterstdev: typeof iterstdev; /** * Computes the sum of all iterated values. * * ## Notes * * - For iterators which can generate many values or which may output large numbers, care should be taken to prevent overflow. * * @param iterator - input iterator * @returns sum * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var v = ns.itersum( rand ); * // returns <number> */ itersum: typeof itersum; /** * Computes the sum of absolute values for all iterated values. * * ## Notes * * - For iterators which can generate many values or which may output large numbers, care should be taken to prevent overflow. * * @param iterator - input iterator * @returns sum of absolute values * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var v = ns.itersumabs( rand ); * // returns <number> */ itersumabs: typeof itersumabs; /** * Computes the sum of squared absolute values for all iterated values. * * ## Notes * * - For iterators which can generate many values or which may output large numbers, care should be taken to prevent overflow. * * @param iterator - input iterator * @returns sum of squared absolute values * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var v = ns.itersumabs2( rand ); * // returns <number> */ itersumabs2: typeof itersumabs2; /** * Computes the unbiased sample variance over all iterated values. * * @param iterator - input iterator * @param mean - known mean * @returns unbiased sample variance * * @example * var runif = require( '@stdlib/random/iter/uniform' ); * * var rand = runif( -10.0, 10.0, { * 'iter': 100 * }); * * var s2 = ns.itervariance( rand ); * // returns <number> */ itervariance: typeof itervariance; } /** * Statistical function iterators. */ declare var ns: Namespace; // EXPORTS // export = ns;