resample()
simulate observations from a multinomial distribution.bootstrap()
generate bootstrap estimations of a statistic.jackknife()
generate jackknife estimations of a statistic.
Usage
resample(object, ...)
# S4 method for DiversityIndex
bootstrap(object, n = 1000, f = NULL)
# S4 method for DiversityIndex
jackknife(object)
# S4 method for numeric
resample(object, do, n, size = sum(object), ..., f = NULL)
Arguments
- object
A
numeric
vector of count data (absolute frequencies).- ...
Extra arguments passed to
do
.- n
A non-negative
integer
specifying the number of bootstrap replications.- f
A
function
that takes a single numeric vector (the result ofdo
) as argument.- do
A
function
that takesobject
as an argument and returns a single numeric value.- size
A non-negative
integer
specifying the sample size.
Value
If f
is NULL
, resample()
returns the n
values of do
. Else,
returns the result of f
applied to the n
values of do
.
If f
is NULL
, bootstrap()
and jackknife()
return a data.frame
with the following elements (else, returns the result of f
applied to the
n
values of do
) :
- original
The observed value of
do
applied toobject
.- mean
The bootstrap/jackknife estimate of mean of
do
.- bias
The bootstrap/jackknife estimate of bias of
do
.- error
The boostrap/jackknife estimate of standard error of
do
.
Examples
## Sample observations from a multinomial distribution
x <- sample(1:100, 50, TRUE)
resample(x, do = median, n = 100)
#> [1] 45.0 46.5 45.5 50.0 49.0 45.0 46.5 49.0 49.5 52.0 49.5 49.5 46.0 40.5 45.5
#> [16] 47.5 47.0 45.5 50.0 44.0 46.5 45.5 46.5 43.5 45.5 46.0 47.5 47.0 49.0 48.5
#> [31] 50.5 46.5 51.0 47.5 49.0 46.5 47.5 48.5 46.5 49.5 44.5 46.5 46.5 46.0 47.0
#> [46] 45.5 46.5 52.5 45.0 47.0 49.0 47.5 45.0 46.0 47.0 46.0 50.0 49.5 47.0 43.0
#> [61] 46.0 49.0 44.0 48.5 50.0 48.5 48.0 47.5 46.5 47.5 49.0 45.5 47.0 45.5 47.5
#> [76] 43.0 47.5 47.0 49.5 46.5 46.5 47.5 47.5 48.5 46.0 44.0 47.0 47.0 45.5 45.0
#> [91] 49.0 47.5 46.0 51.0 52.0 45.5 43.0 47.5 45.5 48.0
## Estimate the 25th, 50th and 95th percentiles
quant <- function(x) { quantile(x, probs = c(0.25, 0.50, 0.75)) }
resample(x, n = 100, do = median, f = quant)
#> 25% 50% 75%
#> 45.5 47.0 48.5