Package org.jfree.data.statistics
Class Statistics
java.lang.Object
org.jfree.data.statistics.Statistics
A utility class that provides some common statistical functions.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic double
calculateMean
(Number[] values) Returns the mean of an array of numbers.static double
calculateMean
(Number[] values, boolean includeNullAndNaN) Returns the mean of an array of numbers.static double
calculateMean
(Collection values) Returns the mean of a collection ofNumber
objects.static double
calculateMean
(Collection values, boolean includeNullAndNaN) Returns the mean of a collection ofNumber
objects.static double
calculateMedian
(List values) Calculates the median for a list of values (Number
objects).static double
calculateMedian
(List values, boolean copyAndSort) Calculates the median for a list of values (Number
objects).static double
calculateMedian
(List values, int start, int end) Calculates the median for a sublist within a list of values (Number
objects).static double
calculateMedian
(List values, int start, int end, boolean copyAndSort) Calculates the median for a sublist within a list of values (Number
objects).static double
getCorrelation
(Number[] data1, Number[] data2) Calculates the correlation between two datasets.static double[]
getLinearFit
(Number[] xData, Number[] yData) Fits a straight line to a set of (x, y) data, returning the slope and intercept.static double[][]
getMovingAverage
(Number[] xData, Number[] yData, int period) Returns a data set for a moving average on the data set passed in.static double
Finds the slope of a regression line using least squares.static double
Returns the standard deviation of a set of numbers.
-
Constructor Details
-
Statistics
public Statistics()
-
-
Method Details
-
calculateMean
Returns the mean of an array of numbers. This is equivalent to callingcalculateMean(values, true)
.- Parameters:
values
- the values (null
not permitted).- Returns:
- The mean.
-
calculateMean
Returns the mean of an array of numbers.- Parameters:
values
- the values (null
not permitted).includeNullAndNaN
- a flag that controls whether or notnull
andDouble.NaN
values are included in the calculation (if either is present in the array, the result isDouble.NaN
).- Returns:
- The mean.
-
calculateMean
Returns the mean of a collection ofNumber
objects.- Parameters:
values
- the values (null
not permitted).- Returns:
- The mean.
-
calculateMean
Returns the mean of a collection ofNumber
objects.- Parameters:
values
- the values (null
not permitted).includeNullAndNaN
- a flag that controls whether or notnull
andDouble.NaN
values are included in the calculation (if either is present in the array, the result isDouble.NaN
).- Returns:
- The mean.
-
calculateMedian
Calculates the median for a list of values (Number
objects). The list of values will be copied, and the copy sorted, before calculating the median. To avoid this step (if your list of values is already sorted), use thecalculateMedian(List, boolean)
method.- Parameters:
values
- the values (null
permitted).- Returns:
- The median.
-
calculateMedian
Calculates the median for a list of values (Number
objects). IfcopyAndSort
isfalse
, the list is assumed to be presorted in ascending order by value.- Parameters:
values
- the values (null
permitted).copyAndSort
- a flag that controls whether the list of values is copied and sorted.- Returns:
- The median.
-
calculateMedian
Calculates the median for a sublist within a list of values (Number
objects).- Parameters:
values
- the values, in any order (null
not permitted).start
- the start index.end
- the end index.- Returns:
- The median.
-
calculateMedian
Calculates the median for a sublist within a list of values (Number
objects). The entire list will be sorted if theascending
argument isfalse
.- Parameters:
values
- the values (null
not permitted).start
- the start index.end
- the end index.copyAndSort
- a flag that that controls whether the list of values is copied and sorted.- Returns:
- The median.
-
getStdDev
Returns the standard deviation of a set of numbers.- Parameters:
data
- the data (null
or zero length array not permitted).- Returns:
- The standard deviation of a set of numbers.
-
getLinearFit
Fits a straight line to a set of (x, y) data, returning the slope and intercept.- Parameters:
xData
- the x-data (null
not permitted).yData
- the y-data (null
not permitted).- Returns:
- A double array with the intercept in [0] and the slope in [1].
-
getSlope
Finds the slope of a regression line using least squares.- Parameters:
xData
- the x-values (null
not permitted).yData
- the y-values (null
not permitted).- Returns:
- The slope.
-
getCorrelation
Calculates the correlation between two datasets. Both arrays should contain the same number of items. Null values are treated as zero.Information about the correlation calculation was obtained from: http://trochim.human.cornell.edu/kb/statcorr.htm
- Parameters:
data1
- the first dataset.data2
- the second dataset.- Returns:
- The correlation.
-
getMovingAverage
Returns a data set for a moving average on the data set passed in.- Parameters:
xData
- an array of the x data.yData
- an array of the y data.period
- the number of data points to average- Returns:
- A double[][] the length of the data set in the first dimension, with two doubles for x and y in the second dimension
-