bootstrap: Bootstrap Equating Error

View source: R/bootstrap.R

bootstrapR Documentation

Bootstrap Equating Error

Description

These functions return bootstrap standard errors, bias, and RMSE of equating. A summary method estimates mean and weighted mean errors over the score scale.

Usage

bootstrap(x, ...)

## Default S3 method:
bootstrap(x, y, ...)

## S3 method for class 'equate'
bootstrap(x, xp = x$x, yp = x$y, ...)

## S3 method for class 'freqtab'
bootstrap(
  x,
  y,
  xn = sum(x),
  yn = sum(y),
  reps = 100,
  crit,
  args,
  eqs = FALSE,
  sharesmooth = FALSE,
  ...
)

## S3 method for class 'bootstrap'
summary(object, weights, subset, ...)

Arguments

x

either an equating object, obtained with the equate function, or a score distribution of class “freqtab”.

...

further arguments passed to or from other methods.

y

score distribution of class “freqtab”.

xp, yp

optional frequency tables replacing those equated in x, used for parametric bootstrap resampling.

xn, yn

integers specifying the number of scores to sample from each distribution at each replication (default is the total number observed in each).

reps

number of bootstrap replications.

crit

vector of equated scores serving as the criterion equating function when calculating bootstrap bias and RMSE, both of which are returned when crit is specified.

args

named list of equating arguments, passed to equate, specifying, e.g., the equating type and method. See below for details.

eqs

logical, with default FALSE, indicating whether or not the matrices of equating functions (one column per replication, per equating) should be returned.

sharesmooth

logical, defaulting to FALSE, indicating whether or not loglinear presmoothing should be performed once per replication using arguments given in args. Ignored if smoothmethod = "loglinear" is not given in any args.

object

bootstrap output to be summarized.

weights

vector of weights to be used in calculating weighted average errors with summary, defaulting to the frequencies in margin(object$x).

subset

vector indicating a subset of the score scale for which errors should be summarized.

Details

Samples are drawn of size xn and yn, with replacement, from each score distribution. Form Y equivalents of each form X score are then obtained using either the arguments in the equating output or those provided. This process is repeated reps times. Standard errors are calculated as standard deviations over replications for each score point; bias is the mean equated score over replications, minus the criterion; and RMSE is the square root of the squared standard error and squared bias combined.

The bootstrap method for objects of class “equate” is designed to be called from within equate. It simply extracts the necessary arguments from the equating output before bootstrapping.

When each element in args is a named list of equating arguments, multiple equatings are performed at each replication in the bootstrapping.

The summary method returns a data.frame of mean standard errors, bias, and rmse, and weighted means, as applicable.

Value

With bootstrap, a list is returned, containing arguments supplied for x, y, reps, xn, yn, and args. For a single equating, the mean equating function over replications and a vector of standard errors se are included, along with vectors of bias and rmse, when crit is provided, and a matrix of equating functions eqs when eqs = TRUE. For multiple equatings, where each element of args is a list of equating arguments, matrices are returned for the mean functions, standard error, bias, and RMSE, and the equating functions will be returned as a list of matrices. The summary method returns a data frame of mean standard errors, bias, and rmse, and weighted means, as applicable.

Methods (by class)

  • default: Default bootstrap method for “freqtab” objects.

  • equate: Method for “equate” objects.

  • freqtab: Bootstrap method for “freqtab” objects.

Author(s)

Anthony Albano tony.d.albano@gmail.com

See Also

plot.bootstrap

Examples


# Parametric bootstrapping using smoothed
# frequency distributions
set.seed(111213)
x <- freqtab(KBneat$x, scales = list(0:36, 0:12))
y <- freqtab(KBneat$y, scales = list(0:36, 0:12))
xp <- loglinear(x, asfreqtab = TRUE)
yp <- loglinear(y, asfreqtab = TRUE)
crit <- equate(xp, yp, "e", "c")$conc$yx
eqargs <- list(m.t = list(type = "m", method = "t"),
  l.t = list(type = "l", method = "t"))
bootout1 <- bootstrap(x = x, y = y, xn = 20, yn = 20,
  crit = crit, args = eqargs, reps = 30)
plot(bootout1, out = "rmse", legendplace = "top",
  addident = FALSE)

# Bootstraps for an existing equating
eq <- equate(x, y, type = "m", method = "t")
bootout2 <- bootstrap(eq, xn = 100, yn = 100,
  crit = crit, reps = 20)
summary(bootout2)


equate documentation built on June 7, 2022, 5:10 p.m.