A quick reference to GDINA R package

Wenchao Ma

2019-06-12

What can this package do?

This package provides a framework for conducting a variety of cognitively diagnostic analyses for dichotomous and polytomous responses.

For more details, see here

How to use this package?

Visit here for an online reference

A quick example

Below is an illustration showing some analyses that you could do using the package. You can copy the code, paste and run it in R console.

  1. Load the package and assume we have the following item response matrix and Q-matrix:
library(GDINA)
dat <- sim10GDINA$simdat
Q <- matrix(c(1,0,0,
              0,1,0,
              0,0,1,
              1,0,1,
              0,1,1,
              1,1,0,
              0,0,1,
              1,0,0,
              1,1,1,
              1,0,1),byrow = T,ncol = 3)
  1. Estimate the G-DINA model:
est <- GDINA(dat = dat, Q = Q, model = "GDINA")
  1. Conduct the Q-matrix validation. By default, it implements de la Torre and Chiu’s (2016) algorithm using a fixed cutoff. This is fast but sometimes suggests too many modifications.
Qv <- Qval(est)
Qv

To avoid using fixed cutoffs and also take uncertainty in item parameter estimation into account, you may consider the stepwise method:

Qv2 <- Qval(est,method = "Wald")
Qv2

To further examine the q-vectors that are suggested to be modified, you can draw mesa plots:

plot(Qv, item = 9)
  1. Perform item-level model selection to see if the saturated G-DINA model can be simplified:
mc <- modelcomp(est)
mc
  1. Assess model-data fit at test and item levels:
# test level absolute fit
mft <- modelfit(est)
mft
# item level absolute fit
ift <- itemfit(est)
ift
summary(ift)
plot(ift)
  1. Calculate classification accuracy
CA(est)

More Examples

If you would like to contribute an example to this website, please send me your .Rmd file.