sirt (version 3.9-4)

sim.raschtype: Simulate from Generalized Logistic Item Response Model

Description

This function simulates dichotomous item responses from a generalized logistic item response model (Stukel, 1988). The four-parameter logistic item response model (Loken & Rulison, 2010) is a special case. See rasch.mml2 for more details.

Usage

sim.raschtype(theta, b, alpha1=0, alpha2=0, fixed.a=NULL,
    fixed.c=NULL, fixed.d=NULL)

Arguments

theta

Unidimensional ability vector \(\theta\)

b

Vector of item difficulties \(b\)

alpha1

Parameter \(\alpha_1\) in generalized logistic link function

alpha2

Parameter \(\alpha_2\) in generalized logistic link function

fixed.a

Vector of item slopes \(a\)

fixed.c

Vector of lower item asymptotes \(c\)

fixed.d

Vector of lower item asymptotes \(d\)

Value

Data frame with simulated item responses

Details

The class of generalized logistic link functions contain the most important link functions using the specifications (Stukel, 1988):

logistic link function: \(\alpha_1=0\) and \(\alpha_2=0\) probit link function: \(\alpha_1=0.165\) and \(\alpha_2=0.165\) loglog link function: \(\alpha_1=-0.037\) and \(\alpha_2=0.62\) cloglog link function: \(\alpha_1=0.62\) and \(\alpha_2=-0.037\)

See pgenlogis for exact transformation formulas of the mentioned link functions.

References

Loken, E., & Rulison, K. L. (2010). Estimation of a four-parameter item response theory model. British Journal of Mathematical and Statistical Psychology, 63, 509-525.

Stukel, T. A. (1988). Generalized logistic models. Journal of the American Statistical Association, 83, 426-431.

See Also

rasch.mml2, pgenlogis

Examples

Run this code
# NOT RUN {
#############################################################################
## EXAMPLE 1: Simulation of data from a Rasch model (alpha_1=alpha_2=0)
#############################################################################

set.seed(9765)
N <- 500    # number of persons
I <- 11     # number of items
b <- seq( -2, 2, length=I )
dat <- sirt::sim.raschtype( stats::rnorm( N ), b )
colnames(dat) <- paste0( "I", 1:I )
# }

Run the code above in your browser using DataLab