org.hipparchus.stat.descriptive.rank

## Class PSquarePercentile

• ### Nested Class Summary

Nested Classes
Modifier and Type Class and Description
protected static interface  PSquarePercentile.PSquareMarkers
An interface that encapsulates abstractions of the P-square algorithm markers as is explained in the original works.
• ### Constructor Summary

Constructors
Constructor and Description
PSquarePercentile(double p)
Constructs a PSquarePercentile with the specific percentile value.
PSquarePercentile(PSquarePercentile original)
Copy constructor, creates a new PSquarePercentile identical to the original.
• ### Method Summary

All Methods
Modifier and Type Method and Description
void clear()
Clears the internal state of the Statistic
PSquarePercentile copy()
Returns a copy of the statistic with the same internal state.
boolean equals(Object o)
Returns true iff o is a PSquarePercentile returning the same values as this for getResult() and getN() and also having equal markers
long getN()
Returns the number of values that have been added.
double getQuantile()
double getResult()
Returns the current value of the Statistic.
int hashCode()
Returns hash code based on getResult() and getN().
void increment(double observation)
Updates the internal state of the statistic to reflect the addition of the new value.
static PSquarePercentile.PSquareMarkers newMarkers(List<Double> initialFive, double p)
A creation method to build Markers
double quantile()
Returns the quantile estimated by this statistic in the range [0.0-1.0]
String toString()
Returns a string containing the last observation, the current estimate of the quantile and all markers.
• ### Methods inherited from class java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait
• ### Methods inherited from interface org.hipparchus.stat.descriptive.StorelessUnivariateStatistic

accept, evaluate, incrementAll, incrementAll
• ### Methods inherited from interface org.hipparchus.stat.descriptive.UnivariateStatistic

evaluate
• ### Methods inherited from interface java.util.function.DoubleConsumer

andThen
• ### Constructor Detail

• #### PSquarePercentile

public PSquarePercentile(double p)
Constructs a PSquarePercentile with the specific percentile value.
Parameters:
p - the percentile
Throws:
MathIllegalArgumentException - if p is not greater than 0 and less than or equal to 100
• #### PSquarePercentile

public PSquarePercentile(PSquarePercentile original)
Copy constructor, creates a new PSquarePercentile identical to the original.
Parameters:
original - the PSquarePercentile instance to copy
Throws:
NullArgumentException - if original is null
• ### Method Detail

• #### hashCode

public int hashCode()
Returns hash code based on getResult() and getN().
Overrides:
hashCode in class AbstractStorelessUnivariateStatistic
Returns:
hash code
• #### equals

public boolean equals(Object o)
Returns true iff o is a PSquarePercentile returning the same values as this for getResult() and getN() and also having equal markers
Overrides:
equals in class AbstractStorelessUnivariateStatistic
Parameters:
o - object to compare
Returns:
true if o is a PSquarePercentile with equivalent internal state
• #### increment

public void increment(double observation)
Updates the internal state of the statistic to reflect the addition of the new value.The internal state updated due to the new value in this context is basically of the marker positions and computation of the approximate quantile.
Specified by:
increment in interface StorelessUnivariateStatistic
Specified by:
increment in class AbstractStorelessUnivariateStatistic
Parameters:
observation - the observation currently being added.
• #### toString

public String toString()
Returns a string containing the last observation, the current estimate of the quantile and all markers.
Overrides:
toString in class AbstractStorelessUnivariateStatistic
Returns:
string representation of state data
• #### getN

public long getN()
Returns the number of values that have been added.
Specified by:
getN in interface StorelessUnivariateStatistic
Returns:
the number of values.
• #### copy

public PSquarePercentile copy()
Returns a copy of the statistic with the same internal state.
Specified by:
copy in interface StorelessUnivariateStatistic
Specified by:
copy in interface UnivariateStatistic
Specified by:
copy in class AbstractStorelessUnivariateStatistic
Returns:
a copy of the statistic
• #### quantile

public double quantile()
Returns the quantile estimated by this statistic in the range [0.0-1.0]
Returns:
quantile estimated by getResult()
• #### clear

public void clear()
Clears the internal state of the Statistic. This basically clears all the markers, the initialFive list and sets countOfObservations to 0.
Specified by:
clear in interface StorelessUnivariateStatistic
Specified by:
clear in class AbstractStorelessUnivariateStatistic
• #### getResult

public double getResult()
Returns the current value of the Statistic.
Specified by:
getResult in interface StorelessUnivariateStatistic
Specified by:
getResult in class AbstractStorelessUnivariateStatistic
Returns:
value of the statistic, Double.NaN if it has been cleared or just instantiated.
• #### getQuantile

public double getQuantile()
Returns:
the quantile estimated by this statistic
• #### newMarkers

public static PSquarePercentile.PSquareMarkers newMarkers(List<Double> initialFive,
double p)
A creation method to build Markers
Parameters:
initialFive - list of initial five elements
p - the quantile desired
Returns:
an instance of PSquareMarkers