Q-matrix validation, model selection and calibration in one run
autoGDINA
conducts a series of CDM analyses within the G-DINA framework. Particularly,
the GDINA model is fitted to the data first using the GDINA
function;
then, the Q-matrix is validated using the function Qval
.
Based on the suggested Q-matrix, the data is fitted by the G-DINA model again, followed
by an item level model selection via the Wald test using modelcomp
. Lastly,
the selected models are calibrated based on the suggested Q-matrix using the GDINA
function.
The Q-matrix validation and item-level model selection can be disabled by the users.
Possible reduced CDMs for Wald test include the DINA model, the DINO model, A-CDM, LLM and RRUM.
See Details
for the rules of item-level model selection.
autoGDINA( dat, Q, modelselection = TRUE, modelselectionrule = "simpler", alpha.level = 0.05, modelselection.args = list(), Qvalid = TRUE, Qvalid.args = list(), GDINA1.args = list(), GDINA2.args = list(), CDM.args = list() ) ## S3 method for class 'autoGDINA' summary(object, ...)
dat |
A required N \times J |
Q |
A required matrix; The number of rows occupied by a single-strategy dichotomous item is 1, by a polytomous item is
the number of nonzero categories, and by a mutiple-strategy dichotomous item is the number of strategies.
The number of column is equal to the number of attributes if all items are single-strategy dichotomous items, but
the number of attributes + 2 if any items are polytomous or have multiple strategies.
For a polytomous item, the first column represents the item number and the second column indicates the nonzero category number.
For a multiple-strategy dichotomous item, the first column represents the item number and the second column indicates the strategy number.
For binary attributes, 1 denotes the attributes are measured by the items and 0 means the attributes are not
measured. For polytomous attributes, non-zero elements indicate which level
of attributes are needed (see Chen, & de la Torre, 2013). See |
modelselection |
logical; conducting model selection or not? |
modelselectionrule |
how to conducted model selection? Possible options include
|
alpha.level |
nominal level for the Wald test. The default is 0.05. |
modelselection.args |
arguments passed to |
Qvalid |
logical; validate Q-matrix or not? |
Qvalid.args |
arguments passed to |
GDINA1.args |
arguments passed to GDINA function for initial G-DINA calibration |
GDINA2.args |
arguments passed to GDINA function for the second G-DINA calibration |
CDM.args |
arguments passed to GDINA function for final calibration |
object |
GDINA object for various S3 methods |
... |
additional arguments |
After the Wald statistics for each reduced CDM were calculated for each item, the reduced models with p values less than the pre-specified alpha level were rejected. If all reduced models were rejected for an item, the G-DINA model was used as the best model; if at least one reduced model was retained, three diferent rules can be implemented for selecting the best model:
When modelselectionrule
is simpler
:
If (a) the DINA or DINO model was one of the retained models, then the DINA or DINO model with the larger p value was selected as the best model; but if (b) both DINA and DINO were rejected, the reduced model with the largest p value was selected as the best model for this item. Note that when the p-values of several reduced models were greater than 0.05, the DINA and DINO models were preferred over the A-CDM, LLM, and R-RUM because of their simplicity. This procedure is originally proposed by Ma, Iaconangelo, and de la Torre (2016).
When modelselectionrule
is largestp
:
The reduced model with the largest p-values is selected as the most appropriate model.
When modelselectionrule
is DS
:
The reduced model with non-significant p-values but the smallest dissimilarity index is selected as the most appropriate model. Dissimilarity index can be viewed as an effect size measure, which quatifies how dis-similar the reduced model is from the G-DINA model (See Ma, Iaconangelo, and de la Torre, 2016 for details).
a list consisting of the following elements:
initial GDINA calibration of class GDINA
second GDINA calibration of class GDINA
Q validation object of class Qval
model comparison object of class modelcomp
Final CDM calibration of class GDINA
summary
: print summary information
Wenchao Ma, The University of Alabama, wenchao.ma@ua.edu
Ma, W., & de la Torre, J. (2020). GDINA: An R Package for Cognitive Diagnosis Modeling. Journal of Statistical Software, 93(14), 1-26.
Ma, W., Iaconangelo, C., & de la Torre, J. (2016). Model similarity, model selection and attribute classification. Applied Psychological Measurement, 40, 200-217.
## Not run: # simulated responses Q <- sim10GDINA$simQ dat <- sim10GDINA$simdat #misspecified Q misQ <- Q misQ[10,] <- c(0,1,0) out1 <- autoGDINA(dat,misQ,modelselectionrule="largestp") out1 summary(out1) AIC(out1$CDM.obj) # simulated responses Q <- sim30GDINA$simQ dat <- sim30GDINA$simdat #misspecified Q misQ <- Q misQ[1,] <- c(1,1,0,1,0) auto <- autoGDINA(dat,misQ,Qvalid = TRUE, Qvalid.args = list(method = "wald"), modelselectionrule="simpler") auto summary(auto) AIC(auto$CDM.obj) #using the other selection rule out11 <- autoGDINA(dat,misQ,modelselectionrule="simpler", modelselection.args = list(models = c("DINO","DINA"))) out11 summary(out11) # disable model selection function out12 <- autoGDINA(dat,misQ,modelselection=FALSE) out12 summary(out12) # Disable Q-matrix validation out3 <- autoGDINA(dat = dat, Q = misQ, Qvalid = FALSE) out3 summary(out3) ## End(Not run)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.