saddlepoint {EQL} | R Documentation |
Computes the (normalized) saddlepoint approximation of the mean of
n
i.i.d. random variables.
saddlepoint(x, n, cumulants, correct = TRUE, normalize = FALSE)
x |
a numeric vector or array with the values at which the approximation should be evaluated. |
n |
a positive integer giving the number of i.i.d. random variables in the sum. |
cumulants |
a |
correct |
logical. If |
normalize |
logical. If |
The saddlepoint approximation (SA) for the density of the
mean Z=S_n/n
of i.i.d. random variables
Y_i
with S_n=\sum_{i=1}^n Y_i
is given
by:
f_Z(z) \approx c\sqrt{\frac{n}{2\pi K_{Y}''(s)}}
\exp\{n[K_{Y}(s)- sz]\},
where c
is an appropriatly chosen correction term, which is
based on higher cumulants. The function K_Y(\cdot)
denotes the cumulant
generating function and s
denotes the saddlepoint
which is the solution of the saddlepoint function:
K'(s)=z.
For the renormalized version of the SA one chooses c
such that f_Z(z)
integrates to one, otherwise it includes the
3rd and the 4th standardized cumulant.
The saddlepoint approximation is an improved version of the Edgeworth
approximation and makes use of ‘exponential tilted’
densities. The weakness of the Edgeworth method lies in the
approximation in the tails of the density. Thus, the saddlepoint
approximation embed the original density in the “conjugate
exponential family” with parameter \theta
. The mean of
the embeded density depends on \theta
which allows for
evaluating the Edgeworth approximation at the mean, where it is known
to give reasonable results.
saddlepoint
returns an object of class approximation
. See
function approximation
for further details.
Thorn Thaler
Reid, N. (1991). Approximations and Asymptotics. Statistical Theory and Modelling, London: Chapman and Hall.
approximation
, cumulants
, edgeworth
# Saddlepoint approximation for the density of the mean of n Gamma
# variables with shape=1 and scale=1
n <- 10
shape <- scale <- 1
x <- seq(0, 3, length=1000)
sp <- saddlepoint(x, n, gammaCumulants(shape, scale))
plot(sp, lwd=2)
# Mean of n Gamma(1,1) variables is n*Gamma(n,1) distributed
lines(x, n*dgamma(n*x, shape=n*shape, scale=scale), col=2)