eatModel-package | R Documentation |
The software Conquest (Wu, Adams, Wilson, & Haldane, 2007) is a computer program for fitting item response and latent regression models. It is based on the Multi-dimensional mixed-Coefficients Multinomial Logit Model, which is a generalized form of the Rasch Model (Adams & Wu, 2007). For example, Conquest allows for the estimation of the Rasch model, the rating scale model, the partial credit model, the linear logistic test model, multifacet models, multidimensional and latent regression models.
Like Mplus, the interface of Conquest in its version 2.0 is command-line (cmd) based, where the syntax,
the data and fixed effects indicator names (i.e., names of items) have to be provided in separated ASCII
files. The package eatModel
was created to allow for more fail-save, less cumbersome
specification of IRT models in R, which subsequently can be estimated in Conquest. The package translate
model specification and data from R into Conquest input syntaxes and re-imports Conquest output to R.
At the heart of the package are several functions, which build on each other and should be called consecutively.
Not every function is mandatory to be called—it depends on the desired analyses.
splitModels
is only necessary if the user wants to estimate several IRT models in
a row, using only one function call. This might be useful, if, for example, one model
should be fitted separately in various person groups, for example the federal states in Germany,
or if one (unidimensional) model should be fitted separately for several domains (i.e., item groups), say listening
comprehension and reading comprehension. Hence, the split may be defined according to person groups
(federal states, for example), or item groups (domains) or both. If only one model should be defined
and estimated, calling splitModels
is not necessary and may be skipped. Start directly with
defineModel
instead. Hence, you may think of splitModels
as predefining
a loop, like lapply
or by
.
defineModel
is used to specify the model and the analysis software (e.g., Conquest or
TAM) as well as the data. Several consistency checks are performed and all required input
for the estimation software is prepared. If several models should be estimated in a row,
defineModel
needs the output from splitModels
. The variety of models
that can be specified with defineModel is significantly reduced compared to specifying the models directly in TAM.
runModel
needs the output generated by defineModel
and simply starts the
‘estimator’ (e.g. Conquest or TAM)
getResults
needs the output generated by runModel
and re-collects all created
model output which is represented then in a single R data frame. The aim of the function is
to provide the model output in a consistent framework which is independent from the software
used for analysis. Strictly speaking, getResults
isn't necessary, i.e. the user is free
to work with the output provided by Conquest or TAM directly.
equat1pl
needs the output generated by getResults
. It provides equating
in a one-parameter (1pl) context, accounting for linking DIF and a clustered structure of
items (items nested in testlets). In the multiple model case (i.e., if splitModels
was called), the linking is executed for all defined models simultaneously.
transformToBista
needs the output generated by equat1pl
. It provides
transformation of item and person parameters to an arbitrary scale (for example the
“PISA”-metric or the metric of the german educational standards).
The multi-stage process of model estimation works for one single model as well as for a compilation
of several models in only one call. The estimation of these models may be accelerated using multicore
processing. Depending on the number of available logical CPUs, several models may be estimated
simultaneously. The function splitModels
allows to allocate the analyses to several cores.
See the examples of splitModels
for further details. The help page of defineModel
includes a variety of examples which are derived from the context of the IQB “Laendervergleich”.
Basically, eatModel
is useful for Conquest analyses which are called from R. Alternatively, the R package
TAM
allows to estimate parameters of the mixed-Coefficients Multinomial Logit Model solely in an
R environment. eatModel
allows all models to be estimated in TAM
likewise. The software
argument in the defineModel
function allows to choose the desired software.
Please note that some model specifications (for example, 2pl/3pl) lead to models only TAM is able to
estimate.
Historically, eatModel
is a ‘reboot’ of the package eatRest
formerly known as
eat
. The first development of some of its main functions started loosely in autumn 2009 at the
Institute of Educational Progress (IQB). For the first time, any attempts to develop an R package were
neither made nor intended. (Besides, no one knew how to do this.) The functions existed only in some ASCII
files which were loosely scattered across the IQB computers. As part of the gradual switchover from
SPSS to R which has taken place at the IQB, the package eat
(“Educational Assessment Tools”)
was set up to bundle all functions which were developed by then. A gentle group that called itself
“Central coordination of data analysis” (ZKD) claimed responsibility for these courses of action.
This group's endeavors were driven by the burning desire to standardize assessment procedures between
different projects across the IQB. The “Laendervergleich 2011” was the first study where eat
has been used intensely. In 2012, during ZKD's first period of prosperity, the variety of the eat
functionality has been grown and was therefore partitioned into several small “sub packages”—by name
eatPrep
for data preparation, eatTools
for several auxiliary functions, eatRest
for
Rasch modeling, eatRep
for replication methods, eatDesign
for definition and modification
of design properties. The further development of eatRest
was expired because the package turned
out to be enigmaticly written which led to undebugable problems, especially with the ardently loved
results structure. ZKD authors did not understand any longer the code which has been written before.
Thus, eatModel
is the second attempt. Its functionality is closely related to eatRest
but adds some new features—for example, the support of 2pl models using the TAM
package.
Important note: For consistency reasons, some functions in eatModel
have identical names
as the corresponding function in eatRest
, for example get.shw
. It is strongly recommended
to not have both packages attached simultaneously in one R session.
Package: | eatModel |
Type: | Package |
Version: | 0.8.50 |
Date: | 2025-01-24 |
License: | GPL(>=2) |
Author/maintainer: Sebastian Weirich <sebastian.weirich@iqb.hu-berlin.de>
Adams, R. J., Wilson, M., & Wang, W.-C. (1997). The multidimensional random coefficients multinomial logit model. Applied Psychological Measurement, 21(1), 1-23.
Adams, R. J., & Wu, M. L. (2007). The Mixed-Coefficients Multinomial Logit Model: A Generalized Form of the Rasch Model. In M. Von Davier & C. H. Carstensen (Eds.), Multivariate and Mixture Distribution Rasch Models (pp. 57-75). New York: Springer.
Robitzsch, A., Kiefer, T., & Wu, M. (2018). TAM: Test analysis modules. R package version 2.13-15. https://CRAN.R-project.org/package=TAM
Wu, M.L., Adams, R.J., Wilson, M.R., & Haldane, S.A. (2007). ACER ConQuest Version 2.0. Generalised Item Response Modeling Software. Camberwell, Victoria: ACER Press.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.