0.2.1 • Published 2 months ago

@stdlib/stats-incr-kurtosis v0.2.1

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
2 months ago

incrkurtosis

NPM version Build Status Coverage Status

Compute a corrected sample excess kurtosis incrementally.

The kurtosis for a random variable X is defined as

Using a univariate normal distribution as the standard of comparison, the excess kurtosis is the kurtosis minus 3.

For a sample of n values, the sample excess kurtosis is

where m_4 is the sample fourth central moment and m_2 is the sample second central moment.

The previous equation is, however, a biased estimator of the population excess kurtosis. An alternative estimator which is unbiased under normality is

Installation

npm install @stdlib/stats-incr-kurtosis

Usage

var incrkurtosis = require( '@stdlib/stats-incr-kurtosis' );

incrkurtosis()

Returns an accumulator function which incrementally computes a corrected sample excess kurtosis.

var accumulator = incrkurtosis();

accumulator( [x] )

If provided an input value x, the accumulator function returns an updated corrected sample excess kurtosis. If not provided an input value x, the accumulator function returns the current corrected sample excess kurtosis.

var accumulator = incrkurtosis();

var kurtosis = accumulator( 2.0 );
// returns null

kurtosis = accumulator( 2.0 );
// returns null

kurtosis = accumulator( -4.0 );
// returns null

kurtosis = accumulator( -4.0 );
// returns -6.0

Notes

  • Input values are not type checked. If provided NaN or a value which, when used in computations, results in NaN, the accumulated value is NaN for all future invocations. If non-numeric inputs are possible, you are advised to type check and handle accordingly before passing the value to the accumulator function.

Examples

var randu = require( '@stdlib/random-base-randu' );
var incrkurtosis = require( '@stdlib/stats-incr-kurtosis' );

var accumulator;
var v;
var i;

// Initialize an accumulator:
accumulator = incrkurtosis();

// For each simulated datum, update the corrected sample excess kurtosis...
for ( i = 0; i < 100; i++ ) {
    v = randu() * 100.0;
    accumulator( v );
}
console.log( accumulator() );

References

  • Joanes, D. N., and C. A. Gill. 1998. "Comparing measures of sample skewness and kurtosis." Journal of the Royal Statistical Society: Series D (The Statistician) 47 (1). Blackwell Publishers Ltd: 183–89. doi:10.1111/1467-9884.00122.

See Also


Notice

This package is part of stdlib, a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing. The library provides a collection of robust, high performance libraries for mathematics, statistics, streams, utilities, and more.

For more information on the project, filing bug reports and feature requests, and guidance on how to develop stdlib, see the main project repository.

Community

Chat


License

See LICENSE.

Copyright

Copyright © 2016-2024. The Stdlib Authors.