org.apache.commons.math.stat.descriptive
Class AbstractUnivariateStatistic

java.lang.Object
  extended by org.apache.commons.math.stat.descriptive.AbstractUnivariateStatistic
All Implemented Interfaces:
UnivariateStatistic
Direct Known Subclasses:
AbstractStorelessUnivariateStatistic, Percentile, SemiVariance

public abstract class AbstractUnivariateStatistic
extends Object
implements UnivariateStatistic

Abstract base class for all implementations of the UnivariateStatistic interface.

Provides a default implementation of evaluate(double[]), delegating to evaluate(double[], int, int) in the natural way.

Also includes a test method that performs generic parameter validation for the evaluate methods.

Version:
$Revision: 894705 $ $Date: 2009-12-30 15:24:54 -0500 (Wed, 30 Dec 2009) $

Constructor Summary
AbstractUnivariateStatistic()
           
 
Method Summary
abstract  UnivariateStatistic copy()
          Returns a copy of the statistic with the same internal state.
 double evaluate(double[] values)
          Returns the result of evaluating the statistic over the input array.
abstract  double evaluate(double[] values, int begin, int length)
          Returns the result of evaluating the statistic over the specified entries in the input array.
protected  boolean test(double[] values, double[] weights, int begin, int length)
          This method is used by evaluate(double[], double[], int, int) methods to verify that the begin and length parameters designate a subarray of positive length and the weights are all non-negative, non-NaN, finite, and not all zero.
protected  boolean test(double[] values, int begin, int length)
          This method is used by evaluate(double[], int, int) methods to verify that the input parameters designate a subarray of positive length.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractUnivariateStatistic

public AbstractUnivariateStatistic()
Method Detail

evaluate

public double evaluate(double[] values)
Returns the result of evaluating the statistic over the input array.

Specified by:
evaluate in interface UnivariateStatistic
Parameters:
values - input array
Returns:
the value of the statistic applied to the input array

evaluate

public abstract double evaluate(double[] values,
                                int begin,
                                int length)
Returns the result of evaluating the statistic over the specified entries in the input array.

Specified by:
evaluate in interface UnivariateStatistic
Parameters:
values - the input array
begin - the index of the first element to include
length - the number of elements to include
Returns:
the value of the statistic applied to the included array entries

copy

public abstract UnivariateStatistic copy()
Returns a copy of the statistic with the same internal state.

Specified by:
copy in interface UnivariateStatistic
Returns:
a copy of the statistic

test

protected boolean test(double[] values,
                       int begin,
                       int length)
This method is used by evaluate(double[], int, int) methods to verify that the input parameters designate a subarray of positive length.

Parameters:
values - the input array
begin - index of the first array element to include
length - the number of elements to include
Returns:
true if the parameters are valid and designate a subarray of positive length
Throws:
IllegalArgumentException - if the indices are invalid or the array is null

test

protected boolean test(double[] values,
                       double[] weights,
                       int begin,
                       int length)
This method is used by evaluate(double[], double[], int, int) methods to verify that the begin and length parameters designate a subarray of positive length and the weights are all non-negative, non-NaN, finite, and not all zero.

  • returns true iff the parameters designate a subarray of positive length and the weights array contains legitimate values.
  • throws IllegalArgumentException if any of the following are true:
    • the values array is null
    • the weights array is null
    • the weights array does not have the same length as the values array
    • the weights array contains one or more infinite values
    • the weights array contains one or more NaN values
    • the weights array contains negative values
    • the start and length arguments do not determine a valid array
  • returns false
  • if the array is non-null, but length is 0.

Parameters:
values - the input array
weights - the weights array
begin - index of the first array element to include
length - the number of elements to include
Returns:
true if the parameters are valid and designate a subarray of positive length
Throws:
IllegalArgumentException - if the indices are invalid or the array is null
Since:
2.1


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