Overview of simcdm

James Joseph Balamuta

2019-03-09

Overview

Within this document, we highlight the different features of the simcdm package as it relates to simulating cognitive diagnostic modeling data.

Notation

For consistency, we aim to use the following notation.

Denoting individuals:

Denoting items:

Denoting attributes:

Denoting the skill/attribute “Q” matrix:

Usage

To use simcdm, please load the package.

library(simcdm)

Matrix Simulation

Simulations within this section are done underneath the following settings.

Identifiable Q Matrix Simulation

Simulate an identifiable \(Q\) matrix (\(J\) items by \(K\) skills).

##       [,1] [,2]
##  [1,]    1    0
##  [2,]    1    0
##  [3,]    0    1
##  [4,]    0    1
##  [5,]    0    1
##  [6,]    0    1
##  [7,]    1    1
##  [8,]    1    0
##  [9,]    1    0
## [10,]    0    1

\(\eta\) Matrix Simulation

Create the ideal response matrix for each trait (\(J\) items by \(2^K\) latent classes).

##       [,1] [,2] [,3] [,4]
##  [1,]    0    0    1    1
##  [2,]    0    0    1    1
##  [3,]    0    1    0    1
##  [4,]    0    1    0    1
##  [5,]    0    1    0    1
##  [6,]    0    1    0    1
##  [7,]    0    0    0    1
##  [8,]    0    0    1    1
##  [9,]    0    0    1    1
## [10,]    0    1    0    1

Attribute profile simulation

Generate latent attribute profile classes (\(2^K\) latent classes by \(K\) skills).

##      [,1] [,2]
## [1,]    0    0
## [2,]    0    1
## [3,]    1    0
## [4,]    1    1

Generate latent attribute profile class for each subject (\(N\) subjects by \(K\) skills).

##       [,1] [,2]
##  [1,]    0    0
##  [2,]    1    1
##  [3,]    1    0
##  [4,]    1    1
##  [5,]    0    0
##  [6,]    0    1
##  [7,]    0    1
##  [8,]    1    0
##  [9,]    0    1
## [10,]    0    1
## [11,]    0    1
## [12,]    0    1
## [13,]    1    0
## [14,]    0    0
## [15,]    1    0

DINA Item Simulation

Simulate item data, \(Y\), under DINA model (\(N\) by \(J\))

##       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
##  [1,]    0    0    0    1    1    0    0    0    1     1
##  [2,]    1    1    1    0    1    1    1    1    0     1
##  [3,]    0    0    0    0    1    0    0    0    1     1
##  [4,]    1    1    1    0    0    0    1    1    1     0
##  [5,]    1    1    1    1    1    1    1    1    1     1
##  [6,]    1    1    1    1    0    1    0    1    0     1
##  [7,]    0    0    0    1    1    0    0    0    0     1
##  [8,]    1    0    1    1    1    0    0    1    0     1
##  [9,]    1    1    1    1    0    1    1    1    1     1
## [10,]    0    1    0    1    1    0    0    0    1     1
## [11,]    1    1    1    1    1    1    1    0    1     1
## [12,]    0    0    0    0    1    0    0    0    1     0
## [13,]    0    0    0    0    1    0    0    0    1     1
## [14,]    1    0    0    1    1    0    0    0    0     0
## [15,]    1    1    0    1    0    0    1    1    0     0

DINA Attribute Simulation

Simulate attribute data under DINA model (\(N\) by \(J\))

##       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
##  [1,]    0    0    0    1    1    0    0    0    1     1
##  [2,]    1    1    1    1    1    1    1    1    1     1
##  [3,]    0    0    0    1    1    0    0    0    1     1
##  [4,]    1    1    1    0    0    0    1    1    0     0
##  [5,]    1    1    1    1    1    1    1    1    1     1
##  [6,]    1    1    1    1    1    1    1    1    1     1
##  [7,]    0    0    0    1    1    0    0    0    1     1
##  [8,]    1    1    1    1    1    1    1    1    1     1
##  [9,]    1    1    1    1    1    1    1    1    1     1
## [10,]    0    0    0    1    1    0    0    0    1     1
## [11,]    1    1    1    1    1    1    1    1    1     1
## [12,]    0    0    0    1    1    0    0    0    1     1
## [13,]    0    0    0    1    1    0    0    0    1     1
## [14,]    0    0    0    0    0    0    0    0    0     0
## [15,]    1    1    1    0    0    0    1    1    0     0

rRUM Simulation

The rRUM simulations are done using the following settings.

Simulate rRUM items

Simulate rRUM item data \(Y\) (\(N\) by \(J\))

##       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
##  [1,]    1    1    1    0    1    0    1    1    1     0
##  [2,]    1    1    0    1    1    0    1    0    0     0
##  [3,]    0    1    1    1    0    1    1    1    0     0
##  [4,]    0    1    1    1    0    1    1    1    1     0
##  [5,]    1    1    0    0    1    0    1    1    1     0
##  [6,]    1    1    1    1    0    0    1    1    0     1
##  [7,]    1    0    1    0    1    0    0    0    0     1
##  [8,]    0    0    1    0    0    0    1    0    0     1
##  [9,]    0    1    0    1    1    1    0    1    1     0
## [10,]    1    1    1    1    0    0    0    1    1     0
## [11,]    1    1    1    0    0    0    1    1    0     1
## [12,]    0    1    0    1    1    0    1    1    1     1
## [13,]    1    0    1    1    1    0    1    1    1     1
## [14,]    1    0    1    1    1    1    1    1    1     1
## [15,]    0    0    1    0    1    1    1    1    1     1