This is a simulated dataset of the SDA6 study according to informations given in Jurich and Bradshaw (2014).

data(data.sda6)

Format

The datasets contains 17 items observed at 1710 students.

The format is:

List of 2
$ data : num [1:1710, 1:17] 0 1 0 1 0 0 0 0 1 0 ...
..- attr(*, "dimnames")=List of 2
.. ..$ : NULL
.. ..$ : chr [1:17] "MCM01" "MCM03" "MCM13" "MCM17" ...
$ q.matrix:'data.frame':
..$ CM: int [1:17] 1 1 1 1 0 0 0 0 0 0 ...
..$ II: int [1:17] 0 0 0 0 1 1 1 1 0 0 ...
..$ PP: int [1:17] 0 0 0 0 0 0 0 0 1 1 ...
..$ DG: int [1:17] 0 0 0 0 0 0 0 0 0 0 ...

The meaning of the skills is

CM -- Critique Methods

II -- Identify Improvements

PP -- Protect Participants

DG -- Discern Generalizability

Source

Simulated data

References

Jurich, D. P., & Bradshaw, L. P. (2014). An illustration of diagnostic classification modeling in student learning outcomes assessment. International Journal of Testing, 14, 49-72.

Examples

if (FALSE) {
data(data.sda6, package="CDM")

data <- data.sda6$data
q.matrix <- data.sda6$q.matrix

#*** Model 1a: LCDM with gdina
mod1a <- CDM::gdina( data, q.matrix, rule="ACDM", linkfct="logit",
                  reduced.skillspace=FALSE )
summary(mod1a)

#*** Model 1b: estimate LCDM with gdm
mod1b <- CDM::gdm( data, q.matrix=q.matrix, theta.k=c(0,1) )
summary(mod1b)

#*** Model 2: LCDM with hierarchy II > CM
B <- "II > CM"
ss2 <- CDM::skillspace.hierarchy(B=B, skill.names=colnames(q.matrix ) )
mod2 <- CDM::gdina( data, q.matrix, rule="ACDM", linkfct="logit",
                skillclasses=ss2$skillspace.reduced,
                reduced.skillspace=FALSE )
summary(mod2)

#*** Model 3: LCDM with hierarchy II > CM and DG > CM
B <- "II > CM
      DG > CM"
ss2 <- CDM::skillspace.hierarchy(B=B, skill.names=colnames(q.matrix ) )
mod3 <- CDM::gdina( data, q.matrix, rule="ACDM", linkfct="logit",
               skillclasses=ss2$skillspace.reduced,
               reduced.skillspace=FALSE )
summary(mod3)

# model comparisons
anova(mod1a,mod2)
anova(mod1a,mod3)
# model fit
summary( CDM::modelfit.cor.din(mod1a))
summary( CDM::modelfit.cor.din(mod2) )
summary( CDM::modelfit.cor.din(mod3) )
}