Package io.github.ai4ci.util
Class Sampler
java.lang.Object
io.github.ai4ci.util.Sampler
- All Implemented Interfaces:
org.apache.commons.rng.UniformRandomProvider
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionboolean
bern
(double jointDetect) <X> Optional<X>
double
beta
(double mean, double sd, boolean convex) A Beta distribution.int
binom
(double mean, double sd) int
binom
(int count, double probability) double
gamma
(double mean) double
gamma
(double mean, double sd) static Sampler
static Sampler
getSampler
(String urn) double
logitNormal
(double median, double scale) double
logNormal
(double mean, double sd) final <X> Optional<X>
int
negBinom
(double mean, double sd) long
nextLong()
double
normal
(double mean, double sd) boolean
periodTrigger
(double period) boolean
periodTrigger
(double period, double quantile) int
poisson
(double mean) boolean
rateTrigger
(double rate) double
sample
(SimpleDistribution dist) int
sampleInt
(SimpleDistribution dist) double
uniform()
double
uniform
(double min, double max) int
zeroInflatedPoisson
(double probabilityZero, double poissonMean) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.commons.rng.UniformRandomProvider
doubles, doubles, doubles, doubles, ints, ints, ints, ints, longs, longs, longs, longs, nextBoolean, nextBytes, nextBytes, nextDouble, nextDouble, nextDouble, nextFloat, nextFloat, nextFloat, nextInt, nextInt, nextInt, nextLong, nextLong
-
Method Details
-
getSampler
-
getSampler
-
withSeed
-
uniform
public double uniform() -
normal
public double normal(double mean, double sd) -
logNormal
public double logNormal(double mean, double sd) -
logitNormal
public double logitNormal(double median, double scale) -
poisson
public int poisson(double mean) -
zeroInflatedPoisson
public int zeroInflatedPoisson(double probabilityZero, double poissonMean) -
negBinom
public int negBinom(double mean, double sd) -
binom
public int binom(int count, double probability) -
binom
public int binom(double mean, double sd) -
gamma
public double gamma(double mean) -
beta
public double beta(double mean, double sd, boolean convex) A Beta distribution.- Parameters:
mean
- the mean (must be between 0 and 1)sd
- the SD, or if convex is true the fraction of the maximum SD consistent with a unimodal beta distribution. possible for a convex Beta
-
gamma
public double gamma(double mean, double sd) -
nextLong
public long nextLong()- Specified by:
nextLong
in interfaceorg.apache.commons.rng.UniformRandomProvider
-
bern
public boolean bern(double jointDetect) -
rateTrigger
public boolean rateTrigger(double rate) -
periodTrigger
public boolean periodTrigger(double period) -
periodTrigger
public boolean periodTrigger(double period, double quantile) -
sample
-
sampleInt
-
multinom
@SafeVarargs public final <X> Optional<X> multinom(org.apache.commons.lang3.tuple.Pair<Double, X>... probabilities) -
bern
-
uniform
public double uniform(double min, double max)
-