# bootstrap: Bootstrap Equating Error In equate: Observed-Score Linking and Equating

## 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

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14``` ```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`”. `y` score distribution of class “`freqtab`”. `xp, yp` optional frequency tables replacing those equated in `x`, used for parametric bootsampling. `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. `...` further arguments passed to or from other methods.

## 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 and absolute 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 and absolute means, as applicable.

## Methods (by class)

• `default`: Default boostrap method for “`freqtab`” objects.

• `equate`: Method for “`equate`” objects.

• `freqtab`: Bootstrap method for “`freqtab`” objects.

## Author(s)

Anthony Albano [email protected]

`plot.bootstrap`
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20``` ```# 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) ```