4.8 Estimation of A combination of models
To estimate different models for different items, call GDINA function again and specify the data and Q-matrix as the first two arguments.
Note that we can also impose the monotonic constraints by setting mono.constraint = TRUE.
Code
To print some general model estimation information, type fit4 in Rstudio console:
## Call:
## GDINA(dat = data1, Q = Q1, model = models, mono.constraint = TRUE,
## verbose = 0)
##
## GDINA version 2.9.3 (2022-08-13)
## ===============================================
## Data
## -----------------------------------------------
## # of individuals groups items
## 837 1 15
## ===============================================
## Model
## -----------------------------------------------
## Fitted model(s) = GDINA DINA DINO ACDM LLM RRUM
## Attribute structure = saturated
## Attribute level = Dichotomous
## ===============================================
## Estimation
## -----------------------------------------------
## Number of iterations = 89
##
## 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.0003
## Converged? = TRUE
##
## Time used = 1.2 secs
To extract item parameters, we can use coef function, as in
## $`Item 1`
## P(0) P(1)
## 0.94 0.99
##
## $`Item 2`
## P(0) P(1)
## 0.38 0.86
##
## $`Item 3`
## P(0) P(1)
## 0.54 0.81
##
## $`Item 4`
## P(0) P(1)
## 0.54 0.92
##
## $`Item 5`
## P(00) P(10) P(01) P(11)
## 0.35 0.74 0.64 0.92
##
## $`Item 6`
## P(00) P(10) P(01) P(11)
## 0.24 0.24 0.24 0.85
##
## $`Item 7`
## P(00) P(10) P(01) P(11)
## 0.0019 0.7193 0.7193 0.7193
##
## $`Item 8`
## P(00) P(10) P(01) P(11)
## 0.20 0.64 0.35 0.80
##
## $`Item 9`
## P(00) P(10) P(01) P(11)
## 0.16 0.45 0.35 0.70
##
## $`Item 10`
## P(00) P(10) P(01) P(11)
## 0.36 0.70 0.39 0.76
##
## $`Item 11`
## P(00) P(10) P(01) P(11)
## 0.67 0.67 0.67 0.92
##
## $`Item 12`
## P(00) P(10) P(01) P(11)
## 0.15 0.57 0.57 0.57
##
## $`Item 13`
## P(00) P(10) P(01) P(11)
## 0.15 0.34 0.43 0.62
##
## $`Item 14`
## P(000) P(100) P(010) P(001) P(110) P(101) P(011) P(111)
## 0.19 0.54 0.29 0.19 0.67 0.54 0.29 0.67
##
## $`Item 15`
## P(000) P(100) P(010) P(001) P(110) P(101) P(011) P(111)
## 0.17 0.29 0.23 0.28 0.41 0.48 0.38 0.67
To obtain delta parameters, specify what = “delta”:
## $`Item 1`
## d0 d1
## 0.94 0.05
##
## $`Item 2`
## d0 d1
## 0.38 0.48
##
## $`Item 3`
## d0 d1
## 0.54 0.27
##
## $`Item 4`
## d0 d1
## 0.54 0.39
##
## $`Item 5`
## d0 d1 d2 d12
## 0.35 0.39 0.28 -0.11
##
## $`Item 6`
## d0 d1
## 0.24 0.62
##
## $`Item 7`
## d0 d1
## 0.0019 0.7173
##
## $`Item 8`
## d0 d1 d2
## 0.20 0.45 0.16
##
## $`Item 9`
## d0 d1 d2
## -1.7 1.5 1.0
##
## $`Item 10`
## d0 d1 d2
## -1.03 0.67 0.08
##
## $`Item 11`
## d0 d1
## 0.67 0.25
##
## $`Item 12`
## d0 d1
## 0.15 0.42
##
## $`Item 13`
## d0 d1 d2
## 0.15 0.19 0.28
##
## $`Item 14`
## d0 d1 d2 d3
## -1.44 1.62 0.54 0.00
##
## $`Item 15`
## d0 d1 d2 d3
## -1.79 0.56 0.33 0.51
We can still draw the IRF plot of item 15, using the following code:
To obtain attribute estimates, use the function personparm:
## A1 A2 A3
## [1,] 0 1 1
## [2,] 0 0 1
## [3,] 1 1 0
## [4,] 0 1 0
## [5,] 0 0 0
## [6,] 1 1 0