Weibull {Rlab} | R Documentation |
The Weibull Distribution
Description
Density, distribution function, quantile function and random
generation for the Weibull distribution with parameters alpha
(or shape
) and beta
(or scale
).
This special Rlab implementation allows the parameters alpha
and beta
to be used, to match the function description
often found in textbooks.
Usage
dweibull(x, shape, scale = 1, alpha = shape, beta = scale, log = FALSE)
pweibull(q, shape, scale = 1, alpha = shape, beta = scale,
lower.tail = TRUE, log.p = FALSE)
qweibull(p, shape, scale = 1, alpha = shape, beta = scale,
lower.tail = TRUE, log.p = FALSE)
rweibull(n, shape, scale = 1, alpha = shape, beta = scale)
Arguments
x , q |
vector of quantiles. |
p |
vector of probabilities. |
n |
number of observations. If |
shape , scale |
shape and scale parameters, the latter defaulting to 1. |
alpha , beta |
alpha and beta parameters, the latter defaulting to 1. |
log , log.p |
logical; if TRUE, probabilities p are given as log(p). |
lower.tail |
logical; if TRUE (default), probabilities are
|
Details
The Weibull distribution with alpha
(or shape
)
parameter a
and beta
(or scale
) parameter
\sigma
has density given by
f(x) = (a/\sigma) {(x/\sigma)}^{a-1} \exp (-{(x/\sigma)}^{a})
for x > 0
.
The cumulative is
F(x) = 1 - \exp(-{(x/\sigma)}^a)
, the
mean is E(X) = \sigma \Gamma(1 + 1/a)
, and
the Var(X) = \sigma^2(\Gamma(1 + 2/a)-(\Gamma(1 + 1/a))^2)
.
Value
dweibull
gives the density,
pweibull
gives the distribution function,
qweibull
gives the quantile function, and
rweibull
generates random deviates.
Note
The cumulative hazard H(t) = - \log(1 - F(t))
is -pweibull(t, a, b, lower = FALSE, log = TRUE)
which is just
H(t) = {(t/b)}^a
.
See Also
dexp
for the Exponential which is a special case of a
Weibull distribution.
Examples
x <- c(0,rlnorm(50))
all.equal(dweibull(x, alpha = 1), dexp(x))
all.equal(pweibull(x, alpha = 1, beta = pi), pexp(x, rate = 1/pi))
## Cumulative hazard H():
all.equal(pweibull(x, 2.5, pi, lower=FALSE, log=TRUE), -(x/pi)^2.5, tol=1e-15)
all.equal(qweibull(x/11, alpha = 1, beta = pi), qexp(x/11, rate = 1/pi))