est {irtoys} | R Documentation |
Estimate IRT item parameters using either ICL, BILOG, or
ltm
. Provides access to the most widely used options
in these programs.
est(resp, model = "2PL", engine = "icl", nqp = 20, est.distr = FALSE, logistic = TRUE, nch = 5, a.prior = TRUE, b.prior = FALSE, c.prior = TRUE, bilog.defaults = TRUE, rasch = FALSE, run.name = "mymodel")
resp |
A matrix of responses: persons as rows, items as columns, entries are either 0 or 1, no missing data |
model |
The IRT model: "1PL", "2PL", or "3PL". Default is "2PL". |
engine |
One of "icl", "bilog", or "ltm". Default is "icl". |
nqp |
Number of quadrature points. Default is 20. |
est.distr |
T if the probabilities of the latent distribution are to be estimated, F if a normal distribution is assumed. Default is F. Ignored when engine="ltm" . |
logistic |
logistic=T sets the constant D in the IRT model to 1 ("logistic metric"), logistic=F sets it to 1.7. Default is T. When engine="ltm" and logistic=T , the estimated item discriminations are simply divided by 1.7. |
nch |
Number of choices in the original item formulation. Used to determine the prior for the asymptote when engine="bilog" , model="3PL" , and c.prior=T . Default is 5. |
a.prior |
Whether a prior for the item discriminations is used. Ignored when model="1PL" or engine="ltm" . Default is T. |
b.prior |
Whether a prior for the item difficulties is used. Ignored when engine="ltm" . Default is F. |
c.prior |
Whether a prior for the asymptotes is used. Ignored when model="1PL" or model="2PL" or engine="ltm" . Default is T. |
bilog.defaults |
When engine="icl" and a prior is used, use the default priors in BILOG rather than the default priors in ICL. Ignored when engine="ltm" . Default is T. |
rasch |
When engine="bilog" and model="1PL" and "rasch"=T , the common value for discriminations is forced to 1, and the sum of the difficulties is 0. When engine="ltm" and model="1PL" and "rasch"=T , the common value for discriminations is forced to 1. Ignored in all other cases. Default is F. |
run.name |
A (short) string used in the names of all files read or written by ICL or BILOG. Default is "mymodel" . Change to something else to keep the outputs of ICL of BILOG for further use. Ignored when engine="ltm" |
Estimate the parameters of an IRT model defined in the most general case ("3PL") as
P(U_{ij}=1|theta_i,a_j,b_j,c_j)=c_j+(1-c_j)frac{displaystyleexp(Da_j(theta_i-b_j))}{1+displaystyleexp(Da_j(theta_i-b_j))}
where U_{ij} is a binary response given by person i to item j, theta_i is the value of the latent variable ("ability") for person i, a_j is the discrimination parameter for item j, b_j is the difficulty parameter for item j, c_j is the asymptote for item j, and D is a constant usually set to either 1.7 or 1.
In the 2PL model (model="2PL"
), all asymptotes c_j are 0.
In the 1PL model (model="1PL"
), all asymptotes c_j are 0
and the discriminations a_j are equal for all items (and sometimes to 1).
Package irtoys
provides a simple common interface to the
estimation of item parameters with three different programs. It
only accesses the most basic and widely used options in these
programs. Each of the three programs has a much wider choice of
options and cababilities, and serious users must still learn the
corresponding syntax in order to access the advanced features.
Even when models are fit "by hand", irtoys
may be
useful in plotting results, doing comparisons across programs etc.
Estimation of the more complex IRT models (2PL and 3PL) for some
"difficult" data sets often has to use prior distributions for the
item parameters. irtoys
adopts the default behaviour of BILOG:
no priors for b in any model, priors for a in the 2PL and
3PL models, priors for c in the 3PL model. This can be overriden
by changing the values of a.prior
, b.prior
, and c.prior
.
If priors are used at all, they will be the same for all items. Note
that both ICL and BILOG can, at some additional effort, set different
priors for any individual item. At default, the common priors are the
BILOG defaults: normal(0,2)
for b,
lognormal (0, 0.5)
for a, and
beta(20*p+1, 20(1-p)+1)
for c;
p is 1 over the number of choices in the original item
formulations, which can be set with the parameter nch
, and
is again assumed the same for all items.
When engine="icl"
and bilog.defaults=F
, any priors
used will be the ICL default ones, and based on the 4-parameter
beta distribution: beta(1.01, 1.01, -6, 6)
for b,
beta(1.75, 3, 0, 3)
for a, and
beta(3.5, 4, 0, 0.5)
for c.
When engine="ltm"
, all commands involving priors
are ignored.
est
only works when some IRT software is installed.
Package ltm
is automatically loaded. ICL can be downloaded
from www.b-a-h.com. BILOG is commercial software sold
by SSI — see www.ssicentral.com for further detail.
On Windows, make sure that the executable files (icl.exe
for ICL, blm1.exe
, blm2.exe
, and blm3.exe
,
for BILOG) are located in directories that are included in the
PATH variable.
A matrix with one row per item, and three columns: [,1] item discrimination a, [,2] item difficulty b, and [,3] asymptote c. For the 1PL and 2PL models, all asymptotes are equal to 0; for the 1PL, the discriminations are all equal but not necessarily equal to 1.
Ivailo Partchev
Bradley A. Hanson (2002), ICL: IRT Command Language. www.b-a-h.com
Dimitris Rizopoulos (2006). ltm: Latent Trait Models under IRT. cran.r-project.org
M. F. Zimowski, E. Muraki, R. J. Mislevy and R. D. Bock (1996), BILOG–MG. Multiple-Group IRT Analysis and Test Maintenance for Binary Items, SSI Scientific Software International, Chicago, IL. www.ssicentral.com
data(Scored) p.1pl <- est(Scored, model="1PL", engine="ltm") p.2pl <- est(Scored, model="2PL", engine="ltm")