import static java.lang.System.out;
import java.util.*;
import javastat.*;
import javastat.probability.*;
import static javastat.util.Argument.*;
import static javastat.util.DistributionType.*;
import static javastat.util.Output.*;
/**
*
*
<p>Example: class Probability.</p>
*/
public
class ProbabilityExample
{
public static void
main(String arg[])
{
double[] normalPara = {1.0, 2.0};
double[] normalPercentiles = {1 -1.96 * 2, 1 + 1.96 * 2};
double
normalX = normalPara[0];
double normalProb = 0.90;
Probability normal =
new Probability(NORMAL, normalPara, normalPercentiles,
normalX, normalProb);
double[] betaPara = {2.0, 3.0};
double[]
betaPercentiles = {0.0, 0.5};
double betaX = 0.5;
double betaProb = 0.90;
Probability beta =
new Probability(BETA, betaPara, betaPercentiles,
betaX,
betaProb);
double[] binomialPara = {10.0, 0.3};
double[]
binomialPercentiles = {0.0, 5.0};
double binomialX = 5.0;
double binomialProb = 0.96;
Probability binomial =
new Probability(BINOMIAL, binomialPara, binomialPercentiles,
binomialX, binomialProb);
double[] cauchyPara = {0.0, 1.0};
double[] cauchyPercentiles = {-2.0, 2.0};
double cauchyX = 0.0;
double cauchyProb = 0.90;
Probability cauchy =
new Probability(CAUCHY, cauchyPara, cauchyPercentiles,
cauchyX, cauchyProb);
double[] chisquarePara = {1.0};
double[] chisquarePercentiles = {1.0, 2.0};
double chisquareX = 1.0;
double chisquareProb = 0.90;
Probability chisquare =
new Probability(CHISQUARE, chisquarePara, chisquarePercentiles,
chisquareX, chisquareProb);
double[] exponentialPara = {2.0};
double[] exponentialPercentiles = {1.0, 2.0};
double exponentialX = 1.0;
double exponentialProb = 0.90;
Probability exponential =
new Probability(EXPONENTIAL, exponentialPara,
exponentialPercentiles, exponentialX, exponentialProb);
double[] fPara = {2.0, 3.0};
double[] fPercentiles = {0.0, 4.0};
double fX = 7.0;
double fProb = 0.95;
Probability f = new Probability(F, fPara, fPercentiles, fX, fProb);
double[] gammaPara = {2.0, 3.0};
double[] gammaPercentiles = {0.0, 2.0};
double gammaX = 1.0;
double gammaProb
= 0.95;
Probability gamma =
new Probability(GAMMA, gammaPara, gammaPercentiles,
gammaX, gammaProb);
double[] geometricPara = {0.6};
double[] geometricPercentiles = {0.0, 2.0};
double geometricX = 1.0;
double geometricProb = 0.92;
Probability geometric =
new Probability(GEOMETRIC, geometricPara,
geometricPercentiles, geometricX,
geometricProb);
double[]
hypergeometricPara = {50, 10, 20};
double[] hypergeometricPercentiles = {0.0, 4.0};
double hypergeometricX = 1.0;
double hypergeometricProb = 0.90;
Probability hypergeometric =
new Probability(HYPERGEOMETRIC, hypergeometricPara,
hypergeometricPercentiles, hypergeometricX,
hypergeometricProb);
double[] lognormalPara = {0.0, 1.0};
double[] lognormalPercentiles = {0.0, 2.0};
double
lognormalX = 1.0;
double lognormalProb = 0.95;
Probability lognormal =
new Probability(LOGNORMAL, lognormalPara, lognormalPercentiles,
lognormalX, lognormalProb);
double[] negativeBinomialPara = {3.0, 0.7};
double[]
negativeBinomialPercentiles = {0.0, 2.0};
double negativeBinomialX = 3.0;
double negativeBinomialProb = 0.95;
Probability negativeBinomial =
new Probability(NEGATIVE_BINOMIAL, negativeBinomialPara,
negativeBinomialPercentiles, negativeBinomialX,
negativeBinomialProb);
double[] paretoPara = {2.0, 3.0};
double[] paretoPercentiles = {3.0, 7.0};
double paretoX = 4.0;
double paretoProb = 0.9;
Probability pareto =
new Probability(PARETO, paretoPara, paretoPercentiles,
paretoX, paretoProb);
double[] poissonPara = {5.0};
double[] poissonPercentiles = {3.0, 7.0};
double
poissonX = 5.0;
double poissonProb = 0.9;
Probability poisson =
new Probability(POISSON, poissonPara, poissonPercentiles,
poissonX, poissonProb);
double[] tPara = {9.0};
double[]
tPercentiles = {-2.0, 2.0};
double tX = 0.0;
double tProb = 0.95;
Probability t =
new Probability(T, tPara, tPercentiles, tX, tProb);
double[] weibullPara = {3.0};
double[] weibullPercentiles = {0.0, 1.0};
double weibullX = 1.0;
double weibullProb = 0.95;
Probability weibull =
new Probability(WEIBULL, weibullPara, weibullPercentiles,
weibullX, weibullProb);
Hashtable argument = new Hashtable();
argument.put(DISTRIBUTION_TYPE,
argument.put(DISTRIBUTION_PARAMETER, normalPara);
StatisticalAnalysis testclass1 =
new Probability(argument, normalPercentiles, normalX,
normalProb).statisticalAnalysis;
}
}
Results:
Normal
Probability
: 0.950004209703559
Normal
Density
: 0.19947114020071632
Normal
Percentile
: 3.5631031310892016
Beta
Probability
: 0.6875000000000002
Beta
Density
: 1.4999999999999993
Beta
Percentile
: 0.6795394162781816
Binomial
Probability
: 0.9526510126000015
Binomial
Density
: 0.10291934520000023
Binomial
Percentile
: 6.0
Cauchy
Probability
: 0.7048327646991335
Cauchy
Density :
0.3183098861837907
Cauchy
Percentile
: 3.0776835371752522
Chi-Square
Probability :
0.16001130081262904
Chi-Square
Density
: 0.2419707245191434
Chi-Square
Percentile
: 2.7055434540954097
Exponential
Probability :
0.11701964434787848
Exponential
Density
: 0.2706705664732254
Exponential
Percentile
: 1.151292546497023
F
Probability
: 0.8575728269453381
F
Density
: 0.013082201477078297
F
Percentile
:
9.55209449592116
Gamma
Probability
: 0.9826485115999873
Gamma
Density
: 0.4480836153107755
Gamma
Percentile
: 1.581290000001892
Geometric
Probability
: 0.9359999999999999
Geometric
Density
: 0.24
Geometric
Percentile
: 2.0
Hypergeometric
Probability :
0.6450268898822081
Hypergeometric
Density :
0.027855846119478674
Hypergeometric
Percentile : 6.0
Log-Normal
Probability
: 0.7558914042144173
Log-Normal
Density
: 0.39894228040143265
Log-Normal
Percentile :
5.180251602233011
Negative-Binomial
Probability : 0.8369199999999999
Negative-Binomial
Density : 0.09261000000000001
Negative-Binomial
Percentile : 4.0
Pareto
Probability
: 0.8163265306122449
Pareto
Density
: 0.28125
Pareto
Percentile
: 9.48683298050514
Poisson
Probability
: 0.7419763064469117
Poisson
Density
: 0.17546736976785085
Poisson
Percentile
: 8.0
T
Probability
: 0.9234471762292991
T
Density
: 0.38803490887166847
T
Percentile
: 1.8331129326562365
Weibull
Probability
: 0.6321205588285577
Weibull
Density
: 1.103638323514327
Weibull
Percentile
: 1.4415653427904531
Normal
Distribution
:{INVERSE=3.5631031310892016,
PROBABILITY=0.19947114020071632,
CUMULATIVE=0.950004209703559}
See also:
The Binomial Probability Distribution,
The Poisson Probability Distribution,
The Hypergeometric Probability Distribution,
The Uniform Probability Density,
The Normal Probability Density,