Build Status Package-License CRAN Version Badge CRAN Status RStudio CRAN Mirror’s Monthly Downloads RStudio CRAN Mirror’s Total Downloads Coverage status

dina R package

Estimate the Deterministic Input, Noisy And Gate (DINA) cognitive diagnostic model parameters using the Gibbs sampler described by Culpepper (2015) <doi: 10.3102/1076998615595403>.


You can install dina from CRAN using:


Or, you can be on the cutting-edge development version on GitHub using:

if(!requireNamespace("devtools")) install.packages("devtools")


To use the dina package, load it into R using:


From there, the DINA CDM can be estimated using:

dina_model = dina(<data>, <q>, chain_length = 10000)

To simulate item data under DINA, use:

# Set a seed for reproducibility

# Setup Parameters
N = 15   # Number of Examinees / Subjects
J = 10   # Number of Items
K = 2    # Number of Skills / Attributes

# Assign slipping and guessing values for each item
ss = gs = rep(.2, J)

# Simulate identifiable Q matrix
Q = sim_q_matrix(J, K)

# Simulate subject attributes
subject_alphas = sim_subject_attributes(N, K)

# Item data
items_dina = sim_dina_items(subject_alphas, Q, ss, gs)


Steven Andrew Culpepper and James Joseph Balamuta

Citing the dina package

To ensure future development of the package, please cite dina package if used during an analysis or simulations. Citation information for the package may be acquired by using in R:



GPL (>= 2)