|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.commons.math.random.EmpiricalDistributionImpl
public class EmpiricalDistributionImpl
Implements EmpiricalDistribution interface. This implementation
uses what amounts to the
Variable Kernel Method with Gaussian smoothing:
Digesting the input file
binCount "bins."USAGE NOTES:
binCount is set by default to 1000. A good rule of thumb
is to set the bin count to approximately the length of the input file divided
by 10.
| Field Summary | |
|---|---|
static int |
DEFAULT_BIN_COUNT
Default bin count |
| Constructor Summary | |
|---|---|
EmpiricalDistributionImpl()
Creates a new EmpiricalDistribution with the default bin count. |
|
EmpiricalDistributionImpl(int binCount)
Creates a new EmpiricalDistribution with the specified bin count. |
|
EmpiricalDistributionImpl(int binCount,
RandomDataImpl randomData)
Creates a new EmpiricalDistribution with the specified bin count using the provided RandomDataImpl instance as the source of random data. |
|
EmpiricalDistributionImpl(int binCount,
RandomGenerator generator)
Creates a new EmpiricalDistribution with the specified bin count using the provided RandomGenerator as the source of random data. |
|
EmpiricalDistributionImpl(RandomDataImpl randomData)
Creates a new EmpiricalDistribution with default bin count using the provided RandomDataImpl as the source of random data. |
|
EmpiricalDistributionImpl(RandomGenerator generator)
Creates a new EmpiricalDistribution with default bin count using the provided RandomGenerator as the source of random data. |
|
| Method Summary | |
|---|---|
int |
getBinCount()
Returns the number of bins. |
java.util.List<SummaryStatistics> |
getBinStats()
Returns a List of SummaryStatistics instances containing
statistics describing the values in each of the bins. |
double[] |
getGeneratorUpperBounds()
Returns a fresh copy of the array of upper bounds of the subintervals of [0,1] used in generating data from the empirical distribution. |
double |
getNextValue()
Generates a random value from this distribution. |
StatisticalSummary |
getSampleStats()
Returns a StatisticalSummary describing this distribution. |
double[] |
getUpperBounds()
Returns a fresh copy of the array of upper bounds for the bins. |
boolean |
isLoaded()
Property indicating whether or not the distribution has been loaded. |
void |
load(double[] in)
Computes the empirical distribution from the provided array of numbers. |
void |
load(java.io.File file)
Computes the empirical distribution from the input file. |
void |
load(java.net.URL url)
Computes the empirical distribution using data read from a URL. |
void |
reSeed(long seed)
Reseeds the random number generator used by getNextValue(). |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final int DEFAULT_BIN_COUNT
| Constructor Detail |
|---|
public EmpiricalDistributionImpl()
public EmpiricalDistributionImpl(int binCount)
binCount - number of bins
public EmpiricalDistributionImpl(int binCount,
RandomGenerator generator)
RandomGenerator as the source of random data.
binCount - number of binsgenerator - random data generator (may be null, resulting in default JDK generator)public EmpiricalDistributionImpl(RandomGenerator generator)
RandomGenerator as the source of random data.
generator - random data generator (may be null, resulting in default JDK generator)
public EmpiricalDistributionImpl(int binCount,
RandomDataImpl randomData)
RandomDataImpl instance as the source of random data.
binCount - number of binsrandomData - random data generator (may be null, resulting in default JDK generator)public EmpiricalDistributionImpl(RandomDataImpl randomData)
RandomDataImpl as the source of random data.
randomData - random data generator (may be null, resulting in default JDK generator)| Method Detail |
|---|
public void load(double[] in)
throws NullArgumentException
load in interface EmpiricalDistributionin - the input data array
NullArgumentException - if in is null
public void load(java.net.URL url)
throws java.io.IOException,
NullArgumentException
load in interface EmpiricalDistributionurl - url of the input file
java.io.IOException - if an IO error occurs
NullArgumentException - if url is null
public void load(java.io.File file)
throws java.io.IOException,
NullArgumentException
load in interface EmpiricalDistributionfile - the input file
java.io.IOException - if an IO error occurs
NullArgumentException - if file is null
public double getNextValue()
throws MathIllegalStateException
getNextValue in interface EmpiricalDistributionMathIllegalStateException - if the distribution has not been loadedpublic StatisticalSummary getSampleStats()
StatisticalSummary describing this distribution.
Preconditions:
getSampleStats in interface EmpiricalDistributionjava.lang.IllegalStateException - if the distribution has not been loadedpublic int getBinCount()
getBinCount in interface EmpiricalDistributionpublic java.util.List<SummaryStatistics> getBinStats()
SummaryStatistics instances containing
statistics describing the values in each of the bins. The list is
indexed on the bin number.
getBinStats in interface EmpiricalDistributionpublic double[] getUpperBounds()
Returns a fresh copy of the array of upper bounds for the bins.
Bins are:
[min,upperBounds[0]],(upperBounds[0],upperBounds[1]],...,
(upperBounds[binCount-2], upperBounds[binCount-1] = max].
Note: In versions 1.0-2.0 of commons-math, this method
incorrectly returned the array of probability generator upper
bounds now returned by getGeneratorUpperBounds().
getUpperBounds in interface EmpiricalDistributionpublic double[] getGeneratorUpperBounds()
Returns a fresh copy of the array of upper bounds of the subintervals of [0,1] used in generating data from the empirical distribution. Subintervals correspond to bins with lengths proportional to bin counts.
In versions 1.0-2.0 of commons-math, this array was (incorrectly) returned
by getUpperBounds().
public boolean isLoaded()
isLoaded in interface EmpiricalDistributionpublic void reSeed(long seed)
getNextValue().
seed - random generator seed
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||