linear.approx
Linear Approximation of Bootstrap Replicates
This function takes a bootstrap object and for each bootstrap replicate it calculates the linear approximation to the statistic of interest for that bootstrap sample.
- Keywords
- nonparametric
Usage
linear.approx(boot.out, L = NULL, index = 1, type = NULL,
t0 = NULL, t = NULL, …)
Arguments
- boot.out
An object of class
"boot"
representing a nonparametric bootstrap. It will usually be created by the functionboot
.- L
A vector containing the empirical influence values for the statistic of interest. If it is not supplied then
L
is calculated through a call toempinf
.- index
The index of the variable of interest within the output of
boot.out$statistic
.- type
This gives the type of empirical influence values to be calculated. It is not used if
L
is supplied. The possible types of empirical influence values are described in the help forempinf
.- t0
The observed value of the statistic of interest. The input value is used only if one of
t
orL
is also supplied. The default value isboot.out$t0[index]
. Ift0
is supplied but neithert
norL
are supplied thent0
is set toboot.out$t0[index]
and a warning is generated.- t
A vector of bootstrap replicates of the statistic of interest. If
t0
is missing thent
is not used, otherwise it is used to calculate the empirical influence values (if they are not supplied inL
).- ...
Any extra arguments required by
boot.out$statistic
. These are needed ifL
is not supplied as they are used byempinf
to calculate empirical influence values.
Details
The linear approximation to a bootstrap replicate with frequency vector f
is given by t0 + sum(L * f)/n
in the one sample with an easy extension
to the stratified case. The frequencies are found by calling boot.array
.
Value
A vector of length boot.out$R
with the linear approximations to the
statistic of interest for each of the bootstrap samples.
References
Davison, A.C. and Hinkley, D.V. (1997) Bootstrap Methods and Their Application. Cambridge University Press.
See Also
Examples
# NOT RUN {
# Using the city data let us look at the linear approximation to the
# ratio statistic and its logarithm. We compare these with the
# corresponding plots for the bigcity data
ratio <- function(d, w) sum(d$x * w)/sum(d$u * w)
city.boot <- boot(city, ratio, R = 499, stype = "w")
bigcity.boot <- boot(bigcity, ratio, R = 499, stype = "w")
op <- par(pty = "s", mfrow = c(2, 2))
# The first plot is for the city data ratio statistic.
city.lin1 <- linear.approx(city.boot)
lim <- range(c(city.boot$t,city.lin1))
plot(city.boot$t, city.lin1, xlim = lim, ylim = lim,
main = "Ratio; n=10", xlab = "t*", ylab = "tL*")
abline(0, 1)
# Now for the log of the ratio statistic for the city data.
city.lin2 <- linear.approx(city.boot,t0 = log(city.boot$t0),
t = log(city.boot$t))
lim <- range(c(log(city.boot$t),city.lin2))
plot(log(city.boot$t), city.lin2, xlim = lim, ylim = lim,
main = "Log(Ratio); n=10", xlab = "t*", ylab = "tL*")
abline(0, 1)
# The ratio statistic for the bigcity data.
bigcity.lin1 <- linear.approx(bigcity.boot)
lim <- range(c(bigcity.boot$t,bigcity.lin1))
plot(bigcity.lin1, bigcity.boot$t, xlim = lim, ylim = lim,
main = "Ratio; n=49", xlab = "t*", ylab = "tL*")
abline(0, 1)
# Finally the log of the ratio statistic for the bigcity data.
bigcity.lin2 <- linear.approx(bigcity.boot,t0 = log(bigcity.boot$t0),
t = log(bigcity.boot$t))
lim <- range(c(log(bigcity.boot$t),bigcity.lin2))
plot(bigcity.lin2, log(bigcity.boot$t), xlim = lim, ylim = lim,
main = "Log(Ratio); n=49", xlab = "t*", ylab = "tL*")
abline(0, 1)
par(op)
# }