Last chance! 50% off unlimited learning
Sale ends in
thetaEst(it, x, model = NULL, D = 1, method = "BM", priorDist = "norm", priorPar = c(0, 1), range = c(-4, 4), parInt = c(-4, 4, 33), constantPatt = NULL, current.th = 0, bRange = c(-2, 2))
NA
s). See Details.NULL
(default) for dichotomous models, or any suitable acronym for polytomous models. Possible values are "GRM"
, "MGRM"
, "PCM"
, "GPCM"
, "RSM"
and "NRM"
. See Details.D=1
(for logistic metric); D=1.702
yields approximately the normal metric (Haley, 1952). Ignored if model
is not NULL
."BM"
(default), "ML"
, "WL"
and "EAP"
. See Details."norm"
(default), "unif"
and "Jeffreys"
. Ignored if method
is neither "BM"
nor "EAP"
. See Details.c(0,1)
) of the prior ability distribution. Ignored if method
is neither "BM"
nor "EAP"
, or if priorDist="Jeffreys"
. See Details.c(-4,4)
). Ignored if method=="EAP"
.lower
, upper
and nqp
of the eapEst
command. Default vector is (-4, 4, 33). Ignored if method
is not "EAP"
.NULL
(default), "BM"
, "EAP"
, "WL"
, "fixed4"
, "fixed7"
or "var"
. Currently only implemented for dichotomous IRT models. See Details.constantPatt
is neither "fixed4"
, "fixed7"
nor "var"
. See Details.c(-2,2)
). Currently only implemented for dichotomous IRT models. See Details.model
is set to NULL
(default value). In this case, it
must be a matrix with one row per item and four columns, with the values of the discrimination, the difficulty, the pseudo-guessing and the inattention parameters (in this order). These are the parameters of the four-parameter logistic (4PL) model
(Barton and Lord, 1981). Polytomous IRT models are specified by their respective acronym: "GRM"
for Graded Response Model, "MGRM"
for Modified Graded Response Model, "PCM"
for Partical Credit Model, "GPCM"
for Generalized Partial Credit Model, "RSM"
for Rating Scale Model and "NRM"
for Nominal Response Model. The it
still holds one row per item, end the number of columns and their content depends on the model. See genPolyMatrix
for further information and illustrative examples of suitable polytomous item banks.
The vector of response patterns x
can also hold missing responses (more useful in linear testing, not in CAT). In this case the missing responses must be coded as NA
values. They are discarded from the ability estimation process.
Four ability estimators are available: the maximum likelihood (ML) estimator (Lord, 1980), the Bayes modal (BM) estimator (Birnbaum, 1969), the expected a posteriori (EAP) estimator (Bock and Mislevy, 1982) and the weighted likelihood (WL) estimator (Warm, 1989). The selected estimator is specified by the method
argument, with values "ML"
, "BM"
, "EAP"
and "WL"
respectively.
For the BM and EAP estimators, three prior distributions are available: the normal distribution, the uniform distribution and Jeffreys' prior distribution (Jeffreys, 1939, 1946). The prior distribution is specified by the argument priorPar
, with values "norm"
, "unif"
and "Jeffreys"
, respectively. The priorPar
argument is ignored if method="ML"
or method="WL"
.
The argument priorPar
determines either the prior mean and standard deviation of the normal prior distribution (if
priorDist="norm"
), or the range for defining the prior uniform distribution (if priorDist="unif"
). This argument
is ignored if priorDist="Jeffreys"
.
The parInt
argument sets the range and the number of quadrature points for numerical integration in the EAP process. By default, it takes the vector value (-4, 4, 33), that is, 33 quadrature points on the range [-4; 4] (or, by steps of 0.25). See eapEst
for further details.
The range
argument permits to limit the interval of investigation for the ML, BM and WL ability estimates (in particular, to avoid infinite ability estimates). The default range
is [-4, 4].
Specific ability estimation methods are available in presence of constant patterns (that is with only correct or only incorrect responses) under dichotomous IRT models. These methods are specified by the argument constantPatt
. By default it is set to NULL
and hence ability is estimated with the specified method
(even in presence of constant pattern). Six methods are currently available for constant patterns: "BM"
, "EAP"
and "WL"
that call for Bayes modal, expected a posteriori and weighted likelihood estimation respectively; "fixed4"
and "fixed7"
that perform fixed stepsize adjustment (i.e. increase or decrease of constant magnitude) with step 0.4 and 0.7 respectively; and "var"
for variable stepsize adjustment. Note that in case odf stepsize adjustment, the range of difficultyu parameters must be provided through the bRange
argument, as vector of two components (default value being c(-2,2)
). See Dodd, De Ayala, and Koch (1995) for further details.
Birnbaum, A. (1969). Statistical theory for logistic mental test models with a prior distribution of ability. Journal of Mathematical Psychology, 6, 258-276. doi: 10.1016/0022-2496(69)90005-4
Bock, R. D., and Mislevy, R. J. (1982). Adaptive EAP estimation of ability in a microcomputer environment. Applied Psychological Measurement, 6, 431-444. doi: 10.1177/014662168200600405
Dodd, B. G., De Ayala, R. J., and Koch, W. R. (1995) . Computerized adaptive testing with polytomous items. Applied Psychological Measurement, 19, 5-22. doi: 10.1177/014662169501900103
Haley, D.C. (1952). Estimation of the dosage mortality relationship when the dose is subject to error. Technical report no 15. Palo Alto, CA: Applied Mathematics and Statistics Laboratory, Stanford University. Jeffreys, H. (1939). Theory of probability. Oxford, UK: Oxford University Press.
Jeffreys, H. (1946). An invariant form for the prior probability in estimation problems. Proceedings of the Royal Society of London. Series A, Mathematical and Physical Sciences, 186, 453-461.
Lord, F.M. (1980). Applications of item response theory to practical testing problems. Hillsdale, NJ: Lawrence Erlbaum.
Magis, D. (2015). A note on weighted likelihood and Jeffreys modal estimation of proficiency levels in polytomous item response models. Psychometrika, 80, 200-204. doi: 10.1007/S11336-013-9378-5
Magis, D., and Raiche, G. (2012). Random Generation of Response Patterns under Computerized Adaptive Testing with the R Package catR. Journal of Statistical Software, 48 (8), 1-31. URL http://www.jstatsoft.org/v48/i08/
Warm, T.A. (1989). Weighted likelihood estimation of ability in item response models. Psychometrika, 54, 427-450. doi: 10.1007/BF02294627
eapEst
, semTheta
, genPolyMatrix
## Dichotomous models ##
# Loading the 'tcals' parameters
data(tcals)
# Selecting item parameters only
tcals <- as.matrix(tcals[,1:4])
# Creation of a response pattern (tcals item parameters, true ability level 0)
set.seed(1)
x <- genPattern(0, tcals)
# ML estimation
thetaEst(tcals, x, method = "ML")
# With first two responses missing
x.mis <- x
x.mis[1:2] <- NA
thetaEst(tcals, x.mis, method = "ML")
# BM estimation, standard normal prior distribution
thetaEst(tcals, x)
# BM estimation, uniform prior distribution upon range [-2,2]
thetaEst(tcals, x, method = "BM", priorDist = "unif", priorPar = c(-2, 2))
# BM estimation, Jeffreys' prior distribution
thetaEst(tcals, x, method = "BM", priorDist = "Jeffreys")
# EAP estimation, standard normal prior distribution
thetaEst(tcals, x, method = "EAP")
# EAP estimation, uniform prior distribution upon range [-2,2]
thetaEst(tcals, x, method = "EAP", priorDist = "unif", priorPar = c(-2, 2))
# EAP estimation, Jeffreys' prior distribution
thetaEst(tcals, x, method = "EAP", priorDist = "Jeffreys")
# WL estimation
thetaEst(tcals, x, method = "WL")
# Creation of two constant patterns and estimation with WL,
# 'fixed4', 'fixed7' and 'var' stepsize adjustments
x0 <- rep(0,nrow(tcals))
x1 <- x0 + 1
thetaEst(tcals, x0, constantPatt = "WL") # equivalent to thetaEst(tcals, x0, method = "WL")
thetaEst(tcals, x1, constantPatt = "WL") # equivalent to thetaEst(tcals, x1, method = "WL")
thetaEst(tcals, x0, constantPatt = "fixed4")
thetaEst(tcals, x1, constantPatt = "fixed4")
thetaEst(tcals, x0, constantPatt = "fixed7")
thetaEst(tcals, x1, constantPatt = "fixed7")
thetaEst(tcals, x0, constantPatt = "var")
thetaEst(tcals, x1, constantPatt = "var")
## Not run:
#
# ## Polytomous models ##
#
# # Generation of an item bank under GRM with 100 items and at most 4 categories
# m.GRM <- genPolyMatrix(100, 4, "GRM")
# m.GRM <- as.matrix(m.GRM)
#
# # Creation of a response pattern (true ability level 0)
# set.seed(1)
# x <- genPattern(0, m.GRM, model = "GRM")
#
# # ML estimation
# thetaEst(m.GRM, x, model = "GRM", method = "ML")
#
# # BM estimation, standard normal prior distribution
# thetaEst(m.GRM, x, model = "GRM")
#
# # BM estimation, uniform prior distribution upon range [-2,2]
# thetaEst(m.GRM, x, model = "GRM", method = "BM", priorDist = "unif",
# priorPar = c(-2, 2))
#
# # BM estimation, Jeffreys' prior distribution
# thetaEst(m.GRM, x, model = "GRM", method = "BM", priorDist = "Jeffreys")
#
# # EAP estimation, standard normal prior distribution
# thetaEst(m.GRM, x, model = "GRM", method = "EAP")
#
# # EAP estimation, uniform prior distribution upon range [-2,2]
# thetaEst(m.GRM, x, model = "GRM", method = "EAP", priorDist = "unif",
# priorPar = c(-2, 2))
#
# # EAP estimation, Jeffreys' prior distribution
# thetaEst(m.GRM, x, model = "GRM", method = "EAP", priorDist = "Jeffreys")
#
# # WL estimation
# thetaEst(m.GRM, x, model = "GRM", method = "WL")
#
#
# # Generation of an item bank under PCM with 20 items and 4 categories
# m.PCM <- genPolyMatrix(20, 4, "PCM", same.nrCat = TRUE)
# m.PCM <- as.matrix(m.PCM)
#
# # Creation of a response pattern (true ability level 0)
# set.seed(1)
# x <- genPattern(0, m.PCM, model = "PCM")
#
# # ML estimation
# thetaEst(m.PCM, x, model = "PCM", method = "ML")
#
# # BM estimation, standard normal prior distribution
# thetaEst(m.PCM, x, model = "PCM")
#
# # BM estimation, uniform prior distribution upon range [-2,2]
# thetaEst(m.PCM, x, model = "PCM", method = "BM", priorDist = "unif",
# priorPar = c(-2, 2))
#
# # BM estimation, Jeffreys' prior distribution
# thetaEst(m.PCM, x, model = "PCM", method = "BM", priorDist = "Jeffreys")
#
# # EAP estimation, standard normal prior distribution
# thetaEst(m.PCM, x, model = "PCM", method = "EAP")
#
# # EAP estimation, uniform prior distribution upon range [-2,2]
# thetaEst(m.PCM, x, model = "PCM", method = "EAP", priorDist = "unif",
# priorPar = c(-2, 2))
#
# # EAP estimation, Jeffreys' prior distribution
# thetaEst(m.PCM, x, model = "PCM", method = "EAP", priorDist = "Jeffreys")
#
# # WL estimation
# thetaEst(m.PCM, x, model = "PCM", method = "WL")
# ## End(Not run)
Run the code above in your browser using DataLab