Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.math3.stat.descriptive.moment
Class Skewness

    java.lang.Object
      org.apache.commons.math3.stat.descriptive.AbstractUnivariateStatistic
          org.apache.commons.math3.stat.descriptive.AbstractStorelessUnivariateStatistic
              org.apache.commons.math3.stat.descriptive.moment.Skewness

All Implemented Interfaces:
  Serializable, StorelessUnivariateStatistic, UnivariateStatistic, MathArrays.Function

    public class Skewness

extends AbstractStorelessUnivariateStatistic
implements Serializable

Computes the skewness of the available values.

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

skewness = [n / (n -1) (n - 2)] sum[(x_i - mean)^3] / std^3

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

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:
  $Id: Skewness.java 1416643 2012-12-03 19:37:14Z tn $
See Also:
  Serialized Form

Field Summary
`protected boolean` | `incMoment` Determines whether or not this statistic can be incremented or cleared.
`protected org.apache.commons.math3.stat.descriptive.moment.ThirdMoment` | `moment` Third moment on which this statistic is based

Constructor Summary
`Skewness()` Constructs a Skewness
`Skewness(Skewness original)` Copy constructor, creates a new `Skewness` identical to the `original`
`Skewness(org.apache.commons.math3.stat.descriptive.moment.ThirdMoment m3)` Constructs a Skewness with an external moment

Method Summary
`void` | `clear()` Clears the internal state of the Statistic
`Skewness` | `copy()` Returns a copy of the statistic with the same internal state.
`static void` | `copy(Skewness source, Skewness dest)` Copies source to dest.
`double` | `evaluate(double[] values, int begin, int length)` Returns the Skewness of the entries in the specifed portion of the input array.
`long` | `getN()` Returns the number of values that have been added.
`double` | `getResult()` Returns the value of the statistic based on the values that have been added.
`void` | `increment(double d)` Updates the internal state of the statistic to reflect the addition of the new value.

Methods inherited from class org.apache.commons.math3.stat.descriptive.AbstractStorelessUnivariateStatistic
`equals, evaluate, hashCode, incrementAll, incrementAll`

Methods inherited from class org.apache.commons.math3.stat.descriptive.AbstractUnivariateStatistic
`evaluate, getData, getDataRef, setData, setData, test, test, test, test`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### moment

    protected org.apache.commons.math3.stat.descriptive.moment.ThirdMoment moment

  Third 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 Detail

### Skewness

    public Skewness()

  Constructs a Skewness

### Skewness

    public Skewness(org.apache.commons.math3.stat.descriptive.moment.ThirdMoment m3)

  Constructs a Skewness with an external moment

  Parameters:
    `m3` - external moment

### Skewness

    public Skewness(Skewness original)
             throws NullArgumentException

  Copy constructor, creates a new `Skewness` identical to the `original`

  Parameters:
    `original` - the `Skewness` instance to copy
  Throws:
    `NullArgumentException` - if original is null

Method Detail

### increment

    public void increment(double d)

  Updates the internal state of the statistic to reflect the addition of the new value.

  Note that when `Skewness(ThirdMoment)` is used to create a Skewness, this method does nothing. In that case, the ThirdMoment should be incremented directly.

  Specified by:
    `increment` in interface `StorelessUnivariateStatistic`
  Specified by:
    `increment` in class `AbstractStorelessUnivariateStatistic`
  Parameters:
    `d` - the new value.

### getResult

    public double getResult()

  Returns the value of the statistic based on the values that have been added.

  See `Skewness` for the definition used in the computation.

  Specified by:
    `getResult` in interface `StorelessUnivariateStatistic`
  Specified by:
    `getResult` in class `AbstractStorelessUnivariateStatistic`
  Returns:
    the skewness of the available values.

### getN

    public long getN()

  Returns the number of values that have been added.

  Specified by:
    `getN` in interface `StorelessUnivariateStatistic`
  Returns:
    the number of values.

### clear

    public void clear()

  Clears the internal state of the Statistic

  Specified by:
    `clear` in interface `StorelessUnivariateStatistic`
  Specified by:
    `clear` in class `AbstractStorelessUnivariateStatistic`

### evaluate

    public double evaluate(double[] values,
                           int begin,
                           int length)
                    throws MathIllegalArgumentException

  Returns the Skewness of the entries in the specifed portion of the input array.

  See `Skewness` for the definition used in the computation.

  Throws `IllegalArgumentException` if the array is null.

  Specified by:
    `evaluate` in interface `UnivariateStatistic`
  Specified by:
    `evaluate` in interface `MathArrays.Function`
  Overrides:
    `evaluate` in class `AbstractStorelessUnivariateStatistic`
  Parameters:
    `values` - the input array
    `begin` - the index of the first array element to include
    `length` - the number of elements to include
  Returns:
    the skewness of the values or Double.NaN if length is less than 3
  Throws:
    `MathIllegalArgumentException` - if the array is null or the array index parameters are not valid
  See Also:
    `UnivariateStatistic.evaluate(double[], int, int)`

### copy

    public Skewness copy()

  Returns a copy of the statistic with the same internal state.

  Specified by:
    `copy` in interface `StorelessUnivariateStatistic`
  Specified by:
    `copy` in interface `UnivariateStatistic`
  Specified by:
    `copy` in class `AbstractStorelessUnivariateStatistic`
  Returns:
    a copy of the statistic

### copy

    public static void copy(Skewness source,
                            Skewness dest)
                     throws NullArgumentException

  Copies source to dest.

  Neither source nor dest can be null.

  Parameters:
    `source` - Skewness to copy
    `dest` - Skewness to copy to
  Throws:
    `NullArgumentException` - if either source or dest is null

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2003-2013 The Apache Software Foundation. All Rights Reserved.