Package net.sourceforge.jiu.util

# Class Statistics

java.lang.Object
net.sourceforge.jiu.util.Statistics

public class Statistics extends Object
A number of static methods to compute statistical properties of an array of double values. Implements the computation of mean, variance and standard deviation for `double` values.

Since:
  0.11.0
Author:
  Marco Schmidt

## Constructor Summary

Constructors
Modifier
Constructor
Description
`private`
`Statistics()`

## Method Summary

Modifier and Type
Method
Description
`static double`
`computeMean(double[] values)`
Computes the mean value for the argument array.
`static double`
`computeMean(double[] values, int offset, int number)`
Computes the mean value for some elements of the argument array.
`static double`
`computeStandardDeviation(double[] values)`
Computes the standard deviation for the argument array of values.
`static double`
`computeStandardDeviation(double[] values, double mean)`
Computes the standard deviation for the argument array of values.
`static double`
`computeStandardDeviation(double[] values, int offset, int number)`
Computes the standard deviation for some of the argument array's values.
`static double`
`computeStandardDeviation(double[] values, int offset, int number, double mean)`
Computes the standard deviation for some of the argument array's values.
`static double`
`computeVariance(double[] values)`
Computes the variance for the argument array.
`static double`
`computeVariance(double[] values, double mean)`
Computes the variance for some of the argument array's values.
`static double`
`computeVariance(double[] values, int offset, int number)`
Computes the variance for some of the argument array's values.
`static double`
`computeVariance(double[] values, int offset, int number, double mean)`
Computes the variance for some of the argument array's values.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### Statistics

private Statistics()

## Method Details

### computeMean

public static double computeMean(double[] values)
Computes the mean value for the argument array. Adds all values and divides them by the number of array elements.

Parameters:
  `values` - double array on which the mean is to be determined
Returns:
  computed mean value
Throws:
  `IllegalArgumentException` - if the array has not at least one element

### computeMean

public static double computeMean(double[] values, int offset, int number)
Computes the mean value for some elements of the argument array. Adds all values and divides them by the number of array elements.

Parameters:
  `values` - array from which elements are read
  `offset` - index of the first element to be used
  `number` - number of elements to be used
Returns:
  computed mean value
Throws:
  `IllegalArgumentException` - if the array has not at least one element

### computeStandardDeviation

public static double computeStandardDeviation(double[] values)
Computes the standard deviation for the argument array of values.

Parameters:
  `values` - array from which elements are read
Returns:
  computed standard deviation
Throws:
  `IllegalArgumentException` - if the array has not at least two elements

### computeStandardDeviation

public static double computeStandardDeviation(double[] values, double mean)
Computes the standard deviation for the argument array of values. Reuses the mean value for that argument which must have been computed before.

Parameters:
  `values` - array from which elements are read
  `mean` - the mean value for the array, possibly computed with a call to `computeMean(double[])`.
Returns:
  computed standard deviation
Throws:
  `IllegalArgumentException` - if the array has not at least two elements

### computeStandardDeviation

public static double computeStandardDeviation(double[] values, int offset, int number)
Computes the standard deviation for some of the argument array's values. If you already have computed a mean value using `computeMean(double[], int, int)`, better call `computeStandardDeviation(double[], int, int, double)`. Otherwise, this method has to compute mean again.

Parameters:
  `values` - array from which elements are read
  `offset` - first element to be used
  `number` - number of elements used starting at values[offset]
Returns:
  computed standard deviation
Throws:
  `IllegalArgumentException` - if the array has not at least two elements

### computeStandardDeviation

public static double computeStandardDeviation(double[] values, int offset, int number, double mean)
Computes the standard deviation for some of the argument array's values. Use this version of the method if you already have a mean value, otherwise this method must be computed again.

Parameters:
  `values` - array from which elements are read
  `offset` - first element to be used
  `number` - number of elements used starting at values[offset]
  `mean` - value of the elements
Returns:
  computed standard deviation
Throws:
  `IllegalArgumentException` - if the array has not at least two elements

### computeVariance

public static double computeVariance(double[] values)
Computes the variance for the argument array.

Parameters:
  `values` - array from which elements are read
Returns:
  variance for the array elements
Throws:
  `IllegalArgumentException` - if the array has not at least two elements

### computeVariance

public static double computeVariance(double[] values, double mean)
Computes the variance for some of the argument array's values.

Parameters:
  `values` - array from which elements are read
  `mean` - the mean for the array elements
Returns:
  variance for the array elements
Throws:
  `IllegalArgumentException` - if the array has not at least two elements

### computeVariance

public static double computeVariance(double[] values, int offset, int number)
Computes the variance for some of the argument array's values. If you already have computed a mean value using `computeMean(double[], int, int)`, better call `computeVariance(double[], int, int, double)`. Otherwise, this method has to compute mean again.

Parameters:
  `values` - array from which elements are read
  `offset` - first element to be used
  `number` - number of elements used starting at values[offset]
Returns:
  computed variance
Throws:
  `IllegalArgumentException` - if the array has not at least two elements

### computeVariance

public static double computeVariance(double[] values, int offset, int number, double mean)
Computes the variance for some of the argument array's values. Use this version of the method in case mean has already been computed.

Parameters:
  `values` - array from which elements are read
  `offset` - first element to be used
  `number` - number of elements used starting at values[offset]
  `mean` - the mean for the array elements
Returns:
  computed variance
Throws:
  `IllegalArgumentException` - if the array has not at least two elements