saddle {boot}  R Documentation 
Saddlepoint Approximations for Bootstrap Statistics
Description
This function calculates a saddlepoint approximation to the
distribution of a linear combination of W at a particular point
u
, where W is a vector of random variables. The
distribution of W may be multinomial (default), Poisson or
binary. Other distributions are possible also if the adjusted
cumulant generating function and its second derivative are given.
Conditional saddlepoint approximations to the distribution of one
linear combination given the values of other linear combinations of
W can be calculated for W having binary or Poisson
distributions.
Usage
saddle(A = NULL, u = NULL, wdist = "m", type = "simp", d = NULL,
d1 = 1, init = rep(0.1, d), mu = rep(0.5, n), LR = FALSE,
strata = NULL, K.adj = NULL, K2 = NULL)
Arguments
A 
A vector or matrix of known coefficients of the linear combinations
of W. It is a required argument unless 
u 
The value at which it is desired to calculate the saddlepoint
approximation to the distribution of the linear combination of
W. It is a required argument unless 
wdist 
The distribution of W. This can be one of 
type 
The type of saddlepoint approximation. Possible types are

d 
This specifies the dimension of the whole statistic. This argument
is required only when 
d1 
When 
init 
Used if 
mu 
The values of the parameters of the distribution of W when

LR 
If 
strata 
The strata for stratified data. 
K.adj 
The adjusted cumulant generating function used when 
K2 
This is a function of a single parameter 
Details
If wdist
is "o"
or "m"
, the saddlepoint equations
are solved using nlmin
to minimize K.adj
with respect to
its parameter zeta
. For the Poisson and binary cases, a
generalized linear model is fitted such that the parameter estimates
solve the saddlepoint equations. The response variable 'y' for the
glm
must satisfy the equation t(A)%*%y = u
(t()
being the transpose function). Such a vector can be found as a feasible
solution to a linear programming problem. This is done by a call to
simplex
. The covariate matrix for the glm
is given by
A
.
Value
A list consisting of the following components
spa 
The saddlepoint approximations. The first value is the density approximation and the second value is the distribution function approximation. 
zeta.hat 
The solution to the saddlepoint equation. For the conditional saddlepoint this is the solution to the saddlepoint equation for the numerator. 
zeta2.hat 
If 
References
Booth, J.G. and Butler, R.W. (1990) Randomization distributions and saddlepoint approximations in generalized linear models. Biometrika, 77, 787–796.
Canty, A.J. and Davison, A.C. (1997) Implementation of saddlepoint approximations to resampling distributions. Computing Science and Statistics; Proceedings of the 28th Symposium on the Interface, 248–253.
Davison, A.C. and Hinkley, D.V. (1997) Bootstrap Methods and their Application. Cambridge University Press.
Jensen, J.L. (1995) Saddlepoint Approximations. Oxford University Press.
See Also
Examples
# To evaluate the bootstrap distribution of the mean failure time of
# airconditioning equipment at 80 hours
saddle(A = aircondit$hours/12, u = 80)
# Alternatively this can be done using a conditional poisson
saddle(A = cbind(aircondit$hours/12,1), u = c(80, 12),
wdist = "p", type = "cond")
# To use the LugananniRice approximation to this
saddle(A = cbind(aircondit$hours/12,1), u = c(80, 12),
wdist = "p", type = "cond",
LR = TRUE)
# Example 9.16 of Davison and Hinkley (1997) calculates saddlepoint
# approximations to the distribution of the ratio statistic for the
# city data. Since the statistic is not in itself a linear combination
# of random Variables, its distribution cannot be found directly.
# Instead the statistic is expressed as the solution to a linear
# estimating equation and hence its distribution can be found. We
# get the saddlepoint approximation to the pdf and cdf evaluated at
# t = 1.25 as follows.
jacobian < function(dat,t,zeta)
{
p < exp(zeta*(dat$xt*dat$u))
abs(sum(dat$u*p)/sum(p))
}
city.sp1 < saddle(A = city$x1.25*city$u, u = 0)
city.sp1$spa[1] < jacobian(city, 1.25, city.sp1$zeta.hat) * city.sp1$spa[1]
city.sp1