public class WeibullDistribution extends AbstractDistribution
The Weibull distribution is often used in the field of life data analysis due to its flexibility - it can mimic the behavior of other statistical distributions such as the normal and the exponential. If the failure rate decreases over time, then k < 1. If the failure rate is constant over time, then k = 1. If the failure rate increases over time, then k > 1.
An understanding of the failure rate may provide insight as to what is causing the failures:
| Modifier and Type | Field and Description |
|---|---|
double |
k
The shape parameter.
|
double |
lambda
The scale parameter.
|
| Constructor and Description |
|---|
WeibullDistribution(double k)
Constructor.
|
WeibullDistribution(double k,
double lambda)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
double |
cdf(double x)
Cumulative distribution function.
|
double |
entropy()
Shannon entropy of the distribution.
|
int |
length()
The number of parameters of the distribution.
|
double |
logp(double x)
The density at x in log scale, which may prevents the underflow problem.
|
double |
mean()
The mean of distribution.
|
double |
p(double x)
The probability density function for continuous distribution
or probability mass function for discrete distribution at x.
|
double |
quantile(double p)
The quantile, the probability to the left of quantile is p.
|
double |
rand()
Generates a random number following this distribution.
|
java.lang.String |
toString() |
double |
variance()
The variance of distribution.
|
inverseTransformSampling, quantile, quantile, rejectionclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitlikelihood, logLikelihood, rand, sdpublic final double k
public final double lambda
public WeibullDistribution(double k)
k - the shape parameter.public WeibullDistribution(double k,
double lambda)
k - the shape parameter.lambda - the scale parameter.public int length()
Distributionpublic double mean()
Distributionpublic double variance()
Distributionpublic double entropy()
Distributionpublic java.lang.String toString()
toString in class java.lang.Objectpublic double rand()
Distributionpublic double p(double x)
Distributionpublic double logp(double x)
Distributionpublic double cdf(double x)
Distributionpublic double quantile(double p)
Distribution