startModule {mstR} | R Documentation |
Selection of the first module in MST
Description
This command selects the first module of the multistage test, either randomly or on the basis of the module information function.
Usage
startModule(itemBank, modules, transMatrix, model = NULL, fixModule = NULL,
seed = NULL, theta = 0, D = 1)
Arguments
itemBank |
a suitable matrix of item parameters. See Details. |
modules |
a binary matrix that specifies the item membership to th emodules. See Details. |
transMatrix |
a binary squared matrix representing the structure of the MST and the transitions between the moduels and the stages. See Details. |
model |
either |
fixModule |
either a an integer value or |
seed |
either a numeric value, |
theta |
numeric: the initial ability level for selecting the first module (default is 0). Ignored if either |
D |
numeric: the metric constant. Default is |
Details
This function permits to select the first module of the MST. It works with both dichotomous and polytomous item banks.
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 modules
argument must be a binary 0/1 matrix with as many rows as the item bank itemBank
and as many columns as the number of modules. Values of 1 indicate to which module(s) the items belong to, i.e. a value of 1 on row i and column j means that the i-th item belongs to the j-th module.
The transMatrix
argument must be a binary 0/1 square matrix with as many rows (and columns) as the number of modules. All values of 1 indicate the possible transitions from one module to another, i.e. a value of 1 on row i and column j means that the MST can move from i-th module to j-th module.
The first module of the MST can be selected by one of the following methods.
By specifying the module to be administered. The argument
fixModule
then holds the module number as listed in themodules
ortransMatrix
. SettingfixModule
toNULL
(default value) disables this method.By selecting it randomly into the
modules
matrix. The argumentseed
permits to fix the random selection by specifying the random seed number. Settingseed
toNA
disables the random seed (though items are still picked up randomly in the bank); in other words, successive runs ofstartModule
withseed=NA
may lead to different module selection. Settingseed
toNULL
(default value) disables this selection method.By selecting the module according to an initial ability value. In this case, the selected module is such that the information fucntion (computed with the items of the module) is maximal for the given initial ability value.
The third method above will be used if and only if both fixModule
and seed
arguments are fixed to NULL
.
Otherwise, one of the first two methods will be used.
Value
A list with four arguments:
module |
the selected module (identified by its column number in the |
items |
the items that belong to the selected module (identified by their number in the item bank). |
par |
the matrix of item parameters of the selected items (one row per item). |
thStart |
the starting ability level used for selecting the module or |
Author(s)
David Magis
Department of Psychology, University of Liege, Belgium
david.magis@uliege.be
References
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.
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.
See Also
Examples
## Dichotomous models ##
# Generation of an item bank under 2PL, made of 7 successive modules that target
# different average ability levels and with different lengths
# (the first generated item parameters hold two modules of 8 items each)
it <- rbind(genDichoMatrix(16, model = "2PL"),
genDichoMatrix(6, model = "2PL", bPrior = c("norm", -1, 1)),
genDichoMatrix(6, model = "2PL", bPrior = c("norm", 1, 1)),
genDichoMatrix(9, model = "2PL", bPrior = c("norm", -2, 1)),
genDichoMatrix(9, model = "2PL", bPrior = c("norm", 0, 1)),
genDichoMatrix(9, model = "2PL", bPrior = c("norm", 2, 1)))
it <- as.matrix(it)
# Creation of the 'module' matrix to list item membership in each module
modules <- matrix(0, 55, 7)
modules[1:8, 1] <- modules[9:16, 2] <- modules[17:22, 3] <- 1
modules[23:28, 4] <- modules[29:37, 5] <- modules[38:46, 6] <- 1
modules[47:55, 7] <- 1
# Creation of the transition matrix to define a 1-2-3 MST
trans <- matrix(0, 7, 7)
trans[1, 3:4] <- trans[2, 3:4] <- trans[3, 5:6] <- trans[4, 6:7] <- 1
# Selection of module 2 as starting module
startModule(it, modules, trans, fixModule = 2)
## Not run:
# Selection of module 3 (not from stage 1 => mistake)
startModule(it, modules, trans, fixModule = 3)
## End(Not run)
# Random selection of starting module
startModule(it, modules, trans, seed = 1)
# Selection by maximizing information at ability level 0
startModule(it, modules, trans, theta = 0)
## Polytomous models ##
# Same structure as above but parameters are now generated from PCM with at most
# 4 categories
it <- genPolyMatrix(55, model = "PCM", nrCat = 4)
it <- as.matrix(it)
# Selection of module 2 as starting module
startModule(it, modules, trans, fixModule = 2, model = "PCM")
## Not run:
# Selection of module 3 (not from stage 1 => mistake)
startModule(it, modules, trans, fixModule = 3, model = "PCM")
## End(Not run)
# Random selection of starting module
startModule(it, modules, trans, seed = 1, model = "PCM")
# Selection by maximizing information at ability level 0
startModule(it, modules, trans, theta = 0, model = "PCM")