Learn R Programming

CDM (version 1.4-16)

modelfit.cor: Assessing Model Fit by Comparing Observed and Expected Item Pair Correlations

Description

This function computes several measures of absolute model fit which are based on comparing observed and expected frequencies of item pairs.

Usage

modelfit.cor(data, posterior, probs)
modelfit.cor.din( dinobj )

Arguments

data
An $N$ times $I$ data frame of dichotomous item responses
posterior
Posterior distribution
probs
Probabilities as an array: [items,categories,attribute classes]
dinobj
An object of class din, gdina or gdm

Value

  • A list with following entries
  • modelfitModel fit statistics: MADcor: mean of absolute deviations in observed and expected correlations (DiBello et al., 2007) MX2: Mean of $\chi^2$ statistics of all item pairs (Chen & Thissen, 1997) MADRESIDCOV: Mean of absolute deviations of residual covariances (McDonald & Mok, 1995) MADQ3: Mean of absolute values of $Q_3$ statistic (Yen, 1984)
  • itempairsFit of itempairs
  • pfitFit of single fit with respect to the observed proportions

References

Chen, W. & Thissen, D. (1997). Local dependence indexes for item pairs using item response theory. Journal of Educational and Behavioral Statistics, 22, 265-289. DiBello, L. V., Roussos, L. A. and Stout, W. F. (2007) Review of cognitively diagnostic assessment and a summary of psychometric models. In C. R. Rao and S. Sinharay (Eds.), Handbook of Statistics, Vol. 26 (pp. 979--1030). Amsterdam: Elsevier. McDonald, R. P. & Mok, M. M.-C. (1995). Goodness of fit in item response models. Multivariate Behavioral Research, 30, 23-40. Yen, W. M. (1984). Effects of local item dependence on the fit and equating performance of the three-parameter logistic model. Applied Psychological Measurement, 8, 125-145.

Examples

Run this code
# use DINA and DINO model for DINA simulated data
d1 <- din(sim.dina, q.matr = sim.qmatrix, rule = "DINA" )
d2 <- din(sim.dina, q.matr = sim.qmatrix, rule = "DINO" )
# DINA model in gdina function
d3 <- gdina( sim.dina , q.matr = sim.qmatrix , rule="DINA" )
# estimation with DINA model
g1 <- modelfit.cor.din( d1 )
g3 <- modelfit.cor.din( d3 )
# estimation with DINO model => wrong model specification
g2 <- modelfit.cor.din( d2 )

##   > # estimation with DINA model
##   > g1 <- modelfit.cor.din( d1 )
##                       est
##   MADcor          0.03025
##   MX2             0.71949
##   100*MADRESIDCOV 0.67140
##   MADQ3           0.06184
##
##  -> g3 provides the same result as g1
##
##   > # estimation with DINO model => wrong model specification
##   > g2 <- modelfit.cor.din( d2 )
##                       est
##   MADcor          0.05552
##   MX2             2.20449
##   100*MADRESIDCOV 1.22491
##   MADQ3           0.07294

Run the code above in your browser using DataLab