4.10 Estimation of CDMs with attribute hierarchy

We can also estimate CDMs with various attribute hierarchies. For example, if we assume A1 is a prerequisite for A2 and A3, we can use the following code to fit the data:

Code
diverg <- list(c(1, 2), c(1, 3))
struc <- att.structure(diverg, 3)
modp1 <- GDINA(dat = data1, Q = Q1, att.str = diverg, att.dist = "saturated",
    verbose = 0)
modp1
## Call:
## GDINA(dat = data1, Q = Q1, att.dist = "saturated", att.str = diverg, 
##     verbose = 0)
## 
## GDINA version 2.9.3 (2022-08-13) 
## ===============================================
## Data
## -----------------------------------------------
## # of individuals    groups    items         
##              837         1       15
## ===============================================
## Model
## -----------------------------------------------
## Fitted model(s)       = GDINA 
## Attribute structure   = saturated 
## Attribute level       = Dichotomous 
## ===============================================
## Estimation
## -----------------------------------------------
## Number of iterations  = 169 
## 
## For the final iteration:
##   Max abs change in item success prob. = 0.0001 
##   Max abs change in mixing proportions = 0.0000 
##   Change in -2 log-likelihood          = 0.0004 
##   Converged?                           = TRUE 
## 
## Time used             = 0.1607 secs
Code
coef(modp1, "lambda")
## p(000) p(100) p(110) p(101) p(111) 
##  0.195  0.056  0.256  0.287  0.206