A unified extractor function for retrieving internal components from objects produced by the Qval package. This method allows users to access key elements such as model results, validation logs, and simulation settings in a structured and object-oriented manner.

extract(object, what, ...)

# S3 method for class 'CDM'
extract(object, what, ...)

# S3 method for class 'validation'
extract(object, what, ...)

# S3 method for class 'sim.data'
extract(object, what, ...)

# S3 method for class 'fit'
extract(object, what, ...)

Arguments

object

An object of class CDM, validation, sim.data, or fit.

what

A character string specifying the name of the component to extract.

...

Additional arguments (currently ignored).

Value

The requested component. The return type depends on the specified what and the class of the object.

Details

This generic extractor supports three core object classes: CDM, validation, sim.data and fit. It is intended to streamline access to commonly used internal components without manually referencing object slots. The available components for each class are listed below:

CDM

Cognitive Diagnosis Model fitting results. Available components:

analysis.obj

The internal model fitting object (e.g., GDINA or Baseline Model).

alpha

Estimated attribute profiles (EAP estimates) for each respondent.

P.alpha.Xi

Posterior distribution of latent attribute patterns.

alpha.P

Marginal attribute mastery probabilities (estimated).

P.alpha

Prior attribute probabilities at convergence.

Deviance

Negative twice the marginal log-likelihood (model deviance).

npar

Number of free parameters estimated in the model.

AIC

Akaike Information Criterion.

BIC

Bayesian Information Criterion.

call

The original model-fitting function call.

...

Can extract corresponding value from the GDINA object.

validation

Q-matrix validation results. Available components:

Q.orig

The original Q-matrix submitted for validation.

Q.sug

The suggested (revised) Q-matrix after validation.

time.cost

Total computation time for the validation procedure.

process

Log of Q-matrix modifications across iterations.

iter

Number of iterations performed during validation.

priority

Attribute priority matrix (available for PAA-based methods only).

Hull.fit

Data required to plot the Hull method results (for Hull-based validation only).

call

The original function call used for validation.

sim.data

Simulated data and parameters used in cognitive diagnosis simulation studies:

dat

Simulated dichotomous response matrix (\(N \times I\)).

Q

Q-matrix used to generate the data.

attribute

True latent attribute profiles (\(N \times K\)).

catprob.parm

Item-category conditional success probabilities (list format).

delta.parm

Item-level delta parameters (list format).

higher.order.parm

Higher-order model parameters (if used).

mvnorm.parm

Parameters for the multivariate normal attribute distribution (if used).

LCprob.parm

Latent class-based success probability matrix.

call

The original function call that generated the simulated data.

fit

Relative fit indices (-2LL, AIC, BIC, CAIC, SABIC) and absolute fit indices (\(M_2\) test, \(RMSEA_2\), SRMSR):

npar

The number of parameters.

-2LL

The Deviance.

AIC

The Akaike information criterion.

BIC

The Bayesian information criterion.

CAIC

The consistent Akaike information criterion.

SABIC

The Sample-size Adjusted BIC.

M2

A vector consisting of \(M_2\) statistic, degrees of freedom, significance level, and \(RMSEA_2\) (Liu, Tian, & Xin, 2016).

SRMSR

The standardized root mean squared residual (SRMSR; Ravand & Robitzsch, 2018).

Methods (by class)

  • extract(CDM): Extract fields from a CDM object

  • extract(validation): Extract fields from a validation object

  • extract(sim.data): Extract fields from a sim.data object

  • extract(fit): Extract fields from a fit object

References

Khaldi, R., Chiheb, R., & Afa, A.E. (2018). Feed-forward and Recurrent Neural Networks for Time Series Forecasting: Comparative Study. In: Proceedings of the International Conference on Learning and Optimization Algorithms: Theory and Applications (LOPAL 18). Association for Computing Machinery, New York, NY, USA, Article 18, 1–6. DOI: 10.1145/3230905.3230946.

Liu, Y., Tian, W., & Xin, T. (2016). An application of M2 statistic to evaluate the fit of cognitive diagnostic models. Journal of Educational and Behavioral Statistics, 41, 3–26. DOI: 10.3102/1076998615621293.

Ravand, H., & Robitzsch, A. (2018). Cognitive diagnostic model of best choice: a study of reading comprehension. Educational Psychology, 38, 1255–1277. DOI: 10.1080/01443410.2018.1489524.

Examples

library(Qval)
set.seed(123)

# \donttest{
################################################################
# Example 1: sim.data extraction                               #
################################################################
Q <- sim.Q(3, 10)
data.obj <- sim.data(Q, N = 200)
#> distribute =  uniform 
#>  model =  GDINA 
#>  number of attributes:  3 
#>  number of items:  10 
#>  num of examinees:  200 
#>  average of P0 =  0.174 
#>  average of P1 =  0.889 
extract(data.obj, "dat")
#>        [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
#>   [1,]    1    1    0    1    1    0    0    1    0     0
#>   [2,]    0    1    0    0    0    1    1    0    1     1
#>   [3,]    1    1    1    0    0    1    0    1    1     0
#>   [4,]    0    1    1    0    0    1    1    1    1     1
#>   [5,]    0    1    1    0    0    1    0    1    1     0
#>   [6,]    1    1    1    1    1    0    1    1    1     1
#>   [7,]    1    0    0    0    1    1    1    1    0     1
#>   [8,]    0    0    1    0    0    1    0    0    0     0
#>   [9,]    0    1    0    0    0    0    1    1    0     1
#>  [10,]    0    1    1    0    0    0    1    0    0     1
#>  [11,]    0    0    1    0    0    1    1    0    1     1
#>  [12,]    1    1    1    1    1    1    1    1    1     1
#>  [13,]    1    1    0    0    1    1    0    1    1     0
#>  [14,]    0    1    1    1    1    1    1    1    1     0
#>  [15,]    0    1    1    0    1    0    1    0    1     1
#>  [16,]    0    1    0    0    0    1    1    0    0     1
#>  [17,]    0    1    0    0    0    0    0    0    0     0
#>  [18,]    0    0    0    0    0    0    1    0    0     1
#>  [19,]    1    1    1    0    0    1    0    0    1     0
#>  [20,]    0    0    0    0    0    0    0    0    0     0
#>  [21,]    1    1    1    1    0    1    1    1    0     1
#>  [22,]    1    0    1    0    0    0    1    0    1     1
#>  [23,]    1    1    1    1    0    1    0    1    1     0
#>  [24,]    0    0    0    0    0    0    0    0    0     0
#>  [25,]    1    1    1    1    1    0    0    1    1     0
#>  [26,]    0    0    0    0    0    0    1    0    0     1
#>  [27,]    0    1    0    1    1    0    0    1    0     0
#>  [28,]    1    1    1    1    1    0    0    1    1     0
#>  [29,]    1    1    1    0    1    1    1    1    0     0
#>  [30,]    1    1    0    0    1    0    0    1    0     1
#>  [31,]    1    1    0    1    1    1    1    1    0     1
#>  [32,]    1    0    0    0    1    0    1    1    1     1
#>  [33,]    0    1    1    0    0    0    0    0    1     0
#>  [34,]    1    1    0    1    1    0    1    1    1     1
#>  [35,]    1    0    0    0    1    0    0    1    1     1
#>  [36,]    1    1    0    0    1    1    1    1    0     1
#>  [37,]    1    1    1    1    1    0    0    1    1     0
#>  [38,]    1    1    1    1    1    1    0    1    1     0
#>  [39,]    1    1    1    1    0    1    1    1    1     1
#>  [40,]    0    0    0    0    0    0    0    0    0     0
#>  [41,]    1    0    1    0    0    0    1    1    0     1
#>  [42,]    0    1    0    0    1    0    1    1    0     1
#>  [43,]    0    0    0    0    0    1    0    0    0     1
#>  [44,]    0    0    0    0    0    0    1    0    0     1
#>  [45,]    1    1    0    0    1    0    0    1    0     0
#>  [46,]    0    0    1    0    0    1    1    0    1     1
#>  [47,]    0    1    1    1    0    0    0    0    1     0
#>  [48,]    1    1    0    0    1    0    1    1    0     1
#>  [49,]    1    1    1    1    1    0    0    1    1     0
#>  [50,]    0    0    1    0    0    0    0    1    1     1
#>  [51,]    0    0    0    0    0    1    0    0    0     0
#>  [52,]    1    1    0    0    1    0    0    1    0     0
#>  [53,]    1    1    1    0    1    0    1    1    1     1
#>  [54,]    0    1    0    0    0    0    1    0    0     0
#>  [55,]    1    1    1    1    0    1    1    1    1     1
#>  [56,]    1    1    0    0    1    0    1    1    0     1
#>  [57,]    0    0    0    0    0    1    0    1    0     1
#>  [58,]    1    1    1    0    0    1    0    1    1     1
#>  [59,]    0    0    1    0    0    0    0    0    1     0
#>  [60,]    1    1    1    1    1    1    1    1    1     1
#>  [61,]    1    1    1    1    1    1    1    1    1     1
#>  [62,]    1    1    0    1    0    1    1    1    0     1
#>  [63,]    1    0    0    0    1    0    0    1    0     1
#>  [64,]    1    1    1    1    1    1    1    1    1     0
#>  [65,]    0    0    0    0    0    0    0    0    0     0
#>  [66,]    1    1    0    0    1    1    1    0    1     1
#>  [67,]    1    1    1    0    1    0    1    1    1     1
#>  [68,]    1    1    1    1    0    1    1    1    1     1
#>  [69,]    0    1    0    0    0    0    0    0    1     0
#>  [70,]    1    0    0    1    1    1    1    1    1     1
#>  [71,]    0    1    1    0    0    0    1    0    1     1
#>  [72,]    1    1    1    1    1    1    1    1    1     1
#>  [73,]    1    1    1    1    1    0    0    1    0     1
#>  [74,]    0    1    0    0    0    1    0    1    1     1
#>  [75,]    1    1    1    1    1    0    0    1    1     0
#>  [76,]    1    1    0    0    1    1    1    1    0     1
#>  [77,]    0    0    0    0    0    0    1    1    0     1
#>  [78,]    1    1    1    1    1    1    0    1    1     0
#>  [79,]    0    0    1    0    0    1    1    0    1     1
#>  [80,]    0    1    1    0    0    0    1    1    0     1
#>  [81,]    1    0    1    0    1    1    1    0    1     1
#>  [82,]    0    0    0    0    0    1    0    0    1     0
#>  [83,]    0    0    0    0    0    0    1    1    1     1
#>  [84,]    0    0    0    0    0    0    1    0    1     1
#>  [85,]    0    1    0    0    0    1    1    0    1     1
#>  [86,]    1    1    0    1    1    1    1    1    1     0
#>  [87,]    0    0    0    0    0    0    1    0    0     1
#>  [88,]    0    0    0    0    0    0    1    0    0     1
#>  [89,]    1    1    0    0    1    0    1    0    0     0
#>  [90,]    0    1    1    1    1    1    0    1    1     0
#>  [91,]    1    0    0    0    0    1    1    1    0     0
#>  [92,]    1    1    0    0    1    0    0    0    0     1
#>  [93,]    1    0    1    0    1    1    1    1    1     1
#>  [94,]    0    0    0    0    0    1    0    1    0     1
#>  [95,]    1    1    0    1    1    0    1    1    1     1
#>  [96,]    1    0    0    1    1    0    1    1    0     1
#>  [97,]    0    1    0    0    1    1    1    1    1     1
#>  [98,]    0    0    1    0    0    0    0    0    1     0
#>  [99,]    1    1    1    1    1    1    1    1    1     1
#> [100,]    1    1    0    1    1    0    1    1    0     1
#> [101,]    0    1    1    0    0    1    0    0    1     0
#> [102,]    0    1    0    1    1    1    1    1    0     0
#> [103,]    1    1    1    0    1    1    0    1    1     0
#> [104,]    1    1    1    1    0    1    1    1    1     1
#> [105,]    0    0    0    0    0    1    0    0    0     0
#> [106,]    0    1    1    0    1    1    0    1    1     0
#> [107,]    0    0    1    0    1    1    0    0    1     0
#> [108,]    1    1    0    1    0    0    0    1    1     0
#> [109,]    0    1    1    0    0    1    1    0    1     1
#> [110,]    1    1    1    1    1    1    0    1    1     0
#> [111,]    1    1    1    1    1    0    0    1    0     0
#> [112,]    0    0    0    0    0    1    1    1    0     1
#> [113,]    0    1    0    0    1    0    1    1    1     1
#> [114,]    1    1    0    1    1    1    1    1    0     1
#> [115,]    1    1    1    0    1    1    0    1    1     0
#> [116,]    1    1    1    1    1    1    1    0    1     0
#> [117,]    1    1    1    1    1    1    1    1    1     1
#> [118,]    1    0    1    1    0    0    0    1    1     0
#> [119,]    0    0    0    0    0    1    1    0    0     1
#> [120,]    0    0    1    0    0    1    1    0    1     1
#> [121,]    1    1    0    0    1    1    1    1    0     1
#> [122,]    1    1    1    1    1    1    1    1    1     1
#> [123,]    1    1    1    1    1    1    1    1    1     1
#> [124,]    1    1    1    1    0    1    1    1    1     1
#> [125,]    0    0    1    0    0    0    1    1    1     1
#> [126,]    0    1    1    1    1    0    0    1    1     1
#> [127,]    0    1    1    0    0    1    1    1    1     0
#> [128,]    1    1    0    1    1    0    0    1    0     0
#> [129,]    1    1    0    1    1    1    1    1    0     1
#> [130,]    0    1    0    0    1    0    1    1    1     1
#> [131,]    1    0    0    0    1    0    0    1    0     0
#> [132,]    0    0    1    0    0    1    1    1    1     1
#> [133,]    0    0    1    0    0    0    1    0    1     1
#> [134,]    0    0    0    0    0    1    1    0    0     0
#> [135,]    1    0    1    0    0    0    0    1    1     0
#> [136,]    0    1    0    0    1    1    1    1    1     1
#> [137,]    0    1    0    0    0    1    1    0    0     1
#> [138,]    0    0    1    0    0    0    0    0    0     0
#> [139,]    1    0    1    1    1    1    0    1    1     1
#> [140,]    0    0    0    0    0    1    1    0    0     1
#> [141,]    0    1    0    1    1    0    1    1    1     1
#> [142,]    0    1    1    0    0    0    1    1    1     1
#> [143,]    0    0    1    0    0    1    0    0    1     0
#> [144,]    1    1    1    1    1    1    1    1    1     1
#> [145,]    1    1    0    0    1    0    0    1    1     0
#> [146,]    1    0    1    1    1    0    1    1    1     0
#> [147,]    1    1    1    1    0    0    0    1    1     0
#> [148,]    1    1    0    0    1    0    1    0    0     0
#> [149,]    0    0    0    0    0    1    0    0    0     0
#> [150,]    0    1    1    1    1    1    1    1    1     1
#> [151,]    0    1    0    1    0    1    1    1    1     1
#> [152,]    1    1    0    0    0    1    1    1    1     1
#> [153,]    0    1    0    1    1    1    1    1    1     0
#> [154,]    0    0    1    0    0    0    0    0    0     1
#> [155,]    1    1    1    1    1    1    1    1    1     1
#> [156,]    1    1    0    1    0    0    1    1    1     1
#> [157,]    1    1    0    0    1    0    1    0    0     1
#> [158,]    0    0    1    0    0    0    1    0    1     0
#> [159,]    1    1    1    1    1    1    1    1    1     1
#> [160,]    1    1    0    0    1    0    0    1    0     1
#> [161,]    1    1    1    1    1    1    1    1    1     1
#> [162,]    0    1    1    0    0    0    0    0    1     0
#> [163,]    0    1    1    0    0    0    1    0    1     1
#> [164,]    1    0    0    0    1    1    0    1    0     1
#> [165,]    1    1    0    1    1    1    0    1    0     0
#> [166,]    1    0    0    0    0    0    0    1    1     1
#> [167,]    0    0    0    0    1    0    1    1    0     1
#> [168,]    0    0    0    0    0    0    0    0    0     0
#> [169,]    0    0    0    0    0    0    1    0    0     1
#> [170,]    1    1    1    0    0    1    1    1    1     0
#> [171,]    1    0    0    0    1    0    1    0    0     1
#> [172,]    0    0    1    0    0    0    1    1    1     0
#> [173,]    0    0    0    0    0    0    1    1    0     0
#> [174,]    1    1    0    1    0    0    0    1    1     1
#> [175,]    1    1    1    1    0    1    1    1    1     0
#> [176,]    1    1    0    1    1    1    1    0    0     1
#> [177,]    0    1    1    0    0    1    1    1    1     1
#> [178,]    0    0    1    0    0    0    1    0    1     1
#> [179,]    0    0    0    0    0    0    1    0    0     1
#> [180,]    0    1    1    0    0    1    0    0    1     1
#> [181,]    0    0    1    0    1    0    1    0    1     1
#> [182,]    1    0    0    0    1    1    1    1    0     1
#> [183,]    1    1    0    0    1    0    1    0    0     1
#> [184,]    0    0    0    0    0    0    0    0    0     0
#> [185,]    1    1    1    1    1    1    1    1    1     1
#> [186,]    1    1    0    0    1    0    0    1    0     0
#> [187,]    1    0    1    1    1    1    1    1    1     0
#> [188,]    0    0    0    0    0    0    1    0    0     1
#> [189,]    1    0    0    0    0    0    1    0    0     1
#> [190,]    0    1    1    0    0    0    1    0    1     0
#> [191,]    0    1    0    0    1    1    1    1    1     1
#> [192,]    1    1    0    0    1    0    1    1    1     1
#> [193,]    0    0    1    0    0    1    1    0    1     1
#> [194,]    1    1    1    1    1    1    1    1    1     0
#> [195,]    1    1    1    1    0    0    0    1    0     0
#> [196,]    0    1    1    1    0    0    1    1    1     1
#> [197,]    0    0    0    0    0    1    0    0    0     0
#> [198,]    1    1    1    1    1    1    1    1    1     1
#> [199,]    1    1    1    1    1    1    1    1    1     1
#> [200,]    0    0    0    0    0    1    1    0    0     1


################################################################
# Example 2: CDM extraction                                    #
################################################################
CDM.obj <- CDM(data.obj$dat, Q)
#> 
Iter = 1  Max. abs. change = 0.33678  Deviance  = 2399.11                                                                                  
Iter = 2  Max. abs. change = 0.08307  Deviance  = 2237.93                                                                                  
Iter = 3  Max. abs. change = 0.03743  Deviance  = 2224.60                                                                                  
Iter = 4  Max. abs. change = 0.01680  Deviance  = 2221.36                                                                                  
Iter = 5  Max. abs. change = 0.00878  Deviance  = 2220.16                                                                                  
Iter = 6  Max. abs. change = 0.00888  Deviance  = 2219.50                                                                                  
Iter = 7  Max. abs. change = 0.00903  Deviance  = 2219.02                                                                                  
Iter = 8  Max. abs. change = 0.00913  Deviance  = 2218.64                                                                                  
Iter = 9  Max. abs. change = 0.00914  Deviance  = 2218.30                                                                                  
Iter = 10  Max. abs. change = 0.00903  Deviance  = 2218.00                                                                                  
Iter = 11  Max. abs. change = 0.00881  Deviance  = 2217.73                                                                                  
Iter = 12  Max. abs. change = 0.00847  Deviance  = 2217.48                                                                                  
Iter = 13  Max. abs. change = 0.00800  Deviance  = 2217.25                                                                                  
Iter = 14  Max. abs. change = 0.00749  Deviance  = 2217.04                                                                                  
Iter = 15  Max. abs. change = 0.00695  Deviance  = 2216.85                                                                                  
Iter = 16  Max. abs. change = 0.00636  Deviance  = 2216.68                                                                                  
Iter = 17  Max. abs. change = 0.00580  Deviance  = 2216.53                                                                                  
Iter = 18  Max. abs. change = 0.00530  Deviance  = 2216.39                                                                                  
Iter = 19  Max. abs. change = 0.00485  Deviance  = 2216.27                                                                                  
Iter = 20  Max. abs. change = 0.00445  Deviance  = 2216.15                                                                                  
Iter = 21  Max. abs. change = 0.00409  Deviance  = 2216.05                                                                                  
Iter = 22  Max. abs. change = 0.00377  Deviance  = 2215.95                                                                                  
Iter = 23  Max. abs. change = 0.00348  Deviance  = 2215.86                                                                                  
Iter = 24  Max. abs. change = 0.00322  Deviance  = 2215.78                                                                                  
Iter = 25  Max. abs. change = 0.00298  Deviance  = 2215.70                                                                                  
Iter = 26  Max. abs. change = 0.00277  Deviance  = 2215.62                                                                                  
Iter = 27  Max. abs. change = 0.00257  Deviance  = 2215.56                                                                                  
Iter = 28  Max. abs. change = 0.00238  Deviance  = 2215.49                                                                                  
Iter = 29  Max. abs. change = 0.00222  Deviance  = 2215.43                                                                                  
Iter = 30  Max. abs. change = 0.00207  Deviance  = 2215.37                                                                                  
Iter = 31  Max. abs. change = 0.00192  Deviance  = 2215.31                                                                                  
Iter = 32  Max. abs. change = 0.00179  Deviance  = 2215.26                                                                                  
Iter = 33  Max. abs. change = 0.00166  Deviance  = 2215.21                                                                                  
Iter = 34  Max. abs. change = 0.00154  Deviance  = 2215.16                                                                                  
Iter = 35  Max. abs. change = 0.00143  Deviance  = 2215.12                                                                                  
Iter = 36  Max. abs. change = 0.00135  Deviance  = 2215.07                                                                                  
Iter = 37  Max. abs. change = 0.00127  Deviance  = 2215.03                                                                                  
Iter = 38  Max. abs. change = 0.00119  Deviance  = 2214.99                                                                                  
Iter = 39  Max. abs. change = 0.00112  Deviance  = 2214.96                                                                                  
Iter = 40  Max. abs. change = 0.00105  Deviance  = 2214.92                                                                                  
Iter = 41  Max. abs. change = 0.00136  Deviance  = 2214.89                                                                                  
Iter = 42  Max. abs. change = 0.00125  Deviance  = 2214.85                                                                                  
Iter = 43  Max. abs. change = 0.00115  Deviance  = 2214.81                                                                                  
Iter = 44  Max. abs. change = 0.00104  Deviance  = 2214.78                                                                                  
Iter = 45  Max. abs. change = 0.00093  Deviance  = 2214.75                                                                                  
Iter = 46  Max. abs. change = 0.00084  Deviance  = 2214.72                                                                                  
Iter = 47  Max. abs. change = 0.00076  Deviance  = 2214.70                                                                                  
Iter = 48  Max. abs. change = 0.00069  Deviance  = 2214.68                                                                                  
Iter = 49  Max. abs. change = 0.00061  Deviance  = 2214.66                                                                                  
Iter = 50  Max. abs. change = 0.00058  Deviance  = 2214.64                                                                                  
Iter = 51  Max. abs. change = 0.00050  Deviance  = 2214.62                                                                                  
Iter = 52  Max. abs. change = 0.00045  Deviance  = 2214.61                                                                                  
Iter = 53  Max. abs. change = 0.00049  Deviance  = 2214.60                                                                                  
Iter = 54  Max. abs. change = 0.00036  Deviance  = 2214.58                                                                                  
Iter = 55  Max. abs. change = 0.00033  Deviance  = 2214.57                                                                                  
Iter = 56  Max. abs. change = 0.00044  Deviance  = 2214.56                                                                                  
Iter = 57  Max. abs. change = 0.00026  Deviance  = 2214.56                                                                                  
Iter = 58  Max. abs. change = 0.00029  Deviance  = 2214.55                                                                                  
Iter = 59  Max. abs. change = 0.00021  Deviance  = 2214.54                                                                                  
Iter = 60  Max. abs. change = 0.00042  Deviance  = 2214.53                                                                                  
Iter = 61  Max. abs. change = 0.00017  Deviance  = 2214.53                                                                                  
Iter = 62  Max. abs. change = 0.00015  Deviance  = 2214.52                                                                                  
Iter = 63  Max. abs. change = 0.00014  Deviance  = 2214.52                                                                                  
Iter = 64  Max. abs. change = 0.00013  Deviance  = 2214.52                                                                                  
Iter = 65  Max. abs. change = 0.00013  Deviance  = 2214.51                                                                                  
Iter = 66  Max. abs. change = 0.00012  Deviance  = 2214.51                                                                                  
Iter = 67  Max. abs. change = 0.00010  Deviance  = 2214.51                                                                                  
Iter = 68  Max. abs. change = 0.00021  Deviance  = 2214.50                                                                                  
Iter = 69  Max. abs. change = 0.00009  Deviance  = 2214.50                                                                                  
extract(CDM.obj, "alpha")
#>        A1 A2 A3
#>   [1,]  0  0  1
#>   [2,]  1  1  0
#>   [3,]  0  1  1
#>   [4,]  1  1  0
#>   [5,]  0  1  0
#>   [6,]  1  1  1
#>   [7,]  1  0  1
#>   [8,]  0  0  0
#>   [9,]  1  0  0
#>  [10,]  1  1  0
#>  [11,]  1  1  0
#>  [12,]  1  1  1
#>  [13,]  0  0  1
#>  [14,]  1  1  1
#>  [15,]  1  1  0
#>  [16,]  1  0  0
#>  [17,]  0  0  0
#>  [18,]  1  0  0
#>  [19,]  0  1  0
#>  [20,]  0  0  0
#>  [21,]  1  1  1
#>  [22,]  1  1  0
#>  [23,]  0  1  1
#>  [24,]  0  0  0
#>  [25,]  0  1  1
#>  [26,]  1  0  0
#>  [27,]  0  0  1
#>  [28,]  0  1  1
#>  [29,]  1  0  1
#>  [30,]  0  0  1
#>  [31,]  1  0  1
#>  [32,]  1  0  1
#>  [33,]  0  1  0
#>  [34,]  1  0  1
#>  [35,]  0  0  1
#>  [36,]  1  0  1
#>  [37,]  0  1  1
#>  [38,]  0  1  1
#>  [39,]  1  1  1
#>  [40,]  0  0  0
#>  [41,]  1  0  1
#>  [42,]  1  0  1
#>  [43,]  0  0  0
#>  [44,]  1  0  0
#>  [45,]  0  0  1
#>  [46,]  1  1  0
#>  [47,]  0  1  0
#>  [48,]  1  0  1
#>  [49,]  0  1  1
#>  [50,]  0  1  0
#>  [51,]  0  0  0
#>  [52,]  0  0  1
#>  [53,]  1  1  1
#>  [54,]  1  0  0
#>  [55,]  1  1  1
#>  [56,]  1  0  1
#>  [57,]  0  0  0
#>  [58,]  0  1  1
#>  [59,]  0  1  0
#>  [60,]  1  1  1
#>  [61,]  1  1  1
#>  [62,]  1  0  1
#>  [63,]  0  0  1
#>  [64,]  1  1  1
#>  [65,]  0  0  0
#>  [66,]  1  0  1
#>  [67,]  1  1  1
#>  [68,]  1  1  1
#>  [69,]  0  1  0
#>  [70,]  1  1  1
#>  [71,]  1  1  0
#>  [72,]  1  1  1
#>  [73,]  0  1  1
#>  [74,]  0  1  0
#>  [75,]  0  1  1
#>  [76,]  1  0  1
#>  [77,]  1  0  0
#>  [78,]  0  1  1
#>  [79,]  1  1  0
#>  [80,]  1  1  0
#>  [81,]  1  1  0
#>  [82,]  0  0  0
#>  [83,]  1  0  0
#>  [84,]  1  0  0
#>  [85,]  1  1  0
#>  [86,]  1  1  1
#>  [87,]  1  0  0
#>  [88,]  1  0  0
#>  [89,]  1  0  1
#>  [90,]  0  1  1
#>  [91,]  1  0  1
#>  [92,]  0  0  1
#>  [93,]  1  1  1
#>  [94,]  0  0  0
#>  [95,]  1  0  1
#>  [96,]  1  0  1
#>  [97,]  1  0  1
#>  [98,]  0  1  0
#>  [99,]  1  1  1
#> [100,]  1  0  1
#> [101,]  0  1  0
#> [102,]  1  0  1
#> [103,]  0  1  1
#> [104,]  1  1  1
#> [105,]  0  0  0
#> [106,]  0  1  1
#> [107,]  0  1  0
#> [108,]  0  1  1
#> [109,]  1  1  0
#> [110,]  0  1  1
#> [111,]  0  1  1
#> [112,]  1  0  0
#> [113,]  1  0  1
#> [114,]  1  0  1
#> [115,]  0  1  1
#> [116,]  1  1  1
#> [117,]  1  1  1
#> [118,]  0  1  1
#> [119,]  1  0  0
#> [120,]  1  1  0
#> [121,]  1  0  1
#> [122,]  1  1  1
#> [123,]  1  1  1
#> [124,]  1  1  1
#> [125,]  1  1  0
#> [126,]  0  1  1
#> [127,]  1  1  0
#> [128,]  0  0  1
#> [129,]  1  0  1
#> [130,]  1  0  1
#> [131,]  0  0  1
#> [132,]  1  1  0
#> [133,]  1  1  0
#> [134,]  1  0  0
#> [135,]  0  1  0
#> [136,]  1  0  1
#> [137,]  1  0  0
#> [138,]  0  0  0
#> [139,]  0  1  1
#> [140,]  1  0  0
#> [141,]  1  0  1
#> [142,]  1  1  0
#> [143,]  0  1  0
#> [144,]  1  1  1
#> [145,]  0  0  1
#> [146,]  1  1  1
#> [147,]  0  1  1
#> [148,]  1  0  1
#> [149,]  0  0  0
#> [150,]  1  1  1
#> [151,]  1  1  1
#> [152,]  1  0  1
#> [153,]  1  1  1
#> [154,]  0  0  0
#> [155,]  1  1  1
#> [156,]  1  0  1
#> [157,]  1  0  1
#> [158,]  1  1  0
#> [159,]  1  1  1
#> [160,]  0  0  1
#> [161,]  1  1  1
#> [162,]  0  1  0
#> [163,]  1  1  0
#> [164,]  0  0  1
#> [165,]  0  0  1
#> [166,]  0  0  1
#> [167,]  1  0  1
#> [168,]  0  0  0
#> [169,]  1  0  0
#> [170,]  1  1  1
#> [171,]  1  0  1
#> [172,]  1  1  0
#> [173,]  1  0  0
#> [174,]  0  1  1
#> [175,]  1  1  1
#> [176,]  1  0  1
#> [177,]  1  1  0
#> [178,]  1  1  0
#> [179,]  1  0  0
#> [180,]  0  1  0
#> [181,]  1  1  0
#> [182,]  1  0  1
#> [183,]  1  0  1
#> [184,]  0  0  0
#> [185,]  1  1  1
#> [186,]  0  0  1
#> [187,]  1  1  1
#> [188,]  1  0  0
#> [189,]  1  0  0
#> [190,]  1  1  0
#> [191,]  1  0  1
#> [192,]  1  0  1
#> [193,]  1  1  0
#> [194,]  1  1  1
#> [195,]  0  1  1
#> [196,]  1  1  1
#> [197,]  0  0  0
#> [198,]  1  1  1
#> [199,]  1  1  1
#> [200,]  1  0  0
extract(CDM.obj, "AIC")
#>      AIC 
#> 2300.499 


################################################################
# Example 3: validation extraction                             #
################################################################
validation.obj <- validation(data.obj$dat, Q, CDM.obj)
#> GDI  method with  PAA  in  test  level iteration ...
#> Iter  =  1/  1,   1 items have changed, ΔPVAF=0.01864 
Q.sug <- extract(validation.obj, "Q.sug")
print(Q.sug)
#>         A1 A2 A3
#> item 1   0  0  1
#> item 2   0  1  1
#> item 3   0  1  0
#> item 4   0  1  1
#> item 5   0  0  1
#> item 6   1  1  1
#> item 7   1  0  0
#> item 8   0  1  1
#> item 9   0  1  0
#> item 10  1  0  0

################################################################
# Example 4: fit extraction                                    #
################################################################
fit.obj <- fit(data.obj$dat, Q.sug, model="GDINA")
#> 
Iter = 1  Max. abs. change = 0.32132  Deviance  = 2386.78                                                                                  
Iter = 2  Max. abs. change = 0.08058  Deviance  = 2235.13                                                                                  
Iter = 3  Max. abs. change = 0.03608  Deviance  = 2222.28                                                                                  
Iter = 4  Max. abs. change = 0.01655  Deviance  = 2218.94                                                                                  
Iter = 5  Max. abs. change = 0.01094  Deviance  = 2217.54                                                                                  
Iter = 6  Max. abs. change = 0.01122  Deviance  = 2216.66                                                                                  
Iter = 7  Max. abs. change = 0.01145  Deviance  = 2215.96                                                                                  
Iter = 8  Max. abs. change = 0.01151  Deviance  = 2215.37                                                                                  
Iter = 9  Max. abs. change = 0.01136  Deviance  = 2214.84                                                                                  
Iter = 10  Max. abs. change = 0.01098  Deviance  = 2214.37                                                                                  
Iter = 11  Max. abs. change = 0.01042  Deviance  = 2213.94                                                                                  
Iter = 12  Max. abs. change = 0.00971  Deviance  = 2213.57                                                                                  
Iter = 13  Max. abs. change = 0.00893  Deviance  = 2213.25                                                                                  
Iter = 14  Max. abs. change = 0.00812  Deviance  = 2212.97                                                                                  
Iter = 15  Max. abs. change = 0.00732  Deviance  = 2212.74                                                                                  
Iter = 16  Max. abs. change = 0.00658  Deviance  = 2212.53                                                                                  
Iter = 17  Max. abs. change = 0.00589  Deviance  = 2212.36                                                                                  
Iter = 18  Max. abs. change = 0.00527  Deviance  = 2212.21                                                                                  
Iter = 19  Max. abs. change = 0.00472  Deviance  = 2212.09                                                                                  
Iter = 20  Max. abs. change = 0.00423  Deviance  = 2211.98                                                                                  
Iter = 21  Max. abs. change = 0.00379  Deviance  = 2211.89                                                                                  
Iter = 22  Max. abs. change = 0.00341  Deviance  = 2211.80                                                                                  
Iter = 23  Max. abs. change = 0.00307  Deviance  = 2211.73                                                                                  
Iter = 24  Max. abs. change = 0.00277  Deviance  = 2211.67                                                                                  
Iter = 25  Max. abs. change = 0.00250  Deviance  = 2211.61                                                                                  
Iter = 26  Max. abs. change = 0.00226  Deviance  = 2211.57                                                                                  
Iter = 27  Max. abs. change = 0.00205  Deviance  = 2211.52                                                                                  
Iter = 28  Max. abs. change = 0.00186  Deviance  = 2211.48                                                                                  
Iter = 29  Max. abs. change = 0.00169  Deviance  = 2211.45                                                                                  
Iter = 30  Max. abs. change = 0.00153  Deviance  = 2211.42                                                                                  
Iter = 31  Max. abs. change = 0.00140  Deviance  = 2211.39                                                                                  
Iter = 32  Max. abs. change = 0.00127  Deviance  = 2211.36                                                                                  
Iter = 33  Max. abs. change = 0.00116  Deviance  = 2211.34                                                                                  
Iter = 34  Max. abs. change = 0.00106  Deviance  = 2211.32                                                                                  
Iter = 35  Max. abs. change = 0.00097  Deviance  = 2211.30                                                                                  
Iter = 36  Max. abs. change = 0.00089  Deviance  = 2211.29                                                                                  
Iter = 37  Max. abs. change = 0.00082  Deviance  = 2211.27                                                                                  
Iter = 38  Max. abs. change = 0.00075  Deviance  = 2211.26                                                                                  
Iter = 39  Max. abs. change = 0.00069  Deviance  = 2211.24                                                                                  
Iter = 40  Max. abs. change = 0.00063  Deviance  = 2211.23                                                                                  
Iter = 41  Max. abs. change = 0.00058  Deviance  = 2211.22                                                                                  
Iter = 42  Max. abs. change = 0.00055  Deviance  = 2211.21                                                                                  
Iter = 43  Max. abs. change = 0.00053  Deviance  = 2211.20                                                                                  
Iter = 44  Max. abs. change = 0.00051  Deviance  = 2211.19                                                                                  
Iter = 45  Max. abs. change = 0.00049  Deviance  = 2211.18                                                                                  
Iter = 46  Max. abs. change = 0.00047  Deviance  = 2211.18                                                                                  
Iter = 47  Max. abs. change = 0.00045  Deviance  = 2211.17                                                                                  
Iter = 48  Max. abs. change = 0.00043  Deviance  = 2211.16                                                                                  
Iter = 49  Max. abs. change = 0.00042  Deviance  = 2211.16                                                                                  
Iter = 50  Max. abs. change = 0.00040  Deviance  = 2211.15                                                                                  
Iter = 51  Max. abs. change = 0.00039  Deviance  = 2211.15                                                                                  
Iter = 52  Max. abs. change = 0.00037  Deviance  = 2211.14                                                                                  
Iter = 53  Max. abs. change = 0.00036  Deviance  = 2211.14                                                                                  
Iter = 54  Max. abs. change = 0.00035  Deviance  = 2211.13                                                                                  
Iter = 55  Max. abs. change = 0.00034  Deviance  = 2211.13                                                                                  
Iter = 56  Max. abs. change = 0.00032  Deviance  = 2211.12                                                                                  
Iter = 57  Max. abs. change = 0.00031  Deviance  = 2211.12                                                                                  
Iter = 58  Max. abs. change = 0.00030  Deviance  = 2211.12                                                                                  
Iter = 59  Max. abs. change = 0.00029  Deviance  = 2211.11                                                                                  
Iter = 60  Max. abs. change = 0.00029  Deviance  = 2211.11                                                                                  
Iter = 61  Max. abs. change = 0.00028  Deviance  = 2211.11                                                                                  
Iter = 62  Max. abs. change = 0.00027  Deviance  = 2211.11                                                                                  
Iter = 63  Max. abs. change = 0.00026  Deviance  = 2211.10                                                                                  
Iter = 64  Max. abs. change = 0.00025  Deviance  = 2211.10                                                                                  
Iter = 65  Max. abs. change = 0.00025  Deviance  = 2211.10                                                                                  
Iter = 66  Max. abs. change = 0.00024  Deviance  = 2211.10                                                                                  
Iter = 67  Max. abs. change = 0.00023  Deviance  = 2211.10                                                                                  
Iter = 68  Max. abs. change = 0.00022  Deviance  = 2211.09                                                                                  
Iter = 69  Max. abs. change = 0.00022  Deviance  = 2211.09                                                                                  
Iter = 70  Max. abs. change = 0.00021  Deviance  = 2211.09                                                                                  
Iter = 71  Max. abs. change = 0.00021  Deviance  = 2211.09                                                                                  
Iter = 72  Max. abs. change = 0.00020  Deviance  = 2211.09                                                                                  
Iter = 73  Max. abs. change = 0.00020  Deviance  = 2211.09                                                                                  
Iter = 74  Max. abs. change = 0.00019  Deviance  = 2211.09                                                                                  
Iter = 75  Max. abs. change = 0.00019  Deviance  = 2211.09                                                                                  
Iter = 76  Max. abs. change = 0.00018  Deviance  = 2211.08                                                                                  
Iter = 77  Max. abs. change = 0.00018  Deviance  = 2211.08                                                                                  
Iter = 78  Max. abs. change = 0.00017  Deviance  = 2211.08                                                                                  
Iter = 79  Max. abs. change = 0.00017  Deviance  = 2211.08                                                                                  
Iter = 80  Max. abs. change = 0.00016  Deviance  = 2211.08                                                                                  
Iter = 81  Max. abs. change = 0.00016  Deviance  = 2211.08                                                                                  
Iter = 82  Max. abs. change = 0.00016  Deviance  = 2211.08                                                                                  
Iter = 83  Max. abs. change = 0.00015  Deviance  = 2211.08                                                                                  
Iter = 84  Max. abs. change = 0.00015  Deviance  = 2211.08                                                                                  
Iter = 85  Max. abs. change = 0.00014  Deviance  = 2211.08                                                                                  
Iter = 86  Max. abs. change = 0.00014  Deviance  = 2211.08                                                                                  
Iter = 87  Max. abs. change = 0.00014  Deviance  = 2211.07                                                                                  
Iter = 88  Max. abs. change = 0.00013  Deviance  = 2211.07                                                                                  
Iter = 89  Max. abs. change = 0.00013  Deviance  = 2211.07                                                                                  
Iter = 90  Max. abs. change = 0.00013  Deviance  = 2211.07                                                                                  
Iter = 91  Max. abs. change = 0.00013  Deviance  = 2211.07                                                                                  
Iter = 92  Max. abs. change = 0.00012  Deviance  = 2211.07                                                                                  
Iter = 93  Max. abs. change = 0.00012  Deviance  = 2211.07                                                                                  
Iter = 94  Max. abs. change = 0.00012  Deviance  = 2211.07                                                                                  
Iter = 95  Max. abs. change = 0.00011  Deviance  = 2211.07                                                                                  
Iter = 96  Max. abs. change = 0.00011  Deviance  = 2211.07                                                                                  
Iter = 97  Max. abs. change = 0.00011  Deviance  = 2211.07                                                                                  
Iter = 98  Max. abs. change = 0.00011  Deviance  = 2211.07                                                                                  
Iter = 99  Max. abs. change = 0.00011  Deviance  = 2211.07                                                                                  
Iter = 100  Max. abs. change = 0.00010  Deviance  = 2211.07                                                                                  
Iter = 101  Max. abs. change = 0.00010  Deviance  = 2211.07                                                                                  
Iter = 102  Max. abs. change = 0.00010  Deviance  = 2211.07                                                                                  
extract(fit.obj, "M2")
#>         M2         df    p.value     RMSEA2 
#> 12.6310734 16.0000000  0.6995167  0.0000000 
# }