sirt (version 3.9-4)

rasch.va: Estimation of the Rasch Model with Variational Approximation

Description

This function estimates the Rasch model by the estimation method of variational approximation (Rijmen & Vomlel, 2008).

Usage

rasch.va(dat, globconv=0.001, maxiter=1000)

Arguments

dat

Data frame with dichotomous item responses

globconv

Convergence criterion for item parameters

maxiter

Maximal number of iterations

Value

A list with following entries:

sig

Standard deviation of the trait

item

Data frame with item parameters

xsi.ij

Data frame with variational parameters \(\xi_{ij}\)

mu.i

Vector with individual means \(\mu_i\)

sigma2.i

Vector with individual variances \(\sigma_i^2\)

References

Rijmen, F., & Vomlel, J. (2008). Assessing the performance of variational methods for mixed logistic regression models. Journal of Statistical Computation and Simulation, 78, 765-779.

Examples

Run this code
# NOT RUN {
#############################################################################
# EXAMPLE 1: Rasch model
#############################################################################
set.seed(8706)
N <- 5000
I <- 20
dat <- sirt::sim.raschtype( stats::rnorm(N,sd=1.3), b=seq(-2,2,len=I) )

# estimation via variational approximation
mod1 <- sirt::rasch.va(dat)

# estimation via marginal maximum likelihood
mod2 <- sirt::rasch.mml2(dat)

# estmation via joint maximum likelihood
mod3 <- sirt::rasch.jml(dat)

# compare sigma
round( c( mod1$sig, mod2$sd.trait ), 3 )
## [1] 1.222 1.314

# compare b
round( cbind( mod1$item$b, mod2$item$b, mod3$item$itemdiff), 3 )
##         [,1]   [,2]   [,3]
##  [1,] -1.898 -1.967 -2.090
##  [2,] -1.776 -1.841 -1.954
##  [3,] -1.561 -1.618 -1.715
##  [4,] -1.326 -1.375 -1.455
##  [5,] -1.121 -1.163 -1.228
# }

Run the code above in your browser using DataLab