Density, distribution function, quantile function and random
generation for the Weibull distribution with parameters
dweibull(x, shape, scale = 1, log = FALSE) pweibull(q, shape, scale = 1, lower.tail = TRUE, log.p = FALSE) qweibull(p, shape, scale = 1, lower.tail = TRUE, log.p = FALSE) rweibull(n, shape, scale = 1)
vector of quantiles.
vector of probabilities.
number of observations. If
shape and scale parameters, the latter defaulting to 1.
logical; if TRUE, probabilities p are given as log(p).
logical; if TRUE (default), probabilities are P[X ≤ x], otherwise, P[X > x].
The Weibull distribution with
shape parameter a and
scale parameter b has density given by
f(x) = (a/b) (x/b)^(a-1) exp(- (x/b)^a)
for x > 0. The cumulative distribution function is F(x) = 1 - exp(- (x/b)^a) on x > 0, the mean is E(X) = b Γ(1 + 1/a), and the Var(X) = b^2 * (Γ(1 + 2/a) - (Γ(1 + 1/a))^2).
dweibull gives the density,
pweibull gives the distribution function,
qweibull gives the quantile function, and
rweibull generates random deviates.
Invalid arguments will result in return value
NaN, with a warning.
The length of the result is determined by
rweibull, and is the maximum of the lengths of the
numerical arguments for the other functions.
The numerical arguments other than
n are recycled to the
length of the result. Only the first elements of the logical
arguments are used.
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.
[dpq]weibull are calculated directly from the definitions.
rweibull uses inversion.
Johnson, N. L., Kotz, S. and Balakrishnan, N. (1995) Continuous Univariate Distributions, volume 1, chapter 21. Wiley, New York.
Distributions for other standard distributions, including the Exponential which is a special case of the Weibull distribution.
x <- c(0, rlnorm(50)) all.equal(dweibull(x, shape = 1), dexp(x)) all.equal(pweibull(x, shape = 1, scale = pi), pexp(x, rate = 1/pi)) ## Cumulative hazard H(): all.equal(pweibull(x, 2.5, pi, lower.tail = FALSE, log.p = TRUE), -(x/pi)^2.5, tolerance = 1e-15) all.equal(qweibull(x/11, shape = 1, scale = pi), qexp(x/11, rate = 1/pi))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.