modIRT {equateIRT} | R Documentation |
Estimated Coefficients and Covariance Matrix of IRT Models
Description
Creates an object of the class modIRT
containing estimated
coefficients and covariance matrices of IRT models.
Rasch, one-parameter logistic, two-parameter logistic and three-parameter
logistic models are included.
Usage
modIRT(est.mods = NULL, coef = NULL, var = NULL, names = NULL, ltparam = TRUE,
lparam = TRUE, display = TRUE, digits = 2)
Arguments
est.mods |
list of output objects from functions |
coef |
necessary only if |
var |
necessary only if |
names |
character vector containing the names of the forms.
This should have the same length of |
ltparam |
logical; if TRUE the latent trait parameterization is used
for difficulty parameters and the |
lparam |
logical; if TRUE the logistic parameterization is used
for guessing parameters and the |
display |
logical; if TRUE coefficients and standard errors are printed. |
digits |
integer indicating the number of decimal places to be used
if |
Details
Since package version 2.5.0 this function takes as input est.mods
.
ltparam
and lparam
refers the the parameterization used
by the software used to estimate item parameters. The R package ltm
,
and the programs IRTPRO and flexMIRT use these parameterizations.
If ltparam
is TRUE
the latent trait parameterization is used.
Under this parameterization, the three-parameter logistic model is as follows
\pi_i = c_i + (1 - c_i) \frac{\exp(\beta_{1i} + \beta_{2i} z)}{1 +
\exp(\beta_{1i} + \beta_{2i} z)},
where
\pi_i
denotes the conditional probability of responding correctly to the i
th item given z
,
c_i
denotes the guessing parameter, \beta_{1i}
is the easiness parameter,
\beta_{2i}
is the discrimination parameter, and z
denotes the
latent ability.
The two-parameter logistic model, the one-parameter logistic model
and the Rasch model present the same
formulation. The two-parameter logistic model can be obtained
by setting c_i
equal to zero,
the one-parameter logistic model can be obtained
by setting c_i
equal to zero and \beta_{2i}
costant across items,
while the Rasch model can be obtained by setting c_i
equal to zero and \beta_{2i}
equal to 1.
If lparam
is TRUE the guessing parameters are given under this
parameterization
c_i = \frac{\exp(c_i^*)}{1+\exp(c_i^*)}.
The modIRT
function returns parameter estimates
under the usual IRT parameterization, that is,
\pi_i = c_i + (1 - c_i) \frac{\exp[D a_i (\theta - b_i)]}{1 +
\exp[D a_i (\theta - b_i)]},
where D a_i = \beta_{2i}
, b_i = -\beta_{1i}/\beta_{2i}
and
\theta = z
.
If ltparam
or lparam
are TRUE, the covariance matrix
is calculated using the delta method.
If item parameters are already given under the usual IRT parameterization,
arguments ltparam
and lparam
should be set to FALSE
.
Value
An object of class modIRT
consisting in a list with length equal
to the number of forms containing lists with components
coefficients |
item parameter estimates. |
var |
covariance matrix of item parameter estimates. |
itmp |
number of item parameters of the IRT model. This is 1 for the Rasch model, 2 for the one-parameter logistic model with constant discriminations, 2 for the two-parameter logistic model and 3 for the three-parameter logistic model. |
Author(s)
Michela Battauz
References
Battauz, M. (2015). equateIRT: An R Package for IRT Test Equating. Journal of Statistical Software, 68, 1–22.
Bartholomew, D., Knott, M. and Moustaki, I. (2011) Latent Variable Models and Factor Analysis: a Unified Approach, 3rd ed. Wiley.
Rizopoulos, D. (2006). ltm: an R package for latent variable modelling and item response theory analyses. Journal of Statistical Software, 17, 1–25.
See Also
Examples
# the following code can be used to estimate the item parameters and then
# extract the coefficients and their covariance matrices
# skipping functions import.mirt or import.ltm
## Not run:
library("mirt")
data("data2pl")
m1 <- mirt(data2pl[[1]], SE = TRUE)
m2 <- mirt(data2pl[[2]], SE = TRUE)
m3 <- mirt(data2pl[[3]], SE = TRUE)
m4 <- mirt(data2pl[[4]], SE = TRUE)
m5 <- mirt(data2pl[[5]], SE = TRUE)
mlist<- list(m1,m2,m3,m4,m5)
test <- paste("test", 1:5, sep = "")
mod2pl <- modIRT(est.mods = mlist, names = test, display = FALSE)
## End(Not run)
# ===========================================================================
# the following code uses item parameter estimates previously obtained
# three-parameter logistic model
data(est3pl) # includes item parameter estimates
test <- paste("test", 1:5, sep = "")
mod3pl <- modIRT(coef = est3pl$coef, var = est3pl$var, names = test, display = FALSE)
# two-parameter logistic model
data(est2pl) # includes item parameter estimates
test <- paste("test", 1:5, sep = "")
mod2pl <- modIRT(coef = est2pl$coef, var = est2pl$var, names = test, display = FALSE)
# Rasch model
data(estrasch) # includes item parameter estimates
test <- paste("test", 1:5, sep = "")
modrasch <- modIRT(coef = estrasch$coef, var = estrasch$var, names = test,
display = FALSE)
# one-parameter logistic model imported from the R package ltm
library(ltm)
mod1pl <- rasch(LSAT)
summary(mod1pl)
est.mod1pl <- import.ltm(mod1pl)
mod1pl.ltm <- modIRT(coef = list(est.mod1pl$coef), var = list(est.mod1pl$var), digits = 4)