All Implemented Interfaces:
Serializable, StorelessUnivariateStatistic, UnivariateStatistic

public class Kurtosis extends AbstractStorelessUnivariateStatistic implements Serializable
Computes the Kurtosis of the available values.

We use the following (unbiased) formula to define kurtosis:

kurtosis = { [n(n+1) / (n -1)(n - 2)(n-3)] sum[(x_i - mean)^4] / std^4 } - [3(n-1)^2 / (n-2)(n-3)]

where n is the number of values, mean is the Mean and std is the StandardDeviation

Note that this statistic is undefined for n invalid input: '<' 4. Double.Nan is returned when there is not sufficient data to compute the statistic.

Note that this implementation is not synchronized. If multiple threads access an instance of this class concurrently, and at least one of the threads invokes the increment() or clear() method, it must be synchronized externally.

Version:
$Revision: 1006299 $ $Date: 2010-10-10 16:47:17 +0200 (dim. 10 oct. 2010) $
See Also:
  • Field Details

    • moment

      protected FourthMoment moment
      Fourth Moment on which this statistic is based
    • incMoment

      protected boolean incMoment
      Determines whether or not this statistic can be incremented or cleared.

      Statistics based on (constructed from) external moments cannot be incremented or cleared.

  • Constructor Details

    • Kurtosis

      public Kurtosis()
      Construct a Kurtosis
    • Kurtosis

      public Kurtosis(FourthMoment m4)
      Construct a Kurtosis from an external moment
      Parameters:
      m4 - external Moment
    • Kurtosis

      public Kurtosis(Kurtosis original)
      Copy constructor, creates a new Kurtosis identical to the original
      Parameters:
      original - the Kurtosis instance to copy
  • Method Details