public class SynchronizedDescriptiveStatistics extends DescriptiveStatistics
DescriptiveStatistics that
is safe to use in a multithreaded environment. Multiple threads can safely
operate on a single instance without causing runtime exceptions due to race
conditions. In effect, this implementation makes modification and access
methods atomic operations for a single instance. That is to say, as one
thread is computing a statistic from the instance, no other thread can modify
the instance nor compute another statistic.INFINITE_WINDOW| Constructor and Description |
|---|
SynchronizedDescriptiveStatistics()
Construct an instance with infinite window
|
SynchronizedDescriptiveStatistics(int window)
Construct an instance with finite window
|
SynchronizedDescriptiveStatistics(SynchronizedDescriptiveStatistics original)
A copy constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addValue(double v)
Adds the value to the dataset.
|
double |
apply(UnivariateStatistic stat)
Apply the given statistic to the data associated with this set of statistics.
|
void |
clear()
Resets all statistics and storage
|
SynchronizedDescriptiveStatistics |
copy()
Returns a copy of this SynchronizedDescriptiveStatistics instance with the
same internal state.
|
static void |
copy(SynchronizedDescriptiveStatistics source,
SynchronizedDescriptiveStatistics dest)
Copies source to dest.
|
double |
getElement(int index)
Returns the element at the specified index
|
long |
getN()
Returns the number of available values
|
double |
getStandardDeviation()
Returns the standard deviation of the available values.
|
double[] |
getValues()
Returns the current set of values in an array of double primitives.
|
int |
getWindowSize()
Returns the maximum number of values that can be stored in the
dataset, or INFINITE_WINDOW (-1) if there is no limit.
|
void |
setWindowSize(int windowSize)
WindowSize controls the number of values which contribute
to the reported statistics.
|
java.lang.String |
toString()
Generates a text report displaying univariate statistics from values
that have been added.
|
copy, getGeometricMean, getGeometricMeanImpl, getKurtosis, getKurtosisImpl, getMax, getMaxImpl, getMean, getMeanImpl, getMin, getMinImpl, getPercentile, getPercentileImpl, getSkewness, getSkewnessImpl, getSortedValues, getSum, getSumImpl, getSumsq, getSumsqImpl, getVariance, getVarianceImpl, removeMostRecentValue, replaceMostRecentValue, setGeometricMeanImpl, setKurtosisImpl, setMaxImpl, setMeanImpl, setMinImpl, setPercentileImpl, setSkewnessImpl, setSumImpl, setSumsqImpl, setVarianceImplpublic SynchronizedDescriptiveStatistics()
public SynchronizedDescriptiveStatistics(int window)
window - the finite window size.public SynchronizedDescriptiveStatistics(SynchronizedDescriptiveStatistics original)
original.original - the SynchronizedDescriptiveStatistics instance to copypublic void addValue(double v)
addValue in class DescriptiveStatisticsv - the value to be addedpublic double apply(UnivariateStatistic stat)
apply in class DescriptiveStatisticsstat - the statistic to applypublic void clear()
clear in class DescriptiveStatisticspublic double getElement(int index)
getElement in class DescriptiveStatisticsindex - The Index of the elementpublic long getN()
getN in interface StatisticalSummarygetN in class DescriptiveStatisticspublic double getStandardDeviation()
getStandardDeviation in interface StatisticalSummarygetStandardDeviation in class DescriptiveStatisticspublic double[] getValues()
getValues in class DescriptiveStatisticspublic int getWindowSize()
getWindowSize in class DescriptiveStatisticspublic void setWindowSize(int windowSize)
setWindowSize in class DescriptiveStatisticswindowSize - sets the size of the window.public java.lang.String toString()
toString in class DescriptiveStatisticspublic SynchronizedDescriptiveStatistics copy()
copy in class DescriptiveStatisticspublic static void copy(SynchronizedDescriptiveStatistics source, SynchronizedDescriptiveStatistics dest)
Neither source nor dest can be null.
Acquires synchronization lock on source, then dest before copying.
source - SynchronizedDescriptiveStatistics to copydest - SynchronizedDescriptiveStatistics to copy tojava.lang.NullPointerException - if either source or dest is nullCopyright © 2010 - 2023 Adobe. All Rights Reserved