Special {base} | R Documentation |
Special mathematical functions related to the beta and gamma functions.
beta(a, b)
lbeta(a, b)
gamma(x)
lgamma(x)
digamma(x)
trigamma(x)
tetragamma(x)
pentagamma(x)
choose(n, k)
lchoose(n, k)
a , b , x |
numeric vectors. |
n , k |
integer vectors. |
The functions beta
and lbeta
return the beta function
and the natural logarithm of the beta function,
B(a,b) = \frac{\Gamma(a)\Gamma(b)}{\Gamma(a+b)}.
The functions gamma
and lgamma
return the gamma function
\Gamma(x)
and the natural logarithm of the absolute value of the
gamma function.
The functions digamma
, trigamma
, tetragamma
and
pentagamma
return the first, second, third and fourth
derivatives of the logarithm of the gamma function.
\code{digamma(x)} = \psi(x) = \frac{d}{dx}\ln\Gamma(x) =
\frac{\Gamma'(x)}{\Gamma(x)}
The functions choose
and lchoose
return binomial
coefficients and their logarithms.
Abramowitz, M. and Stegun, I. A. (1972) Handbook of Mathematical Functions. New York: Dover. Chapter 6: Gamma and Related Functions.
Arithmetic
for simple, sqrt
for
miscellaneous mathematical functions and Bessel
for the
real Bessel functions.
choose(5, 2)
for (n in 0:10) print(choose(n, k = 0:n))
curve(gamma(x),-3,4, n=1001, ylim=c(-10,100),
col="red", lwd=2, main="gamma(x)")
abline(h=0,v=0, lty=3, col="midnightblue")
x <- seq(.1, 4, length = 201); dx <- diff(x)[1]
par(mfrow = c(2, 3))
for (ch in c("", "l","di","tri","tetra","penta")) {
is.deriv <- nchar(ch) >= 2
if (is.deriv) dy <- diff(y) / dx
nm <- paste(ch, "gamma", sep = "")
y <- get(nm)(x)
plot(x, y, type = "l", main = nm, col = "red")
abline(h = 0, col = "lightgray")
if (is.deriv) lines(x[-1], dy, col = "blue", lty = 2)
}
par(mfrow = c(2, 2))