public class NaturalRanking extends Object implements RankingAlgorithm
Ranking based on the natural ordering on doubles.
NaNs are treated according to the configured NaNStrategy and ties
 are handled using the selected TiesStrategy.
 Configuration settings are supplied in optional constructor arguments.
 Defaults are NaNStrategy.FAILED and TiesStrategy.AVERAGE,
 respectively. When using TiesStrategy.RANDOM, a
 RandomGenerator may be supplied as a constructor argument.
Examples:
| Input data: (20, 17, 30, 42.3, 17, 50, Double.NaN, Double.NEGATIVE_INFINITY, 17) | ||
|---|---|---|
| NaNStrategy | TiesStrategy | rank(data) | 
| default (NaNs maximal) | default (ties averaged) | (5, 3, 6, 7, 3, 8, 9, 1, 3) | 
| default (NaNs maximal) | MINIMUM | (5, 2, 6, 7, 2, 8, 9, 1, 2) | 
| MINIMAL | default (ties averaged) | (6, 4, 7, 8, 4, 9, 1.5, 1.5, 4) | 
| REMOVED | SEQUENTIAL | (5, 2, 6, 7, 3, 8, 1, 4) | 
| MINIMAL | MAXIMUM | (6, 5, 7, 8, 5, 9, 2, 2, 5) | 
| Modifier and Type | Field and Description | 
|---|---|
| static NaNStrategy | DEFAULT_NAN_STRATEGYdefault NaN strategy | 
| static TiesStrategy | DEFAULT_TIES_STRATEGYdefault ties strategy | 
| Constructor and Description | 
|---|
| NaturalRanking()Create a NaturalRanking with default strategies for handling ties and NaNs. | 
| NaturalRanking(NaNStrategy nanStrategy)Create a NaturalRanking with the given NaNStrategy. | 
| NaturalRanking(NaNStrategy nanStrategy,
              RandomGenerator randomGenerator)Create a NaturalRanking with the given NaNStrategy, TiesStrategy.RANDOM
 and the given source of random data. | 
| NaturalRanking(NaNStrategy nanStrategy,
              TiesStrategy tiesStrategy)Create a NaturalRanking with the given NaNStrategy and TiesStrategy. | 
| NaturalRanking(RandomGenerator randomGenerator)Create a NaturalRanking with TiesStrategy.RANDOM and the given
 RandomGenerator as the source of random data. | 
| NaturalRanking(TiesStrategy tiesStrategy)Create a NaturalRanking with the given TiesStrategy. | 
| Modifier and Type | Method and Description | 
|---|---|
| NaNStrategy | getNanStrategy()Return the NaNStrategy | 
| TiesStrategy | getTiesStrategy()Return the TiesStrategy | 
| double[] | rank(double[] data)Rank  datausing the natural ordering on Doubles, with
 NaN values handled according tonanStrategyand ties
 resolved usingtiesStrategy. | 
public static final NaNStrategy DEFAULT_NAN_STRATEGY
public static final TiesStrategy DEFAULT_TIES_STRATEGY
public NaturalRanking()
public NaturalRanking(TiesStrategy tiesStrategy)
tiesStrategy - the TiesStrategy to usepublic NaturalRanking(NaNStrategy nanStrategy)
nanStrategy - the NaNStrategy to usepublic NaturalRanking(NaNStrategy nanStrategy, TiesStrategy tiesStrategy)
nanStrategy - NaNStrategy to usetiesStrategy - TiesStrategy to usepublic NaturalRanking(RandomGenerator randomGenerator)
randomGenerator - source of random datapublic NaturalRanking(NaNStrategy nanStrategy, RandomGenerator randomGenerator)
nanStrategy - NaNStrategy to userandomGenerator - source of random datapublic NaNStrategy getNanStrategy()
public TiesStrategy getTiesStrategy()
public double[] rank(double[] data)
data using the natural ordering on Doubles, with
 NaN values handled according to nanStrategy and ties
 resolved using tiesStrategy.rank in interface RankingAlgorithmdata - array to be rankedMathIllegalArgumentException - if the selected NaNStrategy is FAILED
 and a Double.NaN is encountered in the input dataCopyright © 2016–2020 Hipparchus.org. All rights reserved.