| GammaDist {stats} | R Documentation |
Density, distribution function, quantile function and random
generation for the Gamma distribution with parameters shape and
scale.
dgamma(x, shape, rate = 1, scale = 1/rate, log = FALSE)
pgamma(q, shape, rate = 1, scale = 1/rate, lower.tail = TRUE,
log.p = FALSE)
qgamma(p, shape, rate = 1, scale = 1/rate, lower.tail = TRUE,
log.p = FALSE)
rgamma(n, shape, rate = 1, scale = 1/rate)
x, q |
vector of quantiles. |
p |
vector of probabilities. |
n |
number of observations. If length(n) > 1, the length
is taken to be the number required. |
rate |
an alternative way to specify the scale. |
shape, scale |
shape and scale parameters. Must be strictly positive. |
log, log.p |
logical; if TRUE, probabilities/densities p
are returned as log(p). |
lower.tail |
logical; if TRUE (default), probabilities are P[X <= x], otherwise, P[X > x]. |
If scale is omitted, it assumes the default value of 1.
The Gamma distribution with parameters shape = a
and scale = s has density
f(x)= 1/(s^a Gamma(a)) x^(a-1) e^-(x/s)
for x > 0, a > 0 and s > 0.
(Here Gamma(a) is the function implemented by R's
gamma() and defined in its help.)
The mean and variance are E(X) = a*s and Var(X) = a*s^2.
The cumulative hazard H(t) = - log(1 - F(t))
is -pgamma(t, ..., lower = FALSE, log = TRUE).
dgamma gives the density,
pgamma gives the distribution function,
qgamma gives the quantile function, and
rgamma generates random deviates.
Invalid arguments will result in return value NaN, with a warning.
The S parametrization is via shape and rate: S has no
scale parameter.
pgamma is closely related to the incomplete gamma function. As
defined by Abramowitz and Stegun 6.5.1
P(a,x) = 1/Gamma(a) integral_0^x t^(a-1) exp(-t) dt
P(a, x) is pgamma(x, a). Other authors (for example
Karl Pearson in his 1922 tables) omit the normalizing factor,
defining the incomplete gamma function as pgamma(x, a) * gamma(a).
dgamma is computed via the Poisson density, using code contributed
by Catherine Loader (see dbinom).
Prior to R 2.1.0 pgamma used AS239 (Shea, 1988). It
currently uses an unpublished (and not otherwise documented) algorithm
`mainly by Morten Welinder'.
qgamma is based on a C translation of
Best, D. J. and D. E. Roberts (1975). Algorithm AS91. Percentage points of the chi-squared distribution. Applied Statistics, 24, 385–388.
plus a final Newton step to improve the approximation.
rgamma for shape >= 1 uses
Ahrens, J. H. and Dieter, U. (1982). Generating gamma variates by a modified rejection technique. Communications of the ACM, 25, 47–54,
and for 0 < shape < 1 uses
Ahrens, J. H. and Dieter, U. (1974). Computer methods for sampling from gamma, beta, Poisson and binomial distributions. Computing, 12, 223–246.
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
Shea, B. L. (1988) Algorithm AS 239, Chi-squared and incomplete Gamma integral, Applied Statistics (JRSS C) 37, 466–473.
Abramowitz, M. and Stegun, I. A. (1972) Handbook of Mathematical Functions. New York: Dover. Chapter 6: Gamma and Related Functions.
gamma for the gamma function, dbeta for
the Beta distribution and dchisq for the chi-squared
distribution which is a special case of the Gamma distribution.
-log(dgamma(1:4, shape=1)) p <- (1:9)/10 pgamma(qgamma(p,shape=2), shape=2) 1 - 1/exp(qgamma(p, shape=1))