Learn R Programming

CDM (version 2.7-7)

din.equivalent.class: Calculation of Equivalent Skill Classes in the DINA/DINO Model

Description

This function computes nondistinguishable skill classes for the DINA and DINO model (Gross & George, in press; Zhang, DeCarlo & Ying, 2013).

Usage

din.equivalent.class(q.matrix, rule = "DINA")

Arguments

q.matrix
The Q-matrix (see din).
rule
The condensation rule. If it is a string, then the rule applies to all items. If it is a vector, then for each item DINA or DINO rule can be chosen.

Value

  • A list with following entries:
  • latent.responseMMatrix of latent responses
  • latent.responseLatent responses represented as a string
  • SMatrix containing all skill classes
  • giniGini coefficient of the frequency distribution of identifiable skill classes which result in the same latent response
  • skillclassesData frame with skill class (skillclass), latent responses (latent.response) and an identifier for distinguishable skill classes (distinguish.class).

References

Gross, J. & George, A. C. (in press). On prerequisite relations between attributes in noncompensatory diagnostic classification. Methodology, xx, xxx-xxx. Zhang, S. S., DeCarlo, L. T., & Ying, Z. (2013). Non-identifiability, equivalence classes, and attribute-specific classification in Q-matrix based cognitive diagnosis models. arXiv preprint, arXiv:1303.0426.

Examples

Run this code
# DINA models
data(data.fraction2)
# first Q-matrix
Q1 <- data.fraction2$q.matrix1
m1 <- din.equivalent.class( q.matrix = Q1 , rule="DINA" )
## 8 Skill classes | 5  distinguishable skill classes | Gini coefficient = 0.3 

# second Q-matrix
Q1 <- data.fraction2$q.matrix2
m1 <- din.equivalent.class( q.matrix = Q1 , rule="DINA" )
## 32 Skill classes | 9  distinguishable skill classes | Gini coefficient = 0.5 

# third Q-matrix
Q1 <- data.fraction2$q.matrix3
m1 <- din.equivalent.class( q.matrix = Q1 , rule="DINA" )
## 8 Skill classes | 8  distinguishable skill classes | Gini coefficient = 0 

# original fraction subtraction data
data(fraction.subtraction.qmatrix)
m1 <- din.equivalent.class( q.matrix = fraction.subtraction.qmatrix , rule="DINA" )
## 256 Skill classes | 58  distinguishable skill classes | Gini coefficient = 0.659

Run the code above in your browser using DataLab