Learn R Programming

CDM (version 4.991-1)

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.responseM
Matrix of latent responses
latent.response
Latent responses represented as a string
S
Matrix containing all skill classes
gini
Gini coefficient of the frequency distribution of identifiable skill classes which result in the same latent response
skillclasses
Data frame with skill class (skillclass), latent responses (latent.response) and an identifier for distinguishable skill classes (distinguish.class).

References

Gross, J. & George, A. C. (2014). On prerequisite relations between attributes in noncompensatory diagnostic classification. Methodology, 10(3), 100-107.

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