incrkurtosis

Compute a corrected sample excess kurtosis incrementally.

The kurtosis for a random variable X is defined as

upper K u r t o s i s left-bracket upper X right-bracket equals normal upper E left-bracket left-parenthesis StartFraction upper X minus mu Over sigma EndFraction right-parenthesis Superscript 4 Baseline right-bracket

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

g 2 equals StartFraction m 4 Over m 2 squared EndFraction minus 3 equals StartStartFraction StartFraction 1 Over n EndFraction sigma-summation Underscript i equals 0 Overscript n minus 1 Endscripts left-parenthesis x Subscript i Baseline minus x overbar right-parenthesis Superscript 4 Baseline OverOver left-parenthesis StartFraction 1 Over n EndFraction sigma-summation Underscript i equals 0 Overscript n minus 1 Endscripts left-parenthesis x Subscript i Baseline minus x overbar right-parenthesis squared right-parenthesis squared EndEndFraction

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

upper G 2 equals StartFraction left-parenthesis n plus 1 right-parenthesis n Over left-parenthesis n minus 1 right-parenthesis left-parenthesis n minus 2 right-parenthesis left-parenthesis n minus 3 right-parenthesis EndFraction StartFraction sigma-summation Underscript i equals 0 Overscript n minus 1 Endscripts left-parenthesis x Subscript i Baseline minus x overbar right-parenthesis Superscript 4 Baseline Over left-parenthesis sigma-summation Underscript i equals 0 Overscript n minus 1 Endscripts left-parenthesis x Subscript i Baseline minus x overbar right-parenthesis squared right-parenthesis squared EndFraction minus 3 StartFraction left-parenthesis n minus 1 right-parenthesis squared Over left-parenthesis n minus 2 right-parenthesis left-parenthesis n minus 3 right-parenthesis EndFraction

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.
Did you find this page helpful?