Weibull {base} | R Documentation

## The Weibull Distribution

### Description

Density, distribution function, quantile function and random generation for the Weibull distribution with parameters `shape` and `scale`.

### Usage

    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)

### Arguments

`x, q` | vector of quantiles.
`p` | vector of probabilities.
`n` | number of observations to generate.
`shape, scale` | shape and scale 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 P[X <= x], otherwise, P[X > x].

### Details

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 is F(x) = 1 - exp(- (x/b)^a), the mean is E(X) = b Gamma(1 + 1/a), and the Var(X) = b^2*(Gamma(1 + 2/a) - Gamma(1 + 1/a)).

### 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, 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=FALSE, log=TRUE), -(x/pi)^2.5, tol=1e-15)
    all.equal(qweibull(x/11, shape = 1, scale = pi), qexp(x/11, rate = 1/pi))