Description Usage Arguments Details Value Note Author(s) References See Also Examples

This command returns the ability estimate for a given response pattern and a given matrix of item parameters, either under the 4PL model or any suitable polytomous IRT model. Available estimators are maximum likelihood (ML), Bayes modal (BM), expected a posteriori (EAP), weighted likelihood (WL) and robust estimator (ROB).

1 2 3 4 |

`it` |
numeric: a suitable matrix of item parameters. See |

`x` |
numeric: a vector of item responses. Can also hold missing data (coded as |

`model` |
either |

`D` |
numeric: the metric constant. Default is |

`method` |
character: the ability estimator. Possible values are |

`priorDist` |
character: specifies the prior distribution. Possible values are |

`priorPar` |
numeric: vector of two components specifying the prior parameters (default is |

`weight` |
character: the type of weight function for the robust estimator. Possible values are |

`tuCo` |
numeric: the value of the tuning constant for the weight function (default is 1, suitable with |

`range` |
numeric: vector of two components specifying the range wherein the ability estimate must be looked for (default is |

`parInt` |
numeric: vector of three components, holding respectively the values of the arguments |

`constantPatt` |
character: the method to estimate ability in case of constant pattern (i.e. only correct or only incorrect responses). Can be either |

`current.th` |
numeric: the current ability estimate (default is zero). Required for ability estimation in presence of constant pattern. Ignored if |

`bRange` |
numeric: vector of two componentns with the range of difficulty parameters in the parent item bank (default is |

Dichotomous IRT models are considered whenever `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.

Five 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), the weighted likelihood (WL) estimator (Warm, 1989) and the robust estimator (Schuster & Yuan, 2011). The selected estimator is specified by the `method`

argument, with values `"ML"`

, `"BM"`

, `"EAP"`

, `"WL"`

and `"ROB"`

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.

Robust estimation requires an appropriate weight function that depends on an accurate tuning constant. Suggested functions are the Huber weight (Schuester and Yuan, 2011) and the Tukey weight (Mosteller and Tukey, 1977). Both can be set by the `weight`

argument, with respective values `"Huber"`

and `"Tukey"`

. Default function is Huber. Moreover, the `tuCo`

argument specifies the tuning constant for the weight function. Default value is 1 and suggested for Huber weight (also by default), and value 4 is suggested for Tukey weight (Schuester and Yuan, 2011).

The `range`

argument permits to limit the interval of investigation for the ML, BM, WL and ROB 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.

The estimated ability level.

1) It has been shown that in some cases the weighted likelihood estimator and the Bayes modal estimator with Jeffreys prior return exactly the same ability estimates. This is the case under the 2PL model, and subsequently the 1PL model (Warm, 1989) as well as under all polytomous models currently available (Magis, 2015). Nevertheless, both estimators remain available since (a) Jeffreys prior can also be considered with the EAP estimator, and (b) the 3PL and 4PL models are also available.

2) So far the robust estimator is available for dichotomous IRT models only.

David Magis

[email protected]

Lianne Ippel

Maastricht University, The Netherlands

[email protected]

Barton, M.A., and Lord, F.M. (1981). *An upper asymptote for the three-parameter logistic item-response model*. Research Bulletin 81-20. Princeton, NJ: Educational Testing Service.

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 Barrada, J. R. (2017). Computerized Adaptive Testing with R: Recent Updates of the Package *catR*. *Journal of Statistical Software*, *Code Snippets*, *76(1)*, 1-18. doi: 10.18637/jss.v076.c01

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. doi: 10.18637/jss.v048.i08

Mosteller, F., and Tukey, J. (1977). *Exploratory data analysis and regression*. Reading, MA: Addison-Wesley.

Schuester, C., and Yuan, K.-H. (2011). Robust estimation of latent ability in item response models. *Journal of Educational and Behavioral Statistics, 36*, 720)735.doi: 10.3102/1076998610396890

Warm, T.A. (1989). Weighted likelihood estimation of ability in item response models. *Psychometrika, 54*, 427-450. doi: 10.1007/BF02294627

`eapEst`

, `semTheta`

, `genPolyMatrix`

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 | ```
## 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")
# Robust estimation, Huber weight with tuning constant 1 (default)
thetaEst(tcals, x, method = "ROB")
# Robust estimation, Huber weight with tuning constant 2
thetaEst(tcals, x, method = "ROB", tuCo = 2)
# Robust estimation, Tukey weight with tuning constant 4
thetaEst(tcals, x, method = "ROB", weight = "Tukey", tuCo = 4)
# 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")
## 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")
``` |

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.