Interface QuantileAccumulator
-
- All Known Implementing Classes:
FixedBinsAccumulator,FullStorageAccumulator,NoStorageAccumulator,TDigestAccumulator
public interface QuantileAccumulatorInterface for quantile accumulator.- Author:
- Peter Knoppers
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description doublegetCumulativeProbability(Tally tally, double quantile)Get, or estimate fraction of ingested values between -infinity up to and including a given quantile.doublegetQuantile(Tally tally, double probability)Compute (or approximate) the value that corresponds to the given fraction (percentile).doubleingest(double value)Ingest one value with weight 1.voidinitialize()Reset (clear all accumulated information).
-
-
-
Method Detail
-
ingest
double ingest(double value)
Ingest one value with weight 1. Should be called only from the Tally object and AFTER processing the value in the tally.- Parameters:
value- double; the value- Returns:
- double; the ingested value
- Throws:
IllegalArgumentException- when the ingested value is NaN
-
getQuantile
double getQuantile(Tally tally, double probability)
Compute (or approximate) the value that corresponds to the given fraction (percentile).- Parameters:
tally- Tally; the tally object that accumulates mean, minimum, maximum, count, etc.probability- double; value between 0.0 and 1.0 (both inclusive)- Returns:
- double; the computed or approximated quantile value
- Throws:
IllegalArgumentException- when the probability is less than 0 or larger than 1NullPointerException- when tally is null
-
getCumulativeProbability
double getCumulativeProbability(Tally tally, double quantile) throws IllegalArgumentException
Get, or estimate fraction of ingested values between -infinity up to and including a given quantile.- Parameters:
tally- Tally; the tally object that accumulates mean, minimum, maximum, count, etc.quantile- double; the given quantile- Returns:
- double; the estimated or observed fraction of ingested values between -infinity up to and including the given quantile. When this QuantileAccumulator has ingested zero values; this method shall return NaN.
- Throws:
IllegalArgumentException- when quantile is NaN
-
initialize
void initialize()
Reset (clear all accumulated information).
-
-