Learn R Programming

sirt (version 4.1-15)

rasch.pairwise: Pairwise Estimation Method of the Rasch Model

Description

This function estimates the Rasch model with a minimum chi square estimation method (cited in Fischer, 2007, p. 544) which is a pairwise conditional likelihood estimation approach.

Usage

rasch.pairwise(dat, weights=NULL, conv=1e-04, maxiter=3000, progress=TRUE,
        b.init=NULL, zerosum=FALSE, power=1, direct_optim=TRUE)

# S3 method for rasch.pairwise summary(object, digits=3, file=NULL, ...)

Value

An object of class rasch.pairwise with following entries

b

Item difficulties

eps

Exponentiated item difficulties, i.e. eps=exp(-b)

iter

Number of iterations

conv

Convergence criterion

dat

Original data frame

freq.ij

Frequency table of all item pairs

item

Summary table of item parameters

Arguments

dat

An \(N \times I\) data frame of dichotomous item responses

weights

Optional vector of sampling weights

conv

Convergence criterion

maxiter

Maximum number of iterations

progress

Display iteration progress?

b.init

An optional vector of length \(I\) of item difficulties

zerosum

Optional logical indicating whether item difficulties should be centered in each iteration. The default is that no centering is conducted.

power

Power used for computing pairwise response probabilities like in row averaging approach

direct_optim

Logical indicating whether least squares criterion funcion should be minimized with stats::nlminb

object

Object of class rasch.pairwise

digits

Number of digits after decimal for rounding

file

Optional file name for summary output

...

Further arguments to be passed

References

Fischer, G. H. (2007). Rasch models. In C. R. Rao and S. Sinharay (Eds.), Handbook of Statistics, Vol. 26 (pp. 515-585). Amsterdam: Elsevier.

See Also

See summary.rasch.pairwise for a summary.

A slightly different implementation of this conditional pairwise method is implemented in
rasch.pairwise.itemcluster.

Pairwise marginal likelihood estimation (also labeled as pseudolikelihood estimation) can be conducted with rasch.pml3.

Examples

Run this code
#############################################################################
# EXAMPLE 1: Reading data set | pairwise estimation Rasch model
#############################################################################

data(data.read)
dat <- data.read

#*** Model 1: no constraint on item difficulties
mod1 <- sirt::rasch.pairwise(dat)
summary(mod1)

#*** Model 2: sum constraint on item difficulties
mod2 <- sirt::rasch.pairwise(dat, zerosum=TRUE)
summary(mod2)

if (FALSE) {
#** obtain standard errors by bootstrap
mod2$item$b   # extract item difficulties

# Bootstrap of item difficulties
boot_pw <- function(data, indices ){
    dd <- data[ indices, ] # bootstrap of indices
    mod <- sirt::rasch.pairwise( dat=dd, zerosum=TRUE, progress=FALSE)
    return(mod$item$b)
}
set.seed(986)
library(boot)
bmod2 <- boot::boot(data=dat, statistic=boot_pw, R=999 )
print(bmod2)
summary(bmod2)
# quantiles for bootstrap sample (and confidence interval)
apply(bmod2$t, 2, stats::quantile, probs=c(.025, .5, .975) )
}

Run the code above in your browser using DataLab