Skip to contents

multipleGroup performs a full-information maximum-likelihood multiple group analysis for any combination of dichotomous and polytomous data under the item response theory paradigm using either Cai's (2010) Metropolis-Hastings Robbins-Monro (MHRM) algorithm or with an EM algorithm approach. This function may be used for detecting differential item functioning (DIF), thought the DIF function may provide a more convenient approach. If the grouping variable is not specified then the dentype input can be modified to fit mixture models to estimate any latent group components.

Usage

multipleGroup(
  data,
  model = 1,
  group,
  itemtype = NULL,
  invariance = "",
  method = "EM",
  dentype = "Gaussian",
  itemdesign = NULL,
  item.formula = NULL,
  ...
)

Arguments

data

a matrix or data.frame that consists of numerically ordered data, organized in the form of integers, with missing data coded as NA

model

string to be passed to, or a model object returned from, mirt.model declaring how the global model is to be estimated (useful to apply constraints here)

group

a character or factor vector indicating group membership. If a character vector is supplied this will be automatically transformed into a factor variable. As well, the first level of the (factorized) grouping variable will be treated as the "reference" group

itemtype

can be same type of input as is documented in mirt, however may also be a ngroups by nitems matrix specifying the type of IRT models for each group, respectively. Rows of this input correspond to the levels of the group input. For mixture models the rows correspond to the respective mixture grouping variables to be constructed, and the IRT models should be within these mixtures

invariance

a character vector containing the following possible options:

'free_mean' or 'free_means'

freely estimate all latent means in all focal groups (reference group constrained to a vector of 0's)

'free_var', 'free_vars', 'free_variance', or 'free_variances'

freely estimate all latent variances in focal groups (reference group variances all constrained to 1)

'slopes'

to constrain all the slopes to be equal across all groups

'intercepts'

to constrain all the intercepts to be equal across all groups, note for nominal models this also includes the category specific slope parameters

Additionally, specifying specific item name bundles (from colnames(data)) will constrain all freely estimated parameters in each item to be equal across groups. This is useful for selecting 'anchor' items for vertical and horizontal scaling, and for detecting differential item functioning (DIF) across groups

method

a character object that is either 'EM', 'QMCEM', or 'MHRM' (default is 'EM'). See mirt for details

dentype

type of density form to use for the latent trait parameters. Current options include all of the methods described in mirt, as well as

  • 'mixture-#' estimates mixtures of Gaussian distributions, where the # placeholder represents the number of potential grouping variables (e.g., 'mixture-3' will estimate 3 underlying classes). Each class is assigned the group name MIXTURE_#, where # is the class number. Note that internally the mixture coefficients are stored as log values where the first mixture group coefficient is fixed at 0

itemdesign

see mirt for details

item.formula

see mirt for details

...

additional arguments to be passed to the estimation engine. See mirt for details and examples

Value

function returns an object of class MultipleGroupClass (MultipleGroupClass-class).

Details

By default the estimation in multipleGroup assumes that the models are maximally independent, and therefore could initially be performed by sub-setting the data and running identical models with mirt and aggregating the results (e.g., log-likelihood). However, constrains may be automatically imposed across groups by invoking various invariance keywords. Users may also supply a list of parameter equality constraints to by constrain argument, of define equality constraints using the mirt.model syntax (recommended).

References

Chalmers, R., P. (2012). mirt: A Multidimensional Item Response Theory Package for the R Environment. Journal of Statistical Software, 48(6), 1-29. doi:10.18637/jss.v048.i06

Magnus, B. E. and Garnier-Villarreal (2022). A multidimensional zero-inflated graded response model for ordinal symptom data. Psychological Methods, 27, 261-279.

Wall, M., M., Park, J., Y., and Moustaki I. (2015). IRT modeling in the presence of zero-inflation with application to psychiatric disorder severity. Applied Psychological Measurement 39: 583-597.

See also

Author

Phil Chalmers rphilip.chalmers@gmail.com

Examples

# \donttest{

# single factor
set.seed(12345)
a <- matrix(abs(rnorm(15,1,.3)), ncol=1)
d <- matrix(rnorm(15,0,.7),ncol=1)
itemtype <- rep('2PL', nrow(a))
N <- 1000
dataset1 <- simdata(a, d, N, itemtype)
dataset2 <- simdata(a, d, N, itemtype, mu = .1, sigma = matrix(1.5))
dat <- rbind(dataset1, dataset2)
group <- c(rep('D1', N), rep('D2', N))

# marginal information
itemstats(dat)
#> $overall
#>     N mean_total.score sd_total.score ave.r  sd.r alpha SEM.alpha
#>  2000            7.888          3.555 0.188 0.053 0.777     1.678
#> 
#> $itemstats
#>            N  mean    sd total.r total.r_if_rm alpha_if_rm
#> Item_1  2000 0.609 0.488   0.525         0.414       0.762
#> Item_2  2000 0.392 0.488   0.540         0.431       0.761
#> Item_3  2000 0.456 0.498   0.526         0.413       0.762
#> Item_4  2000 0.684 0.465   0.461         0.349       0.768
#> Item_5  2000 0.538 0.499   0.528         0.415       0.762
#> Item_6  2000 0.649 0.477   0.334         0.207       0.779
#> Item_7  2000 0.681 0.466   0.524         0.419       0.762
#> Item_8  2000 0.432 0.495   0.504         0.389       0.764
#> Item_9  2000 0.302 0.459   0.446         0.334       0.769
#> Item_10 2000 0.274 0.446   0.388         0.273       0.774
#> Item_11 2000 0.734 0.442   0.457         0.351       0.768
#> Item_12 2000 0.470 0.499   0.585         0.481       0.756
#> Item_13 2000 0.585 0.493   0.561         0.455       0.759
#> Item_14 2000 0.592 0.492   0.538         0.428       0.761
#> Item_15 2000 0.490 0.500   0.458         0.336       0.769
#> 
#> $proportions
#>             0     1
#> Item_1  0.392 0.609
#> Item_2  0.608 0.392
#> Item_3  0.544 0.456
#> Item_4  0.316 0.684
#> Item_5  0.462 0.538
#> Item_6  0.351 0.649
#> Item_7  0.318 0.681
#> Item_8  0.569 0.432
#> Item_9  0.698 0.302
#> Item_10 0.726 0.274
#> Item_11 0.266 0.734
#> Item_12 0.530 0.470
#> Item_13 0.416 0.585
#> Item_14 0.408 0.592
#> Item_15 0.509 0.490
#> 

# conditional information
itemstats(dat, group=group)
#> $D1
#> $D1$overall
#>     N mean_total.score sd_total.score ave.r  sd.r alpha SEM.alpha
#>  1000             7.82          3.346 0.159 0.047  0.74     1.705
#> 
#> $D1$itemstats
#>            N  mean    sd total.r total.r_if_rm alpha_if_rm
#> Item_1  1000 0.605 0.489   0.484         0.361       0.725
#> Item_2  1000 0.368 0.483   0.507         0.388       0.722
#> Item_3  1000 0.461 0.499   0.471         0.343       0.727
#> Item_4  1000 0.673 0.469   0.439         0.315       0.729
#> Item_5  1000 0.526 0.500   0.500         0.376       0.723
#> Item_6  1000 0.654 0.476   0.355         0.222       0.739
#> Item_7  1000 0.683 0.466   0.508         0.394       0.722
#> Item_8  1000 0.431 0.495   0.462         0.333       0.728
#> Item_9  1000 0.287 0.453   0.419         0.298       0.731
#> Item_10 1000 0.274 0.446   0.372         0.249       0.735
#> Item_11 1000 0.739 0.439   0.401         0.282       0.732
#> Item_12 1000 0.456 0.498   0.563         0.448       0.715
#> Item_13 1000 0.584 0.493   0.535         0.416       0.719
#> Item_14 1000 0.592 0.492   0.483         0.358       0.725
#> Item_15 1000 0.487 0.500   0.451         0.321       0.729
#> 
#> $D1$proportions
#>             0     1
#> Item_1  0.395 0.605
#> Item_2  0.632 0.368
#> Item_3  0.539 0.461
#> Item_4  0.327 0.673
#> Item_5  0.474 0.526
#> Item_6  0.346 0.654
#> Item_7  0.317 0.683
#> Item_8  0.569 0.431
#> Item_9  0.713 0.287
#> Item_10 0.726 0.274
#> Item_11 0.261 0.739
#> Item_12 0.544 0.456
#> Item_13 0.416 0.584
#> Item_14 0.408 0.592
#> Item_15 0.513 0.487
#> 
#> 
#> $D2
#> $D2$overall
#>     N mean_total.score sd_total.score ave.r  sd.r alpha SEM.alpha
#>  1000            7.955          3.754 0.217 0.065 0.807      1.65
#> 
#> $D2$itemstats
#>            N  mean    sd total.r total.r_if_rm alpha_if_rm
#> Item_1  1000 0.612 0.488   0.563         0.464       0.792
#> Item_2  1000 0.417 0.493   0.569         0.469       0.792
#> Item_3  1000 0.450 0.498   0.578         0.479       0.791
#> Item_4  1000 0.695 0.461   0.484         0.381       0.798
#> Item_5  1000 0.551 0.498   0.553         0.451       0.793
#> Item_6  1000 0.644 0.479   0.316         0.195       0.811
#> Item_7  1000 0.680 0.467   0.540         0.443       0.794
#> Item_8  1000 0.432 0.496   0.544         0.440       0.794
#> Item_9  1000 0.317 0.466   0.470         0.365       0.799
#> Item_10 1000 0.275 0.447   0.403         0.297       0.804
#> Item_11 1000 0.729 0.445   0.508         0.413       0.796
#> Item_12 1000 0.483 0.500   0.606         0.511       0.788
#> Item_13 1000 0.585 0.493   0.587         0.491       0.790
#> Item_14 1000 0.591 0.492   0.589         0.493       0.790
#> Item_15 1000 0.494 0.500   0.466         0.351       0.801
#> 
#> $D2$proportions
#>             0     1
#> Item_1  0.388 0.612
#> Item_2  0.583 0.417
#> Item_3  0.550 0.450
#> Item_4  0.305 0.695
#> Item_5  0.449 0.551
#> Item_6  0.356 0.644
#> Item_7  0.320 0.680
#> Item_8  0.568 0.432
#> Item_9  0.683 0.317
#> Item_10 0.725 0.275
#> Item_11 0.271 0.729
#> Item_12 0.517 0.483
#> Item_13 0.415 0.585
#> Item_14 0.409 0.591
#> Item_15 0.506 0.494
#> 
#> 

mod_configural <- multipleGroup(dat, 1, group = group) #completely separate analyses
#> 
Iteration: 1, Log-Lik: -18088.494, Max-Change: 0.37763
Iteration: 2, Log-Lik: -17943.205, Max-Change: 0.18868
Iteration: 3, Log-Lik: -17915.337, Max-Change: 0.10010
Iteration: 4, Log-Lik: -17907.752, Max-Change: 0.05644
Iteration: 5, Log-Lik: -17905.241, Max-Change: 0.03385
Iteration: 6, Log-Lik: -17904.329, Max-Change: 0.02073
Iteration: 7, Log-Lik: -17903.856, Max-Change: 0.00942
Iteration: 8, Log-Lik: -17903.798, Max-Change: 0.00531
Iteration: 9, Log-Lik: -17903.778, Max-Change: 0.00309
Iteration: 10, Log-Lik: -17903.767, Max-Change: 0.00141
Iteration: 11, Log-Lik: -17903.764, Max-Change: 0.00087
Iteration: 12, Log-Lik: -17903.764, Max-Change: 0.00041
Iteration: 13, Log-Lik: -17903.763, Max-Change: 0.00036
Iteration: 14, Log-Lik: -17903.763, Max-Change: 0.00018
Iteration: 15, Log-Lik: -17903.763, Max-Change: 0.00013
Iteration: 16, Log-Lik: -17903.763, Max-Change: 0.00009
# limited information fit statistics
M2(mod_configural)
#>             M2  df         p RMSEA RMSEA_5 RMSEA_95   SRMSR.D1   SRMSR.D2
#> stats 142.9866 180 0.9806548     0       0        0 0.02414868 0.01901262
#>            TLI CFI
#> stats 1.005381   1

mod_metric <- multipleGroup(dat, 1, group = group, invariance=c('slopes')) #equal slopes
#> 
Iteration: 1, Log-Lik: -18088.494, Max-Change: 0.35346
Iteration: 2, Log-Lik: -17960.719, Max-Change: 0.16098
Iteration: 3, Log-Lik: -17934.734, Max-Change: 0.09220
Iteration: 4, Log-Lik: -17927.154, Max-Change: 0.04916
Iteration: 5, Log-Lik: -17924.975, Max-Change: 0.02753
Iteration: 6, Log-Lik: -17924.244, Max-Change: 0.01582
Iteration: 7, Log-Lik: -17923.904, Max-Change: 0.00646
Iteration: 8, Log-Lik: -17923.845, Max-Change: 0.00406
Iteration: 9, Log-Lik: -17923.821, Max-Change: 0.00245
Iteration: 10, Log-Lik: -17923.806, Max-Change: 0.00099
Iteration: 11, Log-Lik: -17923.805, Max-Change: 0.00092
Iteration: 12, Log-Lik: -17923.804, Max-Change: 0.00075
Iteration: 13, Log-Lik: -17923.804, Max-Change: 0.00046
Iteration: 14, Log-Lik: -17923.803, Max-Change: 0.00013
Iteration: 15, Log-Lik: -17923.803, Max-Change: 0.00032
Iteration: 16, Log-Lik: -17923.803, Max-Change: 0.00015
Iteration: 17, Log-Lik: -17923.803, Max-Change: 0.00007
# equal intercepts, free variance and means
mod_scalar2 <- multipleGroup(dat, 1, group = group,
                             invariance=c('slopes', 'intercepts', 'free_var','free_means'))
#> 
Iteration: 1, Log-Lik: -18088.417, Max-Change: 0.35996
Iteration: 2, Log-Lik: -17933.777, Max-Change: 0.15083
Iteration: 3, Log-Lik: -17917.367, Max-Change: 0.04719
Iteration: 4, Log-Lik: -17915.720, Max-Change: 0.01552
Iteration: 5, Log-Lik: -17915.511, Max-Change: 0.00565
Iteration: 6, Log-Lik: -17915.458, Max-Change: 0.00294
Iteration: 7, Log-Lik: -17915.421, Max-Change: 0.00276
Iteration: 8, Log-Lik: -17915.401, Max-Change: 0.00211
Iteration: 9, Log-Lik: -17915.386, Max-Change: 0.00188
Iteration: 10, Log-Lik: -17915.356, Max-Change: 0.00688
Iteration: 11, Log-Lik: -17915.337, Max-Change: 0.00121
Iteration: 12, Log-Lik: -17915.335, Max-Change: 0.00069
Iteration: 13, Log-Lik: -17915.333, Max-Change: 0.00103
Iteration: 14, Log-Lik: -17915.332, Max-Change: 0.00047
Iteration: 15, Log-Lik: -17915.331, Max-Change: 0.00036
Iteration: 16, Log-Lik: -17915.330, Max-Change: 0.00120
Iteration: 17, Log-Lik: -17915.330, Max-Change: 0.00034
Iteration: 18, Log-Lik: -17915.330, Max-Change: 0.00019
Iteration: 19, Log-Lik: -17915.330, Max-Change: 0.00021
Iteration: 20, Log-Lik: -17915.330, Max-Change: 0.00013
Iteration: 21, Log-Lik: -17915.330, Max-Change: 0.00010
Iteration: 22, Log-Lik: -17915.330, Max-Change: 0.00027
Iteration: 23, Log-Lik: -17915.330, Max-Change: 0.00010
mod_scalar1 <- multipleGroup(dat, 1, group = group,  #fixed means
                             invariance=c('slopes', 'intercepts', 'free_var'))
#> 
Iteration: 1, Log-Lik: -18088.494, Max-Change: 0.35936
Iteration: 2, Log-Lik: -17934.164, Max-Change: 0.15073
Iteration: 3, Log-Lik: -17917.793, Max-Change: 0.04711
Iteration: 4, Log-Lik: -17916.188, Max-Change: 0.01565
Iteration: 5, Log-Lik: -17916.015, Max-Change: 0.00550
Iteration: 6, Log-Lik: -17915.991, Max-Change: 0.00267
Iteration: 7, Log-Lik: -17915.987, Max-Change: 0.00161
Iteration: 8, Log-Lik: -17915.984, Max-Change: 0.00133
Iteration: 9, Log-Lik: -17915.982, Max-Change: 0.00113
Iteration: 10, Log-Lik: -17915.979, Max-Change: 0.00198
Iteration: 11, Log-Lik: -17915.979, Max-Change: 0.00092
Iteration: 12, Log-Lik: -17915.978, Max-Change: 0.00065
Iteration: 13, Log-Lik: -17915.978, Max-Change: 0.00111
Iteration: 14, Log-Lik: -17915.978, Max-Change: 0.00052
Iteration: 15, Log-Lik: -17915.978, Max-Change: 0.00037
Iteration: 16, Log-Lik: -17915.978, Max-Change: 0.00062
Iteration: 17, Log-Lik: -17915.978, Max-Change: 0.00029
Iteration: 18, Log-Lik: -17915.978, Max-Change: 0.00020
Iteration: 19, Log-Lik: -17915.978, Max-Change: 0.00033
Iteration: 20, Log-Lik: -17915.978, Max-Change: 0.00017
Iteration: 21, Log-Lik: -17915.978, Max-Change: 0.00012
Iteration: 22, Log-Lik: -17915.978, Max-Change: 0.00020
Iteration: 23, Log-Lik: -17915.978, Max-Change: 0.00009
mod_fullconstrain <- multipleGroup(dat, 1, group = group,
                             invariance=c('slopes', 'intercepts'))
#> 
Iteration: 1, Log-Lik: -18088.494, Max-Change: 0.34759
Iteration: 2, Log-Lik: -17963.262, Max-Change: 0.17817
Iteration: 3, Log-Lik: -17938.768, Max-Change: 0.08488
Iteration: 4, Log-Lik: -17932.061, Max-Change: 0.04473
Iteration: 5, Log-Lik: -17929.929, Max-Change: 0.02729
Iteration: 6, Log-Lik: -17929.182, Max-Change: 0.01644
Iteration: 7, Log-Lik: -17928.848, Max-Change: 0.00691
Iteration: 8, Log-Lik: -17928.792, Max-Change: 0.00407
Iteration: 9, Log-Lik: -17928.770, Max-Change: 0.00267
Iteration: 10, Log-Lik: -17928.756, Max-Change: 0.00056
Iteration: 11, Log-Lik: -17928.755, Max-Change: 0.00019
Iteration: 12, Log-Lik: -17928.754, Max-Change: 0.00016
Iteration: 13, Log-Lik: -17928.754, Max-Change: 0.00010
extract.mirt(mod_fullconstrain, 'time') #time of estimation components
#> TOTAL:   Data  Estep  Mstep     SE   Post 
#>  0.255  0.052  0.058  0.134  0.000  0.001 

# optionally use Newton-Raphson for (generally) faster convergence in the
#  M-step's, though occasionally less stable
mod_fullconstrain <- multipleGroup(dat, 1, group = group, optimizer = 'NR',
                             invariance=c('slopes', 'intercepts'))
#> 
Iteration: 1, Log-Lik: -18088.494, Max-Change: 0.34660
Iteration: 2, Log-Lik: -17963.343, Max-Change: 0.17323
Iteration: 3, Log-Lik: -17938.535, Max-Change: 0.08956
Iteration: 4, Log-Lik: -17931.998, Max-Change: 0.04846
Iteration: 5, Log-Lik: -17929.902, Max-Change: 0.02720
Iteration: 6, Log-Lik: -17929.173, Max-Change: 0.01568
Iteration: 7, Log-Lik: -17928.828, Max-Change: 0.00607
Iteration: 8, Log-Lik: -17928.783, Max-Change: 0.00367
Iteration: 9, Log-Lik: -17928.765, Max-Change: 0.00223
Iteration: 10, Log-Lik: -17928.756, Max-Change: 0.00084
Iteration: 11, Log-Lik: -17928.755, Max-Change: 0.00051
Iteration: 12, Log-Lik: -17928.754, Max-Change: 0.00032
Iteration: 13, Log-Lik: -17928.754, Max-Change: 0.00014
Iteration: 14, Log-Lik: -17928.754, Max-Change: 0.00011
Iteration: 15, Log-Lik: -17928.754, Max-Change: 0.00009
extract.mirt(mod_fullconstrain, 'time') #time of estimation components
#> TOTAL:   Data  Estep  Mstep     SE   Post 
#>  0.413  0.290  0.069  0.043  0.000  0.000 

summary(mod_scalar2)
#> 
#> ----------
#> GROUP: D1 
#>          F1     h2
#>  [1,] 0.544 0.2962
#>  [2,] 0.577 0.3324
#>  [3,] 0.529 0.2799
#>  [4,] 0.460 0.2118
#>  [5,] 0.536 0.2877
#>  [6,] 0.253 0.0639
#>  [7,] 0.570 0.3247
#>  [8,] 0.498 0.2479
#>  [9,] 0.459 0.2104
#> [10,] 0.373 0.1393
#> [11,] 0.487 0.2368
#> [12,] 0.632 0.3998
#> [13,] 0.596 0.3547
#> [14,] 0.561 0.3147
#> [15,] 0.414 0.1715
#> 
#> SS loadings:  3.872 
#> Proportion Var:  0.258 
#> 
#> Factor correlations: 
#> 
#>    F1
#> F1  1
#> 
#> ----------
#> GROUP: D2 
#>          F1     h2
#>  [1,] 0.634 0.4017
#>  [2,] 0.665 0.4426
#>  [3,] 0.619 0.3827
#>  [4,] 0.548 0.3000
#>  [5,] 0.626 0.3919
#>  [6,] 0.313 0.0981
#>  [7,] 0.659 0.4341
#>  [8,] 0.587 0.3446
#>  [9,] 0.546 0.2983
#> [10,] 0.453 0.2052
#> [11,] 0.575 0.3311
#> [12,] 0.718 0.5152
#> [13,] 0.683 0.4671
#> [14,] 0.650 0.4228
#> [15,] 0.498 0.2483
#> 
#> SS loadings:  5.284 
#> Proportion Var:  0.352 
#> 
#> Factor correlations: 
#> 
#>    F1
#> F1  1
coef(mod_scalar2, simplify=TRUE)
#> $D1
#> $items
#>            a1      d g u
#> Item_1  1.104  0.538 0 1
#> Item_2  1.201 -0.630 0 1
#> Item_3  1.061 -0.265 0 1
#> Item_4  0.882  0.900 0 1
#> Item_5  1.082  0.164 0 1
#> Item_6  0.445  0.636 0 1
#> Item_7  1.180  0.976 0 1
#> Item_8  0.977 -0.377 0 1
#> Item_9  0.879 -1.035 0 1
#> Item_10 0.685 -1.118 0 1
#> Item_11 0.948  1.213 0 1
#> Item_12 1.389 -0.224 0 1
#> Item_13 1.262  0.429 0 1
#> Item_14 1.153  0.453 0 1
#> Item_15 0.774 -0.070 0 1
#> 
#> $means
#> F1 
#>  0 
#> 
#> $cov
#>    F1
#> F1  1
#> 
#> 
#> $D2
#> $items
#>            a1      d g u
#> Item_1  1.104  0.538 0 1
#> Item_2  1.201 -0.630 0 1
#> Item_3  1.061 -0.265 0 1
#> Item_4  0.882  0.900 0 1
#> Item_5  1.082  0.164 0 1
#> Item_6  0.445  0.636 0 1
#> Item_7  1.180  0.976 0 1
#> Item_8  0.977 -0.377 0 1
#> Item_9  0.879 -1.035 0 1
#> Item_10 0.685 -1.118 0 1
#> Item_11 0.948  1.213 0 1
#> Item_12 1.389 -0.224 0 1
#> Item_13 1.262  0.429 0 1
#> Item_14 1.153  0.453 0 1
#> Item_15 0.774 -0.070 0 1
#> 
#> $means
#>    F1 
#> 0.066 
#> 
#> $cov
#>       F1
#> F1 1.595
#> 
#> 
residuals(mod_scalar2)
#> $D1
#>         Item_1 Item_2 Item_3 Item_4 Item_5 Item_6 Item_7 Item_8 Item_9 Item_10
#> Item_1      NA -0.036 -0.056  0.036 -0.014  0.014  0.017 -0.020 -0.008  -0.066
#> Item_2   1.305     NA -0.052 -0.032 -0.031  0.033 -0.028  0.034  0.038   0.042
#> Item_3   3.144  2.659     NA -0.047  0.057  0.071 -0.037 -0.050  0.033  -0.047
#> Item_4   1.279  1.040  2.173     NA  0.029  0.035  0.032 -0.039 -0.038   0.032
#> Item_5   0.198  0.932  3.291  0.862     NA  0.029  0.048 -0.028  0.027  -0.027
#> Item_6   0.204  1.059  5.032  1.197  0.830     NA  0.020  0.034  0.023   0.041
#> Item_7   0.277  0.804  1.362  1.018  2.337  0.392     NA -0.023 -0.040   0.038
#> Item_8   0.402  1.143  2.484  1.545  0.774  1.125  0.518     NA -0.027   0.025
#> Item_9   0.067  1.478  1.062  1.471  0.717  0.523  1.631  0.726     NA   0.052
#> Item_10  4.303  1.756  2.228  1.054  0.744  1.650  1.453  0.610  2.692      NA
#> Item_11  0.361  3.951  0.988  1.197  0.910  1.320  0.139  2.072  2.295   1.368
#> Item_12  1.718  0.586  1.038  0.725  0.218  0.454  1.323  0.473  0.322   0.604
#> Item_13  0.194  3.315  1.368  1.158  0.797  0.517  0.045  0.395  0.200   2.690
#> Item_14  0.074  0.804  3.798  2.946  0.648  0.228  0.223  0.464  0.693   0.378
#> Item_15  0.164  1.266  0.869  6.382  4.884  1.983  0.583  1.563  1.130   2.406
#>         Item_11 Item_12 Item_13 Item_14 Item_15
#> Item_1   -0.019   0.041  -0.014  -0.009   0.013
#> Item_2   -0.063   0.024   0.058   0.028   0.036
#> Item_3   -0.031   0.032  -0.037  -0.062   0.029
#> Item_4    0.035   0.027  -0.034  -0.054   0.080
#> Item_5   -0.030   0.015   0.028  -0.025  -0.070
#> Item_6    0.036   0.021   0.023  -0.015   0.045
#> Item_7    0.012   0.036  -0.007   0.015   0.024
#> Item_8   -0.046   0.022   0.020  -0.022   0.040
#> Item_9   -0.048  -0.018  -0.014   0.026   0.034
#> Item_10   0.037   0.025   0.052  -0.019  -0.049
#> Item_11      NA   0.010  -0.024  -0.053   0.021
#> Item_12   0.094      NA  -0.016  -0.016   0.012
#> Item_13   0.555   0.254      NA  -0.013   0.022
#> Item_14   2.862   0.255   0.159      NA   0.009
#> Item_15   0.424   0.148   0.486   0.073      NA
#> 
#> $D2
#>         Item_1 Item_2 Item_3 Item_4 Item_5 Item_6 Item_7 Item_8 Item_9 Item_10
#> Item_1      NA -0.029  0.031 -0.026  0.021 -0.042 -0.006  0.039  0.010  -0.029
#> Item_2   0.861     NA  0.047 -0.060  0.049 -0.061 -0.036 -0.036  0.043   0.035
#> Item_3   0.973  2.251     NA  0.064  0.039 -0.029  0.033  0.045  0.042   0.031
#> Item_4   0.673  3.546  4.082     NA  0.034  0.045  0.029  0.033 -0.031  -0.053
#> Item_5   0.455  2.426  1.534  1.151     NA -0.042 -0.043 -0.030  0.034  -0.026
#> Item_6   1.750  3.773  0.861  2.016  1.752     NA -0.038  0.023 -0.060   0.022
#> Item_7   0.040  1.293  1.085  0.831  1.854  1.475     NA  0.023 -0.021   0.025
#> Item_8   1.530  1.310  1.985  1.122  0.915  0.545  0.539     NA -0.028  -0.026
#> Item_9   0.106  1.832  1.780  0.934  1.137  3.654  0.453  0.760     NA   0.037
#> Item_10  0.815  1.230  0.958  2.779  0.685  0.466  0.622  0.690  1.393      NA
#> Item_11  0.822  0.826  0.800  1.861  0.336  0.218  0.062  2.847  0.285   0.407
#> Item_12  0.087  1.536  1.097  0.639  0.309  0.454  0.096  0.556  0.398   0.520
#> Item_13  0.582  1.458  0.844  1.093  0.620  0.403  0.401  0.619  1.349   0.478
#> Item_14  0.403  1.550  0.914  1.292  0.544  0.799  0.534  3.153  0.137   0.344
#> Item_15  0.338  1.306  1.241  0.979  2.379  1.262  0.615  0.292  0.276   0.325
#>         Item_11 Item_12 Item_13 Item_14 Item_15
#> Item_1    0.029   0.009   0.024   0.020   0.018
#> Item_2    0.029  -0.039   0.038   0.039  -0.036
#> Item_3    0.028   0.033   0.029   0.030   0.035
#> Item_4    0.043  -0.025  -0.033   0.036  -0.031
#> Item_5    0.018  -0.018  -0.025   0.023  -0.049
#> Item_6    0.015  -0.021   0.020  -0.028  -0.036
#> Item_7   -0.008  -0.010  -0.020   0.023  -0.025
#> Item_8    0.053  -0.024  -0.025   0.056   0.017
#> Item_9   -0.017  -0.020  -0.037   0.012  -0.017
#> Item_10   0.020   0.023  -0.022   0.019   0.018
#> Item_11      NA   0.032   0.017   0.018   0.024
#> Item_12   1.010      NA   0.014  -0.022  -0.011
#> Item_13   0.280   0.185      NA   0.022  -0.012
#> Item_14   0.333   0.480   0.479      NA  -0.007
#> Item_15   0.580   0.131   0.145   0.048      NA
#> 
plot(mod_configural)

plot(mod_configural, type = 'info')

plot(mod_configural, type = 'trace')

plot(mod_configural, type = 'trace', which.items = 1:4)

itemplot(mod_configural, 2)

itemplot(mod_configural, 2, type = 'RE')


anova(mod_metric, mod_configural) #equal slopes only
#>                     AIC    SABIC       HQ      BIC    logLik    X2 df p
#> mod_metric     35937.61 36046.68 36030.15 36189.65 -17923.80           
#> mod_configural 35927.53 36072.96 36050.92 36263.58 -17903.76 40.08 15 0
anova(mod_scalar2, mod_metric) #equal intercepts, free variance and mean
#>                  AIC    SABIC       HQ      BIC    logLik      X2 df   p
#> mod_scalar2 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> mod_metric  35937.61 36046.68 36030.15 36189.65 -17923.80 -16.947 13 NaN
anova(mod_scalar1, mod_scalar2) #fix mean
#>                  AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> mod_scalar1 35893.96 35969.10 35957.71 36067.58 -17915.98               
#> mod_scalar2 35894.66 35972.22 35960.47 36073.89 -17915.33 1.296  1 0.255
anova(mod_fullconstrain, mod_scalar1) #fix variance
#>                        AIC    SABIC       HQ      BIC    logLik     X2 df p
#> mod_fullconstrain 35917.51 35990.22 35979.20 36085.53 -17928.75            
#> mod_scalar1       35893.96 35969.10 35957.71 36067.58 -17915.98 25.552  1 0

# compared all at once (in order of most constrained to least)
anova(mod_fullconstrain, mod_scalar2, mod_configural)
#>                        AIC    SABIC       HQ      BIC    logLik     X2 df     p
#> mod_fullconstrain 35917.51 35990.22 35979.20 36085.53 -17928.75                
#> mod_scalar2       35894.66 35972.22 35960.47 36073.89 -17915.33 26.848  2     0
#> mod_configural    35927.53 36072.96 36050.92 36263.58 -17903.76 23.133 28 0.726


# test whether first 6 slopes should be equal across groups
values <- multipleGroup(dat, 1, group = group, pars = 'values')
values
#>     group    item     class   name parnum  value lbound ubound   est const
#> 1      D1  Item_1      dich     a1      1  0.851   -Inf    Inf  TRUE  none
#> 2      D1  Item_1      dich      d      2  0.541   -Inf    Inf  TRUE  none
#> 3      D1  Item_1      dich      g      3  0.000      0      1 FALSE  none
#> 4      D1  Item_1      dich      u      4  1.000      0      1 FALSE  none
#> 5      D1  Item_2      dich     a1      5  0.851   -Inf    Inf  TRUE  none
#> 6      D1  Item_2      dich      d      6 -0.536   -Inf    Inf  TRUE  none
#> 7      D1  Item_2      dich      g      7  0.000      0      1 FALSE  none
#> 8      D1  Item_2      dich      u      8  1.000      0      1 FALSE  none
#> 9      D1  Item_3      dich     a1      9  0.851   -Inf    Inf  TRUE  none
#> 10     D1  Item_3      dich      d     10 -0.220   -Inf    Inf  TRUE  none
#> 11     D1  Item_3      dich      g     11  0.000      0      1 FALSE  none
#> 12     D1  Item_3      dich      u     12  1.000      0      1 FALSE  none
#> 13     D1  Item_4      dich     a1     13  0.851   -Inf    Inf  TRUE  none
#> 14     D1  Item_4      dich      d     14  0.941   -Inf    Inf  TRUE  none
#> 15     D1  Item_4      dich      g     15  0.000      0      1 FALSE  none
#> 16     D1  Item_4      dich      u     16  1.000      0      1 FALSE  none
#> 17     D1  Item_5      dich     a1     17  0.851   -Inf    Inf  TRUE  none
#> 18     D1  Item_5      dich      d     18  0.190   -Inf    Inf  TRUE  none
#> 19     D1  Item_5      dich      g     19  0.000      0      1 FALSE  none
#> 20     D1  Item_5      dich      u     20  1.000      0      1 FALSE  none
#> 21     D1  Item_6      dich     a1     21  0.851   -Inf    Inf  TRUE  none
#> 22     D1  Item_6      dich      d     22  0.752   -Inf    Inf  TRUE  none
#> 23     D1  Item_6      dich      g     23  0.000      0      1 FALSE  none
#> 24     D1  Item_6      dich      u     24  1.000      0      1 FALSE  none
#> 25     D1  Item_7      dich     a1     25  0.851   -Inf    Inf  TRUE  none
#> 26     D1  Item_7      dich      d     26  0.927   -Inf    Inf  TRUE  none
#> 27     D1  Item_7      dich      g     27  0.000      0      1 FALSE  none
#> 28     D1  Item_7      dich      u     28  1.000      0      1 FALSE  none
#> 29     D1  Item_8      dich     a1     29  0.851   -Inf    Inf  TRUE  none
#> 30     D1  Item_8      dich      d     30 -0.339   -Inf    Inf  TRUE  none
#> 31     D1  Item_8      dich      g     31  0.000      0      1 FALSE  none
#> 32     D1  Item_8      dich      u     32  1.000      0      1 FALSE  none
#> 33     D1  Item_9      dich     a1     33  0.851   -Inf    Inf  TRUE  none
#> 34     D1  Item_9      dich      d     34 -1.019   -Inf    Inf  TRUE  none
#> 35     D1  Item_9      dich      g     35  0.000      0      1 FALSE  none
#> 36     D1  Item_9      dich      u     36  1.000      0      1 FALSE  none
#> 37     D1 Item_10      dich     a1     37  0.851   -Inf    Inf  TRUE  none
#> 38     D1 Item_10      dich      d     38 -1.178   -Inf    Inf  TRUE  none
#> 39     D1 Item_10      dich      g     39  0.000      0      1 FALSE  none
#> 40     D1 Item_10      dich      u     40  1.000      0      1 FALSE  none
#> 41     D1 Item_11      dich     a1     41  0.851   -Inf    Inf  TRUE  none
#> 42     D1 Item_11      dich      d     42  1.228   -Inf    Inf  TRUE  none
#> 43     D1 Item_11      dich      g     43  0.000      0      1 FALSE  none
#> 44     D1 Item_11      dich      u     44  1.000      0      1 FALSE  none
#> 45     D1 Item_12      dich     a1     45  0.851   -Inf    Inf  TRUE  none
#> 46     D1 Item_12      dich      d     46 -0.150   -Inf    Inf  TRUE  none
#> 47     D1 Item_12      dich      g     47  0.000      0      1 FALSE  none
#> 48     D1 Item_12      dich      u     48  1.000      0      1 FALSE  none
#> 49     D1 Item_13      dich     a1     49  0.851   -Inf    Inf  TRUE  none
#> 50     D1 Item_13      dich      d     50  0.419   -Inf    Inf  TRUE  none
#> 51     D1 Item_13      dich      g     51  0.000      0      1 FALSE  none
#> 52     D1 Item_13      dich      u     52  1.000      0      1 FALSE  none
#> 53     D1 Item_14      dich     a1     53  0.851   -Inf    Inf  TRUE  none
#> 54     D1 Item_14      dich      d     54  0.455   -Inf    Inf  TRUE  none
#> 55     D1 Item_14      dich      g     55  0.000      0      1 FALSE  none
#> 56     D1 Item_14      dich      u     56  1.000      0      1 FALSE  none
#> 57     D1 Item_15      dich     a1     57  0.851   -Inf    Inf  TRUE  none
#> 58     D1 Item_15      dich      d     58 -0.047   -Inf    Inf  TRUE  none
#> 59     D1 Item_15      dich      g     59  0.000      0      1 FALSE  none
#> 60     D1 Item_15      dich      u     60  1.000      0      1 FALSE  none
#> 61     D1   GROUP GroupPars MEAN_1     61  0.000   -Inf    Inf FALSE  none
#> 62     D1   GROUP GroupPars COV_11     62  1.000      0    Inf FALSE  none
#> 63     D2  Item_1      dich     a1     63  0.851   -Inf    Inf  TRUE  none
#> 64     D2  Item_1      dich      d     64  0.541   -Inf    Inf  TRUE  none
#> 65     D2  Item_1      dich      g     65  0.000      0      1 FALSE  none
#> 66     D2  Item_1      dich      u     66  1.000      0      1 FALSE  none
#> 67     D2  Item_2      dich     a1     67  0.851   -Inf    Inf  TRUE  none
#> 68     D2  Item_2      dich      d     68 -0.536   -Inf    Inf  TRUE  none
#> 69     D2  Item_2      dich      g     69  0.000      0      1 FALSE  none
#> 70     D2  Item_2      dich      u     70  1.000      0      1 FALSE  none
#> 71     D2  Item_3      dich     a1     71  0.851   -Inf    Inf  TRUE  none
#> 72     D2  Item_3      dich      d     72 -0.220   -Inf    Inf  TRUE  none
#> 73     D2  Item_3      dich      g     73  0.000      0      1 FALSE  none
#> 74     D2  Item_3      dich      u     74  1.000      0      1 FALSE  none
#> 75     D2  Item_4      dich     a1     75  0.851   -Inf    Inf  TRUE  none
#> 76     D2  Item_4      dich      d     76  0.941   -Inf    Inf  TRUE  none
#> 77     D2  Item_4      dich      g     77  0.000      0      1 FALSE  none
#> 78     D2  Item_4      dich      u     78  1.000      0      1 FALSE  none
#> 79     D2  Item_5      dich     a1     79  0.851   -Inf    Inf  TRUE  none
#> 80     D2  Item_5      dich      d     80  0.190   -Inf    Inf  TRUE  none
#> 81     D2  Item_5      dich      g     81  0.000      0      1 FALSE  none
#> 82     D2  Item_5      dich      u     82  1.000      0      1 FALSE  none
#> 83     D2  Item_6      dich     a1     83  0.851   -Inf    Inf  TRUE  none
#> 84     D2  Item_6      dich      d     84  0.752   -Inf    Inf  TRUE  none
#> 85     D2  Item_6      dich      g     85  0.000      0      1 FALSE  none
#> 86     D2  Item_6      dich      u     86  1.000      0      1 FALSE  none
#> 87     D2  Item_7      dich     a1     87  0.851   -Inf    Inf  TRUE  none
#> 88     D2  Item_7      dich      d     88  0.927   -Inf    Inf  TRUE  none
#> 89     D2  Item_7      dich      g     89  0.000      0      1 FALSE  none
#> 90     D2  Item_7      dich      u     90  1.000      0      1 FALSE  none
#> 91     D2  Item_8      dich     a1     91  0.851   -Inf    Inf  TRUE  none
#> 92     D2  Item_8      dich      d     92 -0.339   -Inf    Inf  TRUE  none
#> 93     D2  Item_8      dich      g     93  0.000      0      1 FALSE  none
#> 94     D2  Item_8      dich      u     94  1.000      0      1 FALSE  none
#> 95     D2  Item_9      dich     a1     95  0.851   -Inf    Inf  TRUE  none
#> 96     D2  Item_9      dich      d     96 -1.019   -Inf    Inf  TRUE  none
#> 97     D2  Item_9      dich      g     97  0.000      0      1 FALSE  none
#> 98     D2  Item_9      dich      u     98  1.000      0      1 FALSE  none
#> 99     D2 Item_10      dich     a1     99  0.851   -Inf    Inf  TRUE  none
#> 100    D2 Item_10      dich      d    100 -1.178   -Inf    Inf  TRUE  none
#> 101    D2 Item_10      dich      g    101  0.000      0      1 FALSE  none
#> 102    D2 Item_10      dich      u    102  1.000      0      1 FALSE  none
#> 103    D2 Item_11      dich     a1    103  0.851   -Inf    Inf  TRUE  none
#> 104    D2 Item_11      dich      d    104  1.228   -Inf    Inf  TRUE  none
#> 105    D2 Item_11      dich      g    105  0.000      0      1 FALSE  none
#> 106    D2 Item_11      dich      u    106  1.000      0      1 FALSE  none
#> 107    D2 Item_12      dich     a1    107  0.851   -Inf    Inf  TRUE  none
#> 108    D2 Item_12      dich      d    108 -0.150   -Inf    Inf  TRUE  none
#> 109    D2 Item_12      dich      g    109  0.000      0      1 FALSE  none
#> 110    D2 Item_12      dich      u    110  1.000      0      1 FALSE  none
#> 111    D2 Item_13      dich     a1    111  0.851   -Inf    Inf  TRUE  none
#> 112    D2 Item_13      dich      d    112  0.419   -Inf    Inf  TRUE  none
#> 113    D2 Item_13      dich      g    113  0.000      0      1 FALSE  none
#> 114    D2 Item_13      dich      u    114  1.000      0      1 FALSE  none
#> 115    D2 Item_14      dich     a1    115  0.851   -Inf    Inf  TRUE  none
#> 116    D2 Item_14      dich      d    116  0.455   -Inf    Inf  TRUE  none
#> 117    D2 Item_14      dich      g    117  0.000      0      1 FALSE  none
#> 118    D2 Item_14      dich      u    118  1.000      0      1 FALSE  none
#> 119    D2 Item_15      dich     a1    119  0.851   -Inf    Inf  TRUE  none
#> 120    D2 Item_15      dich      d    120 -0.047   -Inf    Inf  TRUE  none
#> 121    D2 Item_15      dich      g    121  0.000      0      1 FALSE  none
#> 122    D2 Item_15      dich      u    122  1.000      0      1 FALSE  none
#> 123    D2   GROUP GroupPars MEAN_1    123  0.000   -Inf    Inf FALSE  none
#> 124    D2   GROUP GroupPars COV_11    124  1.000      0    Inf FALSE  none
#>     nconst prior.type prior_1 prior_2
#> 1     none       none     NaN     NaN
#> 2     none       none     NaN     NaN
#> 3     none       none     NaN     NaN
#> 4     none       none     NaN     NaN
#> 5     none       none     NaN     NaN
#> 6     none       none     NaN     NaN
#> 7     none       none     NaN     NaN
#> 8     none       none     NaN     NaN
#> 9     none       none     NaN     NaN
#> 10    none       none     NaN     NaN
#> 11    none       none     NaN     NaN
#> 12    none       none     NaN     NaN
#> 13    none       none     NaN     NaN
#> 14    none       none     NaN     NaN
#> 15    none       none     NaN     NaN
#> 16    none       none     NaN     NaN
#> 17    none       none     NaN     NaN
#> 18    none       none     NaN     NaN
#> 19    none       none     NaN     NaN
#> 20    none       none     NaN     NaN
#> 21    none       none     NaN     NaN
#> 22    none       none     NaN     NaN
#> 23    none       none     NaN     NaN
#> 24    none       none     NaN     NaN
#> 25    none       none     NaN     NaN
#> 26    none       none     NaN     NaN
#> 27    none       none     NaN     NaN
#> 28    none       none     NaN     NaN
#> 29    none       none     NaN     NaN
#> 30    none       none     NaN     NaN
#> 31    none       none     NaN     NaN
#> 32    none       none     NaN     NaN
#> 33    none       none     NaN     NaN
#> 34    none       none     NaN     NaN
#> 35    none       none     NaN     NaN
#> 36    none       none     NaN     NaN
#> 37    none       none     NaN     NaN
#> 38    none       none     NaN     NaN
#> 39    none       none     NaN     NaN
#> 40    none       none     NaN     NaN
#> 41    none       none     NaN     NaN
#> 42    none       none     NaN     NaN
#> 43    none       none     NaN     NaN
#> 44    none       none     NaN     NaN
#> 45    none       none     NaN     NaN
#> 46    none       none     NaN     NaN
#> 47    none       none     NaN     NaN
#> 48    none       none     NaN     NaN
#> 49    none       none     NaN     NaN
#> 50    none       none     NaN     NaN
#> 51    none       none     NaN     NaN
#> 52    none       none     NaN     NaN
#> 53    none       none     NaN     NaN
#> 54    none       none     NaN     NaN
#> 55    none       none     NaN     NaN
#> 56    none       none     NaN     NaN
#> 57    none       none     NaN     NaN
#> 58    none       none     NaN     NaN
#> 59    none       none     NaN     NaN
#> 60    none       none     NaN     NaN
#> 61    none       none     NaN     NaN
#> 62    none       none     NaN     NaN
#> 63    none       none     NaN     NaN
#> 64    none       none     NaN     NaN
#> 65    none       none     NaN     NaN
#> 66    none       none     NaN     NaN
#> 67    none       none     NaN     NaN
#> 68    none       none     NaN     NaN
#> 69    none       none     NaN     NaN
#> 70    none       none     NaN     NaN
#> 71    none       none     NaN     NaN
#> 72    none       none     NaN     NaN
#> 73    none       none     NaN     NaN
#> 74    none       none     NaN     NaN
#> 75    none       none     NaN     NaN
#> 76    none       none     NaN     NaN
#> 77    none       none     NaN     NaN
#> 78    none       none     NaN     NaN
#> 79    none       none     NaN     NaN
#> 80    none       none     NaN     NaN
#> 81    none       none     NaN     NaN
#> 82    none       none     NaN     NaN
#> 83    none       none     NaN     NaN
#> 84    none       none     NaN     NaN
#> 85    none       none     NaN     NaN
#> 86    none       none     NaN     NaN
#> 87    none       none     NaN     NaN
#> 88    none       none     NaN     NaN
#> 89    none       none     NaN     NaN
#> 90    none       none     NaN     NaN
#> 91    none       none     NaN     NaN
#> 92    none       none     NaN     NaN
#> 93    none       none     NaN     NaN
#> 94    none       none     NaN     NaN
#> 95    none       none     NaN     NaN
#> 96    none       none     NaN     NaN
#> 97    none       none     NaN     NaN
#> 98    none       none     NaN     NaN
#> 99    none       none     NaN     NaN
#> 100   none       none     NaN     NaN
#> 101   none       none     NaN     NaN
#> 102   none       none     NaN     NaN
#> 103   none       none     NaN     NaN
#> 104   none       none     NaN     NaN
#> 105   none       none     NaN     NaN
#> 106   none       none     NaN     NaN
#> 107   none       none     NaN     NaN
#> 108   none       none     NaN     NaN
#> 109   none       none     NaN     NaN
#> 110   none       none     NaN     NaN
#> 111   none       none     NaN     NaN
#> 112   none       none     NaN     NaN
#> 113   none       none     NaN     NaN
#> 114   none       none     NaN     NaN
#> 115   none       none     NaN     NaN
#> 116   none       none     NaN     NaN
#> 117   none       none     NaN     NaN
#> 118   none       none     NaN     NaN
#> 119   none       none     NaN     NaN
#> 120   none       none     NaN     NaN
#> 121   none       none     NaN     NaN
#> 122   none       none     NaN     NaN
#> 123   none       none     NaN     NaN
#> 124   none       none     NaN     NaN
constrain <- list(c(1, 63), c(5,67), c(9,71), c(13,75), c(17,79), c(21,83))
equalslopes <- multipleGroup(dat, 1, group = group, constrain = constrain)
#> 
Iteration: 1, Log-Lik: -18088.494, Max-Change: 0.38108
Iteration: 2, Log-Lik: -17950.029, Max-Change: 0.18320
Iteration: 3, Log-Lik: -17924.396, Max-Change: 0.08102
Iteration: 4, Log-Lik: -17917.701, Max-Change: 0.05928
Iteration: 5, Log-Lik: -17915.101, Max-Change: 0.02760
Iteration: 6, Log-Lik: -17914.284, Max-Change: 0.01707
Iteration: 7, Log-Lik: -17913.832, Max-Change: 0.00568
Iteration: 8, Log-Lik: -17913.785, Max-Change: 0.00354
Iteration: 9, Log-Lik: -17913.768, Max-Change: 0.00222
Iteration: 10, Log-Lik: -17913.757, Max-Change: 0.00127
Iteration: 11, Log-Lik: -17913.756, Max-Change: 0.00068
Iteration: 12, Log-Lik: -17913.755, Max-Change: 0.00054
Iteration: 13, Log-Lik: -17913.755, Max-Change: 0.00031
Iteration: 14, Log-Lik: -17913.755, Max-Change: 0.00030
Iteration: 15, Log-Lik: -17913.755, Max-Change: 0.00009
anova(equalslopes, mod_configural)
#>                     AIC    SABIC       HQ      BIC    logLik     X2 df     p
#> equalslopes    35935.51 36066.40 36046.56 36237.96 -17913.76                
#> mod_configural 35927.53 36072.96 36050.92 36263.58 -17903.76 19.983  6 0.003

# same as above, but using mirt.model syntax
newmodel <- '
    F = 1-15
    CONSTRAINB = (1-6, a1)'
equalslopes <- multipleGroup(dat, newmodel, group = group)
#> 
Iteration: 1, Log-Lik: -18088.494, Max-Change: 0.38108
Iteration: 2, Log-Lik: -17950.029, Max-Change: 0.18320
Iteration: 3, Log-Lik: -17924.396, Max-Change: 0.08102
Iteration: 4, Log-Lik: -17917.701, Max-Change: 0.05928
Iteration: 5, Log-Lik: -17915.101, Max-Change: 0.02760
Iteration: 6, Log-Lik: -17914.284, Max-Change: 0.01707
Iteration: 7, Log-Lik: -17913.832, Max-Change: 0.00568
Iteration: 8, Log-Lik: -17913.785, Max-Change: 0.00354
Iteration: 9, Log-Lik: -17913.768, Max-Change: 0.00222
Iteration: 10, Log-Lik: -17913.757, Max-Change: 0.00127
Iteration: 11, Log-Lik: -17913.756, Max-Change: 0.00068
Iteration: 12, Log-Lik: -17913.755, Max-Change: 0.00054
Iteration: 13, Log-Lik: -17913.755, Max-Change: 0.00031
Iteration: 14, Log-Lik: -17913.755, Max-Change: 0.00030
Iteration: 15, Log-Lik: -17913.755, Max-Change: 0.00009
coef(equalslopes, simplify=TRUE)
#> $D1
#> $items
#>            a1      d g u
#> Item_1  1.246  0.546 0 1
#> Item_2  1.356 -0.720 0 1
#> Item_3  1.199 -0.201 0 1
#> Item_4  1.006  0.861 0 1
#> Item_5  1.224  0.131 0 1
#> Item_6  0.515  0.673 0 1
#> Item_7  1.305  0.999 0 1
#> Item_8  0.943 -0.328 0 1
#> Item_9  0.916 -1.058 0 1
#> Item_10 0.731 -1.079 0 1
#> Item_11 0.851  1.186 0 1
#> Item_12 1.515 -0.251 0 1
#> Item_13 1.322  0.444 0 1
#> Item_14 1.058  0.451 0 1
#> Item_15 0.885 -0.061 0 1
#> 
#> $means
#> F 
#> 0 
#> 
#> $cov
#>   F
#> F 1
#> 
#> 
#> $D2
#> $items
#>            a1      d g u
#> Item_1  1.246  0.599 0 1
#> Item_2  1.356 -0.462 0 1
#> Item_3  1.199 -0.264 0 1
#> Item_4  1.006  1.001 0 1
#> Item_5  1.224  0.266 0 1
#> Item_6  0.515  0.631 0 1
#> Item_7  1.374  1.031 0 1
#> Item_8  1.268 -0.367 0 1
#> Item_9  1.061 -0.952 0 1
#> Item_10 0.826 -1.115 0 1
#> Item_11 1.282  1.308 0 1
#> Item_12 1.625 -0.107 0 1
#> Item_13 1.523  0.493 0 1
#> Item_14 1.545  0.532 0 1
#> Item_15 0.885 -0.030 0 1
#> 
#> $means
#> F 
#> 0 
#> 
#> $cov
#>   F
#> F 1
#> 
#> 

############
# vertical scaling (i.e., equating when groups answer items others do not)
dat2 <- dat
dat2[group == 'D1', 1:2] <- dat2[group != 'D1', 14:15] <- NA
head(dat2)
#>      Item_1 Item_2 Item_3 Item_4 Item_5 Item_6 Item_7 Item_8 Item_9 Item_10
#> [1,]     NA     NA      1      1      1      0      1      1      0       0
#> [2,]     NA     NA      1      1      1      1      1      0      1       0
#> [3,]     NA     NA      0      1      1      1      1      1      0       0
#> [4,]     NA     NA      1      1      1      1      1      1      0       0
#> [5,]     NA     NA      1      0      1      1      1      1      1       0
#> [6,]     NA     NA      1      1      1      1      1      0      0       0
#>      Item_11 Item_12 Item_13 Item_14 Item_15
#> [1,]       1       1       0       1       1
#> [2,]       0       1       1       1       1
#> [3,]       1       0       1       1       1
#> [4,]       1       1       1       1       1
#> [5,]       1       1       1       1       1
#> [6,]       1       1       1       1       0
tail(dat2)
#>         Item_1 Item_2 Item_3 Item_4 Item_5 Item_6 Item_7 Item_8 Item_9 Item_10
#> [1995,]      1      1      0      0      0      1      1      1      0       0
#> [1996,]      1      0      1      1      1      0      1      1      1       1
#> [1997,]      0      1      0      0      0      1      0      1      0       0
#> [1998,]      0      1      0      0      1      0      0      0      0       0
#> [1999,]      1      1      0      1      1      1      1      1      0       0
#> [2000,]      0      0      0      0      0      0      1      0      0       0
#>         Item_11 Item_12 Item_13 Item_14 Item_15
#> [1995,]       1       0       1      NA      NA
#> [1996,]       1       1       0      NA      NA
#> [1997,]       1       0       1      NA      NA
#> [1998,]       0       1       0      NA      NA
#> [1999,]       1       1       1      NA      NA
#> [2000,]       0       0       0      NA      NA

# items with missing responses need to be constrained across groups for identification
nms <- colnames(dat2)
mod <- multipleGroup(dat2, 1, group, invariance = nms[c(1:2, 14:15)])
#> 
Iteration: 1, Log-Lik: -16311.896, Max-Change: 1.38141
Iteration: 2, Log-Lik: -15617.973, Max-Change: 0.23736
Iteration: 3, Log-Lik: -15578.520, Max-Change: 0.12558
Iteration: 4, Log-Lik: -15567.432, Max-Change: 0.07074
Iteration: 5, Log-Lik: -15563.056, Max-Change: 0.03607
Iteration: 6, Log-Lik: -15561.322, Max-Change: 0.02175
Iteration: 7, Log-Lik: -15559.959, Max-Change: 0.01040
Iteration: 8, Log-Lik: -15559.745, Max-Change: 0.00879
Iteration: 9, Log-Lik: -15559.623, Max-Change: 0.00698
Iteration: 10, Log-Lik: -15559.468, Max-Change: 0.00295
Iteration: 11, Log-Lik: -15559.456, Max-Change: 0.00226
Iteration: 12, Log-Lik: -15559.450, Max-Change: 0.00194
Iteration: 13, Log-Lik: -15559.445, Max-Change: 0.00094
Iteration: 14, Log-Lik: -15559.443, Max-Change: 0.00086
Iteration: 15, Log-Lik: -15559.442, Max-Change: 0.00069
Iteration: 16, Log-Lik: -15559.440, Max-Change: 0.00385
Iteration: 17, Log-Lik: -15559.440, Max-Change: 0.00348
Iteration: 18, Log-Lik: -15559.439, Max-Change: 0.00293
Iteration: 19, Log-Lik: -15559.439, Max-Change: 0.00053
Iteration: 20, Log-Lik: -15559.439, Max-Change: 0.00043
Iteration: 21, Log-Lik: -15559.439, Max-Change: 0.00036
Iteration: 22, Log-Lik: -15559.439, Max-Change: 0.00006

# this will throw an error without proper constraints (SEs cannot be computed either)
# mod <- multipleGroup(dat2, 1, group)

# model still does not have anchors, therefore need to add a few (here use items 3-5)
mod_anchor <- multipleGroup(dat2, 1, group,
                            invariance = c(nms[c(1:5, 14:15)], 'free_means', 'free_var'))
#> 
Iteration: 1, Log-Lik: -16313.030, Max-Change: 1.37489
Iteration: 2, Log-Lik: -15590.013, Max-Change: 0.15216
Iteration: 3, Log-Lik: -15571.879, Max-Change: 0.08112
Iteration: 4, Log-Lik: -15568.214, Max-Change: 0.04311
Iteration: 5, Log-Lik: -15566.894, Max-Change: 0.02301
Iteration: 6, Log-Lik: -15566.153, Max-Change: 0.01524
Iteration: 7, Log-Lik: -15565.037, Max-Change: 0.02680
Iteration: 8, Log-Lik: -15564.588, Max-Change: 0.01329
Iteration: 9, Log-Lik: -15564.304, Max-Change: 0.01247
Iteration: 10, Log-Lik: -15563.789, Max-Change: 0.04033
Iteration: 11, Log-Lik: -15563.161, Max-Change: 0.00722
Iteration: 12, Log-Lik: -15563.064, Max-Change: 0.00713
Iteration: 13, Log-Lik: -15562.893, Max-Change: 0.02329
Iteration: 14, Log-Lik: -15562.681, Max-Change: 0.00413
Iteration: 15, Log-Lik: -15562.648, Max-Change: 0.00406
Iteration: 16, Log-Lik: -15562.590, Max-Change: 0.01342
Iteration: 17, Log-Lik: -15562.516, Max-Change: 0.00311
Iteration: 18, Log-Lik: -15562.504, Max-Change: 0.00234
Iteration: 19, Log-Lik: -15562.485, Max-Change: 0.00775
Iteration: 20, Log-Lik: -15562.457, Max-Change: 0.00265
Iteration: 21, Log-Lik: -15562.452, Max-Change: 0.00199
Iteration: 22, Log-Lik: -15562.443, Max-Change: 0.00469
Iteration: 23, Log-Lik: -15562.435, Max-Change: 0.00216
Iteration: 24, Log-Lik: -15562.432, Max-Change: 0.00170
Iteration: 25, Log-Lik: -15562.429, Max-Change: 0.00442
Iteration: 26, Log-Lik: -15562.424, Max-Change: 0.00189
Iteration: 27, Log-Lik: -15562.422, Max-Change: 0.00146
Iteration: 28, Log-Lik: -15562.420, Max-Change: 0.00320
Iteration: 29, Log-Lik: -15562.418, Max-Change: 0.00153
Iteration: 30, Log-Lik: -15562.417, Max-Change: 0.00124
Iteration: 31, Log-Lik: -15562.416, Max-Change: 0.00332
Iteration: 32, Log-Lik: -15562.414, Max-Change: 0.00139
Iteration: 33, Log-Lik: -15562.413, Max-Change: 0.00108
Iteration: 34, Log-Lik: -15562.413, Max-Change: 0.00208
Iteration: 35, Log-Lik: -15562.412, Max-Change: 0.00109
Iteration: 36, Log-Lik: -15562.412, Max-Change: 0.00092
Iteration: 37, Log-Lik: -15562.411, Max-Change: 0.00267
Iteration: 38, Log-Lik: -15562.410, Max-Change: 0.00105
Iteration: 39, Log-Lik: -15562.410, Max-Change: 0.00078
Iteration: 40, Log-Lik: -15562.409, Max-Change: 0.00132
Iteration: 41, Log-Lik: -15562.409, Max-Change: 0.00076
Iteration: 42, Log-Lik: -15562.409, Max-Change: 0.00066
Iteration: 43, Log-Lik: -15562.409, Max-Change: 0.00198
Iteration: 44, Log-Lik: -15562.408, Max-Change: 0.00076
Iteration: 45, Log-Lik: -15562.408, Max-Change: 0.00058
Iteration: 46, Log-Lik: -15562.408, Max-Change: 0.00099
Iteration: 47, Log-Lik: -15562.408, Max-Change: 0.00056
Iteration: 48, Log-Lik: -15562.408, Max-Change: 0.00048
Iteration: 49, Log-Lik: -15562.408, Max-Change: 0.00143
Iteration: 50, Log-Lik: -15562.407, Max-Change: 0.00054
Iteration: 51, Log-Lik: -15562.407, Max-Change: 0.00041
Iteration: 52, Log-Lik: -15562.407, Max-Change: 0.00071
Iteration: 53, Log-Lik: -15562.407, Max-Change: 0.00039
Iteration: 54, Log-Lik: -15562.407, Max-Change: 0.00035
Iteration: 55, Log-Lik: -15562.407, Max-Change: 0.00102
Iteration: 56, Log-Lik: -15562.407, Max-Change: 0.00039
Iteration: 57, Log-Lik: -15562.407, Max-Change: 0.00030
Iteration: 58, Log-Lik: -15562.407, Max-Change: 0.00052
Iteration: 59, Log-Lik: -15562.407, Max-Change: 0.00028
Iteration: 60, Log-Lik: -15562.407, Max-Change: 0.00025
Iteration: 61, Log-Lik: -15562.407, Max-Change: 0.00073
Iteration: 62, Log-Lik: -15562.406, Max-Change: 0.00028
Iteration: 63, Log-Lik: -15562.406, Max-Change: 0.00021
Iteration: 64, Log-Lik: -15562.406, Max-Change: 0.00033
Iteration: 65, Log-Lik: -15562.406, Max-Change: 0.00021
Iteration: 66, Log-Lik: -15562.406, Max-Change: 0.00017
Iteration: 67, Log-Lik: -15562.406, Max-Change: 0.00047
Iteration: 68, Log-Lik: -15562.406, Max-Change: 0.00021
Iteration: 69, Log-Lik: -15562.406, Max-Change: 0.00016
Iteration: 70, Log-Lik: -15562.406, Max-Change: 0.00024
Iteration: 71, Log-Lik: -15562.406, Max-Change: 0.00015
Iteration: 72, Log-Lik: -15562.406, Max-Change: 0.00013
Iteration: 73, Log-Lik: -15562.406, Max-Change: 0.00040
Iteration: 74, Log-Lik: -15562.406, Max-Change: 0.00015
Iteration: 75, Log-Lik: -15562.406, Max-Change: 0.00012
Iteration: 76, Log-Lik: -15562.406, Max-Change: 0.00017
Iteration: 77, Log-Lik: -15562.406, Max-Change: 0.00011
Iteration: 78, Log-Lik: -15562.406, Max-Change: 0.00010
coef(mod_anchor, simplify=TRUE)
#> $D1
#> $items
#>            a1      d g u
#> Item_1  1.108  0.542 0 1
#> Item_2  1.160 -0.564 0 1
#> Item_3  1.073 -0.272 0 1
#> Item_4  0.871  0.895 0 1
#> Item_5  1.089  0.160 0 1
#> Item_6  0.582  0.685 0 1
#> Item_7  1.292  1.009 0 1
#> Item_8  0.906 -0.328 0 1
#> Item_9  0.855 -1.049 0 1
#> Item_10 0.746 -1.089 0 1
#> Item_11 0.866  1.200 0 1
#> Item_12 1.432 -0.247 0 1
#> Item_13 1.244  0.440 0 1
#> Item_14 1.000  0.449 0 1
#> Item_15 0.852 -0.061 0 1
#> 
#> $means
#> F1 
#>  0 
#> 
#> $cov
#>    F1
#> F1  1
#> 
#> 
#> $D2
#> $items
#>            a1      d g u
#> Item_1  1.108  0.542 0 1
#> Item_2  1.160 -0.564 0 1
#> Item_3  1.073 -0.272 0 1
#> Item_4  0.871  0.895 0 1
#> Item_5  1.089  0.160 0 1
#> Item_6  0.374  0.596 0 1
#> Item_7  1.090  0.942 0 1
#> Item_8  0.988 -0.437 0 1
#> Item_9  0.854 -1.018 0 1
#> Item_10 0.657 -1.164 0 1
#> Item_11 1.023  1.228 0 1
#> Item_12 1.324 -0.207 0 1
#> Item_13 1.212  0.399 0 1
#> Item_14 1.000  0.449 0 1
#> Item_15 0.852 -0.061 0 1
#> 
#> $means
#>    F1 
#> 0.077 
#> 
#> $cov
#>       F1
#> F1 1.658
#> 
#> 

# check if identified by computing information matrix
mod_anchor <- multipleGroup(dat2, 1, group, pars = mod2values(mod_anchor), TOL=NaN, SE=TRUE,
                            invariance = c(nms[c(1:5, 14:15)], 'free_means', 'free_var'))
mod_anchor
#> 
#> Call:
#> multipleGroup(data = dat2, model = 1, group = group, invariance = c(nms[c(1:5, 
#>     14:15)], "free_means", "free_var"), pars = mod2values(mod_anchor), 
#>     TOL = NaN, SE = TRUE)
#> 
#> Full-information item factor analysis with 1 factor(s).
#> Converged within NaN tolerance after 1 EM iterations.
#> mirt version: 1.44.3 
#> M-step optimizer: nlminb 
#> EM acceleration: Ramsay 
#> Number of rectangular quadrature: 61
#> Latent density type: Gaussian 
#> 
#> Information matrix estimated with method: Oakes
#> Second-order test: model is a possible local maximum
#> Condition number of information matrix =  87.67822
#> 
#> Log-likelihood = -15563.53
#> Estimated parameters: 48 
#> AIC = 31223.06
#> BIC = 31491.91; SABIC = 31339.41
#> 
coef(mod_anchor)
#> $D1
#> $Item_1
#>            a1     d  g  u
#> par     1.108 0.542  0  1
#> CI_2.5  0.842 0.330 NA NA
#> CI_97.5 1.375 0.753 NA NA
#> 
#> $Item_2
#>            a1      d  g  u
#> par     1.160 -0.564  0  1
#> CI_2.5  0.883 -0.785 NA NA
#> CI_97.5 1.436 -0.342 NA NA
#> 
#> $Item_3
#>            a1      d  g  u
#> par     1.073 -0.272  0  1
#> CI_2.5  0.896 -0.408 NA NA
#> CI_97.5 1.250 -0.137 NA NA
#> 
#> $Item_4
#>            a1     d  g  u
#> par     0.871 0.895  0  1
#> CI_2.5  0.710 0.765 NA NA
#> CI_97.5 1.031 1.026 NA NA
#> 
#> $Item_5
#>            a1     d  g  u
#> par     1.089 0.160  0  1
#> CI_2.5  0.906 0.024 NA NA
#> CI_97.5 1.272 0.295 NA NA
#> 
#> $Item_6
#>            a1     d  g  u
#> par     0.582 0.685  0  1
#> CI_2.5  0.405 0.543 NA NA
#> CI_97.5 0.760 0.828 NA NA
#> 
#> $Item_7
#>            a1     d  g  u
#> par     1.292 1.009  0  1
#> CI_2.5  1.027 0.818 NA NA
#> CI_97.5 1.558 1.199 NA NA
#> 
#> $Item_8
#>            a1      d  g  u
#> par     0.906 -0.328  0  1
#> CI_2.5  0.702 -0.476 NA NA
#> CI_97.5 1.111 -0.179 NA NA
#> 
#> $Item_9
#>            a1      d  g  u
#> par     0.855 -1.049  0  1
#> CI_2.5  0.642 -1.216 NA NA
#> CI_97.5 1.069 -0.882 NA NA
#> 
#> $Item_10
#>            a1      d  g  u
#> par     0.746 -1.089  0  1
#> CI_2.5  0.542 -1.253 NA NA
#> CI_97.5 0.950 -0.926 NA NA
#> 
#> $Item_11
#>            a1     d  g  u
#> par     0.866 1.200  0  1
#> CI_2.5  0.651 1.025 NA NA
#> CI_97.5 1.081 1.375 NA NA
#> 
#> $Item_12
#>            a1      d  g  u
#> par     1.432 -0.247  0  1
#> CI_2.5  1.152 -0.421 NA NA
#> CI_97.5 1.713 -0.074 NA NA
#> 
#> $Item_13
#>            a1     d  g  u
#> par     1.244 0.440  0  1
#> CI_2.5  0.994 0.273 NA NA
#> CI_97.5 1.494 0.607 NA NA
#> 
#> $Item_14
#>            a1     d  g  u
#> par     1.000 0.449  0  1
#> CI_2.5  0.785 0.294 NA NA
#> CI_97.5 1.215 0.603 NA NA
#> 
#> $Item_15
#>            a1      d  g  u
#> par     0.852 -0.061  0  1
#> CI_2.5  0.655 -0.205 NA NA
#> CI_97.5 1.049  0.083 NA NA
#> 
#> $GroupPars
#>         MEAN_1 COV_11
#> par          0      1
#> CI_2.5      NA     NA
#> CI_97.5     NA     NA
#> 
#> 
#> $D2
#> $Item_1
#>            a1     d  g  u
#> par     1.108 0.542  0  1
#> CI_2.5  0.842 0.330 NA NA
#> CI_97.5 1.375 0.753 NA NA
#> 
#> $Item_2
#>            a1      d  g  u
#> par     1.160 -0.564  0  1
#> CI_2.5  0.883 -0.785 NA NA
#> CI_97.5 1.436 -0.342 NA NA
#> 
#> $Item_3
#>            a1      d  g  u
#> par     1.073 -0.272  0  1
#> CI_2.5  0.896 -0.408 NA NA
#> CI_97.5 1.250 -0.137 NA NA
#> 
#> $Item_4
#>            a1     d  g  u
#> par     0.871 0.895  0  1
#> CI_2.5  0.710 0.765 NA NA
#> CI_97.5 1.031 1.026 NA NA
#> 
#> $Item_5
#>            a1     d  g  u
#> par     1.089 0.160  0  1
#> CI_2.5  0.906 0.024 NA NA
#> CI_97.5 1.272 0.295 NA NA
#> 
#> $Item_6
#>            a1     d  g  u
#> par     0.374 0.596  0  1
#> CI_2.5  0.236 0.454 NA NA
#> CI_97.5 0.512 0.738 NA NA
#> 
#> $Item_7
#>            a1     d  g  u
#> par     1.090 0.942  0  1
#> CI_2.5  0.823 0.722 NA NA
#> CI_97.5 1.357 1.163 NA NA
#> 
#> $Item_8
#>            a1      d  g  u
#> par     0.988 -0.437  0  1
#> CI_2.5  0.747 -0.636 NA NA
#> CI_97.5 1.228 -0.239 NA NA
#> 
#> $Item_9
#>            a1      d  g  u
#> par     0.854 -1.018  0  1
#> CI_2.5  0.635 -1.219 NA NA
#> CI_97.5 1.072 -0.817 NA NA
#> 
#> $Item_10
#>            a1      d  g  u
#> par     0.657 -1.164  0  1
#> CI_2.5  0.469 -1.350 NA NA
#> CI_97.5 0.845 -0.978 NA NA
#> 
#> $Item_11
#>            a1     d  g  u
#> par     1.023 1.228  0  1
#> CI_2.5  0.766 1.003 NA NA
#> CI_97.5 1.280 1.452 NA NA
#> 
#> $Item_12
#>            a1      d  g  u
#> par     1.324 -0.207  0  1
#> CI_2.5  1.010 -0.442 NA NA
#> CI_97.5 1.637  0.027 NA NA
#> 
#> $Item_13
#>            a1     d  g  u
#> par     1.212 0.399  0  1
#> CI_2.5  0.923 0.178 NA NA
#> CI_97.5 1.502 0.620 NA NA
#> 
#> $Item_14
#>            a1     d  g  u
#> par     1.000 0.449  0  1
#> CI_2.5  0.785 0.294 NA NA
#> CI_97.5 1.215 0.603 NA NA
#> 
#> $Item_15
#>            a1      d  g  u
#> par     0.852 -0.061  0  1
#> CI_2.5  0.655 -0.205 NA NA
#> CI_97.5 1.049  0.083 NA NA
#> 
#> $GroupPars
#>         MEAN_1 COV_11
#> par      0.008  1.658
#> CI_2.5  -0.148  1.093
#> CI_97.5  0.164  2.222
#> 
#> 
coef(mod_anchor, printSE=TRUE)
#> $D1
#> $Item_1
#>        a1     d logit(g) logit(u)
#> par 1.108 0.542     -999      999
#> SE  0.136 0.108       NA       NA
#> 
#> $Item_2
#>        a1      d logit(g) logit(u)
#> par 1.160 -0.564     -999      999
#> SE  0.141  0.113       NA       NA
#> 
#> $Item_3
#>        a1      d logit(g) logit(u)
#> par 1.073 -0.272     -999      999
#> SE  0.090  0.069       NA       NA
#> 
#> $Item_4
#>        a1     d logit(g) logit(u)
#> par 0.871 0.895     -999      999
#> SE  0.082 0.066       NA       NA
#> 
#> $Item_5
#>        a1     d logit(g) logit(u)
#> par 1.089 0.160     -999      999
#> SE  0.093 0.069       NA       NA
#> 
#> $Item_6
#>        a1     d logit(g) logit(u)
#> par 0.582 0.685     -999      999
#> SE  0.091 0.073       NA       NA
#> 
#> $Item_7
#>        a1     d logit(g) logit(u)
#> par 1.292 1.009     -999      999
#> SE  0.135 0.097       NA       NA
#> 
#> $Item_8
#>        a1      d logit(g) logit(u)
#> par 0.906 -0.328     -999      999
#> SE  0.104  0.076       NA       NA
#> 
#> $Item_9
#>        a1      d logit(g) logit(u)
#> par 0.855 -1.049     -999      999
#> SE  0.109  0.085       NA       NA
#> 
#> $Item_10
#>        a1      d logit(g) logit(u)
#> par 0.746 -1.089     -999      999
#> SE  0.104  0.083       NA       NA
#> 
#> $Item_11
#>        a1     d logit(g) logit(u)
#> par 0.866 1.200     -999      999
#> SE  0.110 0.089       NA       NA
#> 
#> $Item_12
#>        a1      d logit(g) logit(u)
#> par 1.432 -0.247     -999      999
#> SE  0.143  0.089       NA       NA
#> 
#> $Item_13
#>        a1     d logit(g) logit(u)
#> par 1.244 0.440     -999      999
#> SE  0.127 0.085       NA       NA
#> 
#> $Item_14
#>       a1     d logit(g) logit(u)
#> par 1.00 0.449     -999      999
#> SE  0.11 0.079       NA       NA
#> 
#> $Item_15
#>        a1      d logit(g) logit(u)
#> par 0.852 -0.061     -999      999
#> SE  0.100  0.073       NA       NA
#> 
#> $GroupPars
#>     MEAN_1 COV_11
#> par      0      1
#> SE      NA     NA
#> 
#> 
#> $D2
#> $Item_1
#>        a1     d logit(g) logit(u)
#> par 1.108 0.542     -999      999
#> SE  0.136 0.108       NA       NA
#> 
#> $Item_2
#>        a1      d logit(g) logit(u)
#> par 1.160 -0.564     -999      999
#> SE  0.141  0.113       NA       NA
#> 
#> $Item_3
#>        a1      d logit(g) logit(u)
#> par 1.073 -0.272     -999      999
#> SE  0.090  0.069       NA       NA
#> 
#> $Item_4
#>        a1     d logit(g) logit(u)
#> par 0.871 0.895     -999      999
#> SE  0.082 0.066       NA       NA
#> 
#> $Item_5
#>        a1     d logit(g) logit(u)
#> par 1.089 0.160     -999      999
#> SE  0.093 0.069       NA       NA
#> 
#> $Item_6
#>        a1     d logit(g) logit(u)
#> par 0.374 0.596     -999      999
#> SE  0.071 0.073       NA       NA
#> 
#> $Item_7
#>        a1     d logit(g) logit(u)
#> par 1.090 0.942     -999      999
#> SE  0.136 0.112       NA       NA
#> 
#> $Item_8
#>        a1      d logit(g) logit(u)
#> par 0.988 -0.437     -999      999
#> SE  0.123  0.101       NA       NA
#> 
#> $Item_9
#>        a1      d logit(g) logit(u)
#> par 0.854 -1.018     -999      999
#> SE  0.111  0.102       NA       NA
#> 
#> $Item_10
#>        a1      d logit(g) logit(u)
#> par 0.657 -1.164     -999      999
#> SE  0.096  0.095       NA       NA
#> 
#> $Item_11
#>        a1     d logit(g) logit(u)
#> par 1.023 1.228     -999      999
#> SE  0.131 0.114       NA       NA
#> 
#> $Item_12
#>        a1      d logit(g) logit(u)
#> par 1.324 -0.207     -999      999
#> SE  0.160  0.120       NA       NA
#> 
#> $Item_13
#>        a1     d logit(g) logit(u)
#> par 1.212 0.399     -999      999
#> SE  0.148 0.113       NA       NA
#> 
#> $Item_14
#>       a1     d logit(g) logit(u)
#> par 1.00 0.449     -999      999
#> SE  0.11 0.079       NA       NA
#> 
#> $Item_15
#>        a1      d logit(g) logit(u)
#> par 0.852 -0.061     -999      999
#> SE  0.100  0.073       NA       NA
#> 
#> $GroupPars
#>     MEAN_1 COV_11
#> par  0.008  1.658
#> SE   0.080  0.288
#> 
#> 


#############
# DIF test for each item (using all other items as anchors)
itemnames <- colnames(dat)
refmodel <- multipleGroup(dat, 1, group = group, SE=TRUE,
                          invariance=c('free_means', 'free_var', itemnames))
#> 
Iteration: 1, Log-Lik: -18088.417, Max-Change: 0.35996
Iteration: 2, Log-Lik: -17933.777, Max-Change: 0.15083
Iteration: 3, Log-Lik: -17917.367, Max-Change: 0.04719
Iteration: 4, Log-Lik: -17915.720, Max-Change: 0.01552
Iteration: 5, Log-Lik: -17915.511, Max-Change: 0.00565
Iteration: 6, Log-Lik: -17915.458, Max-Change: 0.00294
Iteration: 7, Log-Lik: -17915.421, Max-Change: 0.00276
Iteration: 8, Log-Lik: -17915.401, Max-Change: 0.00211
Iteration: 9, Log-Lik: -17915.386, Max-Change: 0.00188
Iteration: 10, Log-Lik: -17915.356, Max-Change: 0.00688
Iteration: 11, Log-Lik: -17915.337, Max-Change: 0.00121
Iteration: 12, Log-Lik: -17915.335, Max-Change: 0.00069
Iteration: 13, Log-Lik: -17915.333, Max-Change: 0.00103
Iteration: 14, Log-Lik: -17915.332, Max-Change: 0.00047
Iteration: 15, Log-Lik: -17915.331, Max-Change: 0.00036
Iteration: 16, Log-Lik: -17915.330, Max-Change: 0.00120
Iteration: 17, Log-Lik: -17915.330, Max-Change: 0.00034
Iteration: 18, Log-Lik: -17915.330, Max-Change: 0.00019
Iteration: 19, Log-Lik: -17915.330, Max-Change: 0.00021
Iteration: 20, Log-Lik: -17915.330, Max-Change: 0.00013
Iteration: 21, Log-Lik: -17915.330, Max-Change: 0.00010
Iteration: 22, Log-Lik: -17915.330, Max-Change: 0.00027
Iteration: 23, Log-Lik: -17915.330, Max-Change: 0.00010
#> 
#> Calculating information matrix...

# loop over items (in practice, run in parallel to increase speed). May be better to use ?DIF
estmodels <- vector('list', ncol(dat))
for(i in 1:ncol(dat))
    estmodels[[i]] <- multipleGroup(dat, 1, group = group, verbose = FALSE,
                             invariance=c('free_means', 'free_var', itemnames[-i]))
anova(refmodel, estmodels[[1]])
#>                     AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel       35894.66 35972.22 35960.47 36073.89 -17915.33               
#> estmodels[[1]] 35898.45 35980.86 35968.37 36088.88 -17915.22 0.213  2 0.899
(anovas <- lapply(estmodels, function(x, refmodel) anova(refmodel, x),
   refmodel=refmodel))
#> [[1]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35898.45 35980.86 35968.37 36088.88 -17915.22 0.213  2 0.899
#> 
#> [[2]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35896.81 35979.22 35966.73 36087.24 -17914.41 1.847  2 0.397
#> 
#> [[3]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35893.66 35976.07 35963.58 36084.09 -17912.83 5.001  2 0.082
#> 
#> [[4]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35897.07 35979.48 35967.00 36087.50 -17914.54 1.586  2 0.453
#> 
#> [[5]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35897.97 35980.38 35967.89 36088.40 -17914.99 0.688  2 0.709
#> 
#> [[6]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df    p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33              
#> x        35894.87 35977.28 35964.79 36085.30 -17913.43 3.793  2 0.15
#> 
#> [[7]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35897.53 35979.94 35967.45 36087.96 -17914.76 1.131  2 0.568
#> 
#> [[8]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35897.20 35979.61 35967.12 36087.63 -17914.60 1.462  2 0.481
#> 
#> [[9]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35898.46 35980.87 35968.38 36088.89 -17915.23 0.197  2 0.906
#> 
#> [[10]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35897.67 35980.08 35967.59 36088.10 -17914.83 0.993  2 0.609
#> 
#> [[11]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35896.07 35978.48 35965.99 36086.50 -17914.03 2.593  2 0.273
#> 
#> [[12]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35897.57 35979.98 35967.49 36088.00 -17914.78 1.092  2 0.579
#> 
#> [[13]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35898.47 35980.88 35968.39 36088.90 -17915.23 0.192  2 0.908
#> 
#> [[14]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35896.15 35978.57 35966.08 36086.58 -17914.08 2.505  2 0.286
#> 
#> [[15]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35896.96 35979.37 35966.88 36087.39 -17914.48 1.699  2 0.428
#> 

# family-wise error control
p <- do.call(rbind, lapply(anovas, function(x) x[2, 'p']))
p.adjust(p, method = 'BH')
#>  [1] 0.9084069 0.8299980 0.8299980 0.8299980 0.8862364 0.8299980 0.8299980
#>  [8] 0.8299980 0.9084069 0.8299980 0.8299980 0.8299980 0.9084069 0.8299980
#> [15] 0.8299980

# same as above, except only test if slopes vary (1 df)
# constrain all intercepts
estmodels <- vector('list', ncol(dat))
for(i in 1:ncol(dat))
    estmodels[[i]] <- multipleGroup(dat, 1, group = group, verbose = FALSE,
                             invariance=c('free_means', 'free_var', 'intercepts',
                             itemnames[-i]))

(anovas <- lapply(estmodels, function(x, refmodel) anova(refmodel, x),
   refmodel=refmodel))
#> [[1]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35896.52 35976.50 35964.38 36081.35 -17915.26 0.143  1 0.705
#> 
#> [[2]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35896.60 35976.58 35964.46 36081.43 -17915.30 0.061  1 0.804
#> 
#> [[3]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35894.66 35974.65 35962.53 36079.49 -17914.33 1.997  1 0.158
#> 
#> [[4]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35896.39 35976.38 35964.26 36081.22 -17915.20 0.268  1 0.605
#> 
#> [[5]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35896.56 35976.54 35964.42 36081.39 -17915.28 0.103  1 0.748
#> 
#> [[6]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35893.62 35973.60 35961.48 36078.45 -17913.81 3.042  1 0.081
#> 
#> [[7]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35895.67 35975.66 35963.54 36080.50 -17914.84 0.985  1 0.321
#> 
#> [[8]]
#>               AIC    SABIC       HQ      BIC    logLik   X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33              
#> x        35896.27 35976.26 35964.13 36081.10 -17915.13 0.39  1 0.532
#> 
#> [[9]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35896.66 35976.64 35964.52 36081.49 -17915.33 0.001  1 0.979
#> 
#> [[10]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35896.12 35976.11 35963.99 36080.95 -17915.06 0.538  1 0.463
#> 
#> [[11]]
#>               AIC    SABIC       HQ      BIC    logLik   X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33              
#> x        35894.22 35974.21 35962.08 36079.05 -17914.11 2.44  1 0.118
#> 
#> [[12]]
#>               AIC    SABIC       HQ      BIC    logLik   X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33              
#> x        35895.87 35975.86 35963.74 36080.70 -17914.94 0.79  1 0.374
#> 
#> [[13]]
#>               AIC    SABIC       HQ      BIC    logLik   X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33              
#> x        35896.58 35976.57 35964.44 36081.41 -17915.29 0.08  1 0.778
#> 
#> [[14]]
#>               AIC    SABIC       HQ      BIC    logLik  X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33             
#> x        35894.16 35974.15 35962.02 36078.99 -17914.08 2.5  1 0.114
#> 
#> [[15]]
#>               AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> refmodel 35894.66 35972.22 35960.47 36073.89 -17915.33               
#> x        35894.99 35974.97 35962.85 36079.82 -17914.49 1.672  1 0.196
#> 

# quickly test with Wald test using DIF()
mod_configural2 <- multipleGroup(dat, 1, group = group, SE=TRUE)
#> 
Iteration: 1, Log-Lik: -18088.494, Max-Change: 0.37763
Iteration: 2, Log-Lik: -17943.205, Max-Change: 0.18868
Iteration: 3, Log-Lik: -17915.337, Max-Change: 0.10010
Iteration: 4, Log-Lik: -17907.752, Max-Change: 0.05644
Iteration: 5, Log-Lik: -17905.241, Max-Change: 0.03385
Iteration: 6, Log-Lik: -17904.329, Max-Change: 0.02073
Iteration: 7, Log-Lik: -17903.856, Max-Change: 0.00942
Iteration: 8, Log-Lik: -17903.798, Max-Change: 0.00531
Iteration: 9, Log-Lik: -17903.778, Max-Change: 0.00309
Iteration: 10, Log-Lik: -17903.767, Max-Change: 0.00141
Iteration: 11, Log-Lik: -17903.764, Max-Change: 0.00087
Iteration: 12, Log-Lik: -17903.764, Max-Change: 0.00041
Iteration: 13, Log-Lik: -17903.763, Max-Change: 0.00036
Iteration: 14, Log-Lik: -17903.763, Max-Change: 0.00018
Iteration: 15, Log-Lik: -17903.763, Max-Change: 0.00013
Iteration: 16, Log-Lik: -17903.763, Max-Change: 0.00009
#> 
#> Calculating information matrix...
DIF(mod_configural2, which.par = c('a1', 'd'), Wald=TRUE, p.adjust = 'fdr')
#> NOTE: No hyper-parameters were estimated in the DIF model. 
#>       For effective DIF testing, freeing the focal group hyper-parameters is recommended.
#>         groups      W df     p adj_p
#> Item_1   D1,D2  4.636  2 0.098 0.246
#> Item_2   D1,D2  7.265  2 0.026 0.099
#> Item_3   D1,D2 10.375  2 0.006 0.055
#> Item_4   D1,D2  3.210  2 0.201 0.335
#> Item_5   D1,D2  3.618  2 0.164 0.307
#> Item_6   D1,D2  0.820  2 0.664 0.804
#> Item_7   D1,D2  0.575  2  0.75 0.804
#> Item_8   D1,D2  5.782  2 0.056 0.167
#> Item_9   D1,D2  3.802  2 0.149 0.307
#> Item_10  D1,D2  0.722  2 0.697 0.804
#> Item_11  D1,D2  8.922  2 0.012 0.058
#> Item_12  D1,D2  2.340  2  0.31 0.463
#> Item_13  D1,D2  2.162  2 0.339 0.463
#> Item_14  D1,D2  9.848  2 0.007 0.055
#> Item_15  D1,D2  0.204  2 0.903 0.903



#############
# Three group model where the latent variable parameters are constrained to
# be equal in the focal groups

set.seed(12345)
a <- matrix(abs(rnorm(15,1,.3)), ncol=1)
d <- matrix(rnorm(15,0,.7),ncol=1)
itemtype <- rep('2PL', nrow(a))
N <- 1000
dataset1 <- simdata(a, d, N, itemtype)
dataset2 <- simdata(a, d, N, itemtype, mu = .1, sigma = matrix(1.5))
dataset3 <- simdata(a, d, N, itemtype, mu = .1, sigma = matrix(1.5))
dat <- rbind(dataset1, dataset2, dataset3)
group <- rep(c('D1', 'D2', 'D3'), each=N)

# marginal information
itemstats(dat)
#> $overall
#>     N mean_total.score sd_total.score ave.r  sd.r alpha SEM.alpha
#>  3000             7.89          3.567  0.19 0.054 0.779     1.676
#> 
#> $itemstats
#>            N  mean    sd total.r total.r_if_rm alpha_if_rm
#> Item_1  3000 0.605 0.489   0.525         0.415       0.764
#> Item_2  3000 0.403 0.491   0.563         0.458       0.761
#> Item_3  3000 0.457 0.498   0.504         0.388       0.767
#> Item_4  3000 0.676 0.468   0.458         0.345       0.770
#> Item_5  3000 0.545 0.498   0.539         0.429       0.763
#> Item_6  3000 0.645 0.478   0.334         0.207       0.782
#> Item_7  3000 0.688 0.464   0.529         0.426       0.764
#> Item_8  3000 0.427 0.495   0.498         0.382       0.767
#> Item_9  3000 0.292 0.455   0.454         0.344       0.770
#> Item_10 3000 0.284 0.451   0.393         0.279       0.775
#> Item_11 3000 0.738 0.440   0.451         0.345       0.770
#> Item_12 3000 0.460 0.499   0.598         0.496       0.757
#> Item_13 3000 0.591 0.492   0.556         0.449       0.761
#> Item_14 3000 0.591 0.492   0.548         0.441       0.762
#> Item_15 3000 0.488 0.500   0.452         0.330       0.772
#> 
#> $proportions
#>             0     1
#> Item_1  0.395 0.605
#> Item_2  0.597 0.403
#> Item_3  0.543 0.457
#> Item_4  0.324 0.676
#> Item_5  0.455 0.545
#> Item_6  0.355 0.645
#> Item_7  0.312 0.688
#> Item_8  0.573 0.427
#> Item_9  0.708 0.292
#> Item_10 0.716 0.284
#> Item_11 0.262 0.738
#> Item_12 0.540 0.460
#> Item_13 0.409 0.591
#> Item_14 0.409 0.591
#> Item_15 0.512 0.488
#> 

# conditional information
itemstats(dat, group=group)
#> $D1
#> $D1$overall
#>     N mean_total.score sd_total.score ave.r  sd.r alpha SEM.alpha
#>  1000             7.82          3.346 0.159 0.047  0.74     1.705
#> 
#> $D1$itemstats
#>            N  mean    sd total.r total.r_if_rm alpha_if_rm
#> Item_1  1000 0.605 0.489   0.484         0.361       0.725
#> Item_2  1000 0.368 0.483   0.507         0.388       0.722
#> Item_3  1000 0.461 0.499   0.471         0.343       0.727
#> Item_4  1000 0.673 0.469   0.439         0.315       0.729
#> Item_5  1000 0.526 0.500   0.500         0.376       0.723
#> Item_6  1000 0.654 0.476   0.355         0.222       0.739
#> Item_7  1000 0.683 0.466   0.508         0.394       0.722
#> Item_8  1000 0.431 0.495   0.462         0.333       0.728
#> Item_9  1000 0.287 0.453   0.419         0.298       0.731
#> Item_10 1000 0.274 0.446   0.372         0.249       0.735
#> Item_11 1000 0.739 0.439   0.401         0.282       0.732
#> Item_12 1000 0.456 0.498   0.563         0.448       0.715
#> Item_13 1000 0.584 0.493   0.535         0.416       0.719
#> Item_14 1000 0.592 0.492   0.483         0.358       0.725
#> Item_15 1000 0.487 0.500   0.451         0.321       0.729
#> 
#> $D1$proportions
#>             0     1
#> Item_1  0.395 0.605
#> Item_2  0.632 0.368
#> Item_3  0.539 0.461
#> Item_4  0.327 0.673
#> Item_5  0.474 0.526
#> Item_6  0.346 0.654
#> Item_7  0.317 0.683
#> Item_8  0.569 0.431
#> Item_9  0.713 0.287
#> Item_10 0.726 0.274
#> Item_11 0.261 0.739
#> Item_12 0.544 0.456
#> Item_13 0.416 0.584
#> Item_14 0.408 0.592
#> Item_15 0.513 0.487
#> 
#> 
#> $D2
#> $D2$overall
#>     N mean_total.score sd_total.score ave.r  sd.r alpha SEM.alpha
#>  1000            7.955          3.754 0.217 0.065 0.807      1.65
#> 
#> $D2$itemstats
#>            N  mean    sd total.r total.r_if_rm alpha_if_rm
#> Item_1  1000 0.612 0.488   0.563         0.464       0.792
#> Item_2  1000 0.417 0.493   0.569         0.469       0.792
#> Item_3  1000 0.450 0.498   0.578         0.479       0.791
#> Item_4  1000 0.695 0.461   0.484         0.381       0.798
#> Item_5  1000 0.551 0.498   0.553         0.451       0.793
#> Item_6  1000 0.644 0.479   0.316         0.195       0.811
#> Item_7  1000 0.680 0.467   0.540         0.443       0.794
#> Item_8  1000 0.432 0.496   0.544         0.440       0.794
#> Item_9  1000 0.317 0.466   0.470         0.365       0.799
#> Item_10 1000 0.275 0.447   0.403         0.297       0.804
#> Item_11 1000 0.729 0.445   0.508         0.413       0.796
#> Item_12 1000 0.483 0.500   0.606         0.511       0.788
#> Item_13 1000 0.585 0.493   0.587         0.491       0.790
#> Item_14 1000 0.591 0.492   0.589         0.493       0.790
#> Item_15 1000 0.494 0.500   0.466         0.351       0.801
#> 
#> $D2$proportions
#>             0     1
#> Item_1  0.388 0.612
#> Item_2  0.583 0.417
#> Item_3  0.550 0.450
#> Item_4  0.305 0.695
#> Item_5  0.449 0.551
#> Item_6  0.356 0.644
#> Item_7  0.320 0.680
#> Item_8  0.568 0.432
#> Item_9  0.683 0.317
#> Item_10 0.725 0.275
#> Item_11 0.271 0.729
#> Item_12 0.517 0.483
#> Item_13 0.415 0.585
#> Item_14 0.409 0.591
#> Item_15 0.506 0.494
#> 
#> 
#> $D3
#> $D3$overall
#>     N mean_total.score sd_total.score ave.r  sd.r alpha SEM.alpha
#>  1000            7.894          3.592 0.194 0.064 0.783     1.672
#> 
#> $D3$itemstats
#>            N  mean    sd total.r total.r_if_rm alpha_if_rm
#> Item_1  1000 0.599 0.490   0.526         0.416       0.769
#> Item_2  1000 0.424 0.494   0.610         0.512       0.761
#> Item_3  1000 0.459 0.499   0.460         0.340       0.776
#> Item_4  1000 0.659 0.474   0.452         0.338       0.775
#> Item_5  1000 0.557 0.497   0.562         0.456       0.766
#> Item_6  1000 0.638 0.481   0.334         0.208       0.786
#> Item_7  1000 0.700 0.458   0.539         0.439       0.767
#> Item_8  1000 0.419 0.494   0.485         0.369       0.773
#> Item_9  1000 0.272 0.445   0.470         0.365       0.773
#> Item_10 1000 0.303 0.460   0.405         0.290       0.779
#> Item_11 1000 0.747 0.435   0.438         0.333       0.776
#> Item_12 1000 0.442 0.497   0.622         0.526       0.759
#> Item_13 1000 0.604 0.489   0.545         0.438       0.767
#> Item_14 1000 0.589 0.492   0.569         0.465       0.765
#> Item_15 1000 0.482 0.500   0.439         0.317       0.778
#> 
#> $D3$proportions
#>             0     1
#> Item_1  0.401 0.599
#> Item_2  0.576 0.424
#> Item_3  0.541 0.459
#> Item_4  0.341 0.659
#> Item_5  0.443 0.557
#> Item_6  0.362 0.638
#> Item_7  0.300 0.700
#> Item_8  0.581 0.419
#> Item_9  0.728 0.272
#> Item_10 0.697 0.303
#> Item_11 0.253 0.747
#> Item_12 0.558 0.442
#> Item_13 0.396 0.604
#> Item_14 0.411 0.589
#> Item_15 0.518 0.482
#> 
#> 

model <- 'F1 = 1-15
          FREE[D2, D3] = (GROUP, MEAN_1), (GROUP, COV_11)
          CONSTRAINB[D2,D3] = (GROUP, MEAN_1), (GROUP, COV_11)'

mod <- multipleGroup(dat, model, group = group, invariance = colnames(dat))
#> 
Iteration: 1, Log-Lik: -27104.273, Max-Change: 0.38795
Iteration: 2, Log-Lik: -26855.645, Max-Change: 0.14101
Iteration: 3, Log-Lik: -26831.770, Max-Change: 0.04938
Iteration: 4, Log-Lik: -26829.466, Max-Change: 0.01773
Iteration: 5, Log-Lik: -26829.171, Max-Change: 0.00643
Iteration: 6, Log-Lik: -26829.092, Max-Change: 0.00330
Iteration: 7, Log-Lik: -26829.027, Max-Change: 0.00296
Iteration: 8, Log-Lik: -26828.989, Max-Change: 0.00258
Iteration: 9, Log-Lik: -26828.957, Max-Change: 0.00241
Iteration: 10, Log-Lik: -26828.883, Max-Change: 0.00825
Iteration: 11, Log-Lik: -26828.828, Max-Change: 0.00154
Iteration: 12, Log-Lik: -26828.819, Max-Change: 0.00126
Iteration: 13, Log-Lik: -26828.798, Max-Change: 0.00440
Iteration: 14, Log-Lik: -26828.782, Max-Change: 0.00082
Iteration: 15, Log-Lik: -26828.779, Max-Change: 0.00068
Iteration: 16, Log-Lik: -26828.773, Max-Change: 0.00236
Iteration: 17, Log-Lik: -26828.769, Max-Change: 0.00044
Iteration: 18, Log-Lik: -26828.768, Max-Change: 0.00036
Iteration: 19, Log-Lik: -26828.766, Max-Change: 0.00126
Iteration: 20, Log-Lik: -26828.765, Max-Change: 0.00023
Iteration: 21, Log-Lik: -26828.764, Max-Change: 0.00019
Iteration: 22, Log-Lik: -26828.764, Max-Change: 0.00067
Iteration: 23, Log-Lik: -26828.764, Max-Change: 0.00012
Iteration: 24, Log-Lik: -26828.764, Max-Change: 0.00010
Iteration: 25, Log-Lik: -26828.763, Max-Change: 0.00036
Iteration: 26, Log-Lik: -26828.763, Max-Change: 0.00007
coef(mod, simplify=TRUE)
#> $D1
#> $items
#>            a1      d g u
#> Item_1  1.089  0.517 0 1
#> Item_2  1.302 -0.601 0 1
#> Item_3  0.950 -0.251 0 1
#> Item_4  0.857  0.847 0 1
#> Item_5  1.119  0.195 0 1
#> Item_6  0.447  0.618 0 1
#> Item_7  1.209  1.023 0 1
#> Item_8  0.939 -0.396 0 1
#> Item_9  0.909 -1.110 0 1
#> Item_10 0.695 -1.073 0 1
#> Item_11 0.929  1.232 0 1
#> Item_12 1.454 -0.290 0 1
#> Item_13 1.216  0.457 0 1
#> Item_14 1.199  0.453 0 1
#> Item_15 0.751 -0.085 0 1
#> 
#> $means
#> F1 
#>  0 
#> 
#> $cov
#>    F1
#> F1  1
#> 
#> 
#> $D2
#> $items
#>            a1      d g u
#> Item_1  1.089  0.517 0 1
#> Item_2  1.302 -0.601 0 1
#> Item_3  0.950 -0.251 0 1
#> Item_4  0.857  0.847 0 1
#> Item_5  1.119  0.195 0 1
#> Item_6  0.447  0.618 0 1
#> Item_7  1.209  1.023 0 1
#> Item_8  0.939 -0.396 0 1
#> Item_9  0.909 -1.110 0 1
#> Item_10 0.695 -1.073 0 1
#> Item_11 0.929  1.232 0 1
#> Item_12 1.454 -0.290 0 1
#> Item_13 1.216  0.457 0 1
#> Item_14 1.199  0.453 0 1
#> Item_15 0.751 -0.085 0 1
#> 
#> $means
#>    F1 
#> 0.055 
#> 
#> $cov
#>       F1
#> F1 1.467
#> 
#> 
#> $D3
#> $items
#>            a1      d g u
#> Item_1  1.089  0.517 0 1
#> Item_2  1.302 -0.601 0 1
#> Item_3  0.950 -0.251 0 1
#> Item_4  0.857  0.847 0 1
#> Item_5  1.119  0.195 0 1
#> Item_6  0.447  0.618 0 1
#> Item_7  1.209  1.023 0 1
#> Item_8  0.939 -0.396 0 1
#> Item_9  0.909 -1.110 0 1
#> Item_10 0.695 -1.073 0 1
#> Item_11 0.929  1.232 0 1
#> Item_12 1.454 -0.290 0 1
#> Item_13 1.216  0.457 0 1
#> Item_14 1.199  0.453 0 1
#> Item_15 0.751 -0.085 0 1
#> 
#> $means
#>    F1 
#> 0.055 
#> 
#> $cov
#>       F1
#> F1 1.467
#> 
#> 

#############
# Testing main effects in multiple independent grouping variables
set.seed(1234)
a <- matrix(abs(rnorm(15,1,.3)), ncol=1)
d <- matrix(rnorm(15,0,.7),ncol=1)
itemtype <- rep('2PL', nrow(a))
N <- 500

# generated data have interaction effect for latent means, as well as a
# main effect across D but no main effect across G
d11 <- simdata(a, d, N, itemtype, mu = 0)
d12 <- simdata(a, d, N, itemtype, mu = 0)
d13 <- simdata(a, d, N, itemtype, mu = 0)
d21 <- simdata(a, d, N, itemtype, mu = 1/2)
d22 <- simdata(a, d, N, itemtype, mu = 1/2)
d23 <- simdata(a, d, N, itemtype, mu = -1)
dat <- do.call(rbind, list(d11, d12, d13, d21, d22, d23))
group <- rep(c('G1.D1', 'G1.D2', 'G1.D3', 'G2.D1', 'G2.D2', 'G2.D3'), each=N)
table(group)
#> group
#> G1.D1 G1.D2 G1.D3 G2.D1 G2.D2 G2.D3 
#>   500   500   500   500   500   500 

if (FALSE) { # \dontrun{
# in practice, group would be organized in a data.frame as follows
df <- data.frame(group)
dfw <- tidyr::separate_wider_delim(df, group, delim='.', names = c('G', 'D'))
head(dfw)

# for use with multipleGroup() combine into a single long group
group <- with(dfw, factor(G):factor(D))

# conditional information
itemstats(dat, group=group)

mod <- multipleGroup(dat, group = group, SE=TRUE,
                     invariance = c(colnames(dat), 'free_mean', 'free_var'))
coef(mod, simplify=TRUE)
sapply(coef(mod, simplify=TRUE), \(x) unname(x$means)) # mean estimates
wald(mod) # view parameter names for later testing

# test for main effect over G group (manually compute marginal mean)
wald(mod, "0 + MEAN_1.123 + MEAN_1.185 = MEAN_1.247 + MEAN_1.309 + MEAN_1.371")

# test for main effect over D group  (manually compute marginal means)
wald(mod, c("0 + MEAN_1.247 = MEAN_1.123 + MEAN_1.309",
            "0 + MEAN_1.247 = MEAN_1.185 + MEAN_1.371"))

# post-hoc tests (better practice would include p.adjust() )
wald(mod, "0 + MEAN_1.247 = MEAN_1.123 + MEAN_1.309") # D1 vs D2
wald(mod, "0 + MEAN_1.247 = MEAN_1.185 + MEAN_1.371") # D1 vs D3
wald(mod, "MEAN_1.123 + MEAN_1.309 = MEAN_1.185 + MEAN_1.371") # D2 vs D3
} # }

#############
# multiple factors

a <- matrix(c(abs(rnorm(5,1,.3)), rep(0,15),abs(rnorm(5,1,.3)),
     rep(0,15),abs(rnorm(5,1,.3))), 15, 3)
d <- matrix(rnorm(15,0,.7),ncol=1)
mu <- c(-.4, -.7, .1)
sigma <- matrix(c(1.21,.297,1.232,.297,.81,.252,1.232,.252,1.96),3,3)
itemtype <- rep('2PL', nrow(a))
N <- 1000
dataset1 <- simdata(a, d, N, itemtype)
dataset2 <- simdata(a, d, N, itemtype, mu = mu, sigma = sigma)
dat <- rbind(dataset1, dataset2)
group <- c(rep('D1', N), rep('D2', N))

# group models
model <- '
   F1 = 1-5
   F2 = 6-10
   F3 = 11-15'

# define mirt cluster to use parallel architecture
if(interactive()) mirtCluster()

# EM approach (not as accurate with 3 factors, but generally good for quick model comparisons)
mod_configural <- multipleGroup(dat, model, group = group) #completely separate analyses
#> 
Iteration: 1, Log-Lik: -18575.878, Max-Change: 0.27980
Iteration: 2, Log-Lik: -18448.320, Max-Change: 0.16094
Iteration: 3, Log-Lik: -18415.495, Max-Change: 0.12244
Iteration: 4, Log-Lik: -18405.238, Max-Change: 0.07363
Iteration: 5, Log-Lik: -18401.483, Max-Change: 0.04829
Iteration: 6, Log-Lik: -18399.868, Max-Change: 0.03976
Iteration: 7, Log-Lik: -18398.627, Max-Change: 0.02621
Iteration: 8, Log-Lik: -18398.455, Max-Change: 0.02179
Iteration: 9, Log-Lik: -18398.345, Max-Change: 0.01763
Iteration: 10, Log-Lik: -18398.147, Max-Change: 0.00718
Iteration: 11, Log-Lik: -18398.131, Max-Change: 0.00611
Iteration: 12, Log-Lik: -18398.118, Max-Change: 0.00529
Iteration: 13, Log-Lik: -18398.070, Max-Change: 0.00464
Iteration: 14, Log-Lik: -18398.066, Max-Change: 0.00444
Iteration: 15, Log-Lik: -18398.063, Max-Change: 0.00399
Iteration: 16, Log-Lik: -18398.051, Max-Change: 0.00157
Iteration: 17, Log-Lik: -18398.051, Max-Change: 0.00150
Iteration: 18, Log-Lik: -18398.050, Max-Change: 0.00139
Iteration: 19, Log-Lik: -18398.049, Max-Change: 0.00113
Iteration: 20, Log-Lik: -18398.049, Max-Change: 0.00102
Iteration: 21, Log-Lik: -18398.049, Max-Change: 0.00094
Iteration: 22, Log-Lik: -18398.049, Max-Change: 0.00083
Iteration: 23, Log-Lik: -18398.049, Max-Change: 0.00076
Iteration: 24, Log-Lik: -18398.048, Max-Change: 0.00069
Iteration: 25, Log-Lik: -18398.048, Max-Change: 0.00059
Iteration: 26, Log-Lik: -18398.048, Max-Change: 0.00054
Iteration: 27, Log-Lik: -18398.048, Max-Change: 0.00049
Iteration: 28, Log-Lik: -18398.048, Max-Change: 0.00043
Iteration: 29, Log-Lik: -18398.048, Max-Change: 0.00040
Iteration: 30, Log-Lik: -18398.048, Max-Change: 0.00036
Iteration: 31, Log-Lik: -18398.048, Max-Change: 0.00032
Iteration: 32, Log-Lik: -18398.048, Max-Change: 0.00029
Iteration: 33, Log-Lik: -18398.048, Max-Change: 0.00027
Iteration: 34, Log-Lik: -18398.048, Max-Change: 0.00024
Iteration: 35, Log-Lik: -18398.048, Max-Change: 0.00022
Iteration: 36, Log-Lik: -18398.048, Max-Change: 0.00020
Iteration: 37, Log-Lik: -18398.048, Max-Change: 0.00018
Iteration: 38, Log-Lik: -18398.048, Max-Change: 0.00016
Iteration: 39, Log-Lik: -18398.048, Max-Change: 0.00015
Iteration: 40, Log-Lik: -18398.048, Max-Change: 0.00013
Iteration: 41, Log-Lik: -18398.048, Max-Change: 0.00012
Iteration: 42, Log-Lik: -18398.048, Max-Change: 0.00011
Iteration: 43, Log-Lik: -18398.048, Max-Change: 0.00010
mod_metric <- multipleGroup(dat, model, group = group, invariance=c('slopes')) #equal slopes
#> 
Iteration: 1, Log-Lik: -18575.878, Max-Change: 0.30057
Iteration: 2, Log-Lik: -18460.004, Max-Change: 0.11622
Iteration: 3, Log-Lik: -18432.514, Max-Change: 0.09355
Iteration: 4, Log-Lik: -18422.658, Max-Change: 0.06444
Iteration: 5, Log-Lik: -18418.963, Max-Change: 0.05098
Iteration: 6, Log-Lik: -18417.324, Max-Change: 0.04000
Iteration: 7, Log-Lik: -18416.447, Max-Change: 0.03128
Iteration: 8, Log-Lik: -18416.163, Max-Change: 0.02348
Iteration: 9, Log-Lik: -18415.993, Max-Change: 0.01970
Iteration: 10, Log-Lik: -18415.705, Max-Change: 0.00854
Iteration: 11, Log-Lik: -18415.688, Max-Change: 0.00649
Iteration: 12, Log-Lik: -18415.676, Max-Change: 0.00524
Iteration: 13, Log-Lik: -18415.651, Max-Change: 0.00107
Iteration: 14, Log-Lik: -18415.650, Max-Change: 0.00123
Iteration: 15, Log-Lik: -18415.649, Max-Change: 0.00111
Iteration: 16, Log-Lik: -18415.647, Max-Change: 0.00029
Iteration: 17, Log-Lik: -18415.647, Max-Change: 0.00024
Iteration: 18, Log-Lik: -18415.647, Max-Change: 0.00020
Iteration: 19, Log-Lik: -18415.647, Max-Change: 0.00081
Iteration: 20, Log-Lik: -18415.647, Max-Change: 0.00053
Iteration: 21, Log-Lik: -18415.647, Max-Change: 0.00037
Iteration: 22, Log-Lik: -18415.647, Max-Change: 0.00023
Iteration: 23, Log-Lik: -18415.647, Max-Change: 0.00021
Iteration: 24, Log-Lik: -18415.647, Max-Change: 0.00019
Iteration: 25, Log-Lik: -18415.647, Max-Change: 0.00018
Iteration: 26, Log-Lik: -18415.647, Max-Change: 0.00016
Iteration: 27, Log-Lik: -18415.647, Max-Change: 0.00015
Iteration: 28, Log-Lik: -18415.647, Max-Change: 0.00014
Iteration: 29, Log-Lik: -18415.646, Max-Change: 0.00013
Iteration: 30, Log-Lik: -18415.646, Max-Change: 0.00012
Iteration: 31, Log-Lik: -18415.646, Max-Change: 0.00011
Iteration: 32, Log-Lik: -18415.646, Max-Change: 0.00011
Iteration: 33, Log-Lik: -18415.646, Max-Change: 0.00010
Iteration: 34, Log-Lik: -18415.646, Max-Change: 0.00009
mod_fullconstrain <- multipleGroup(dat, model, group = group, #equal means, slopes, intercepts
                             invariance=c('slopes', 'intercepts'))
#> 
Iteration: 1, Log-Lik: -18575.878, Max-Change: 0.20794
Iteration: 2, Log-Lik: -18516.122, Max-Change: 0.14798
Iteration: 3, Log-Lik: -18494.460, Max-Change: 0.08977
Iteration: 4, Log-Lik: -18485.822, Max-Change: 0.05021
Iteration: 5, Log-Lik: -18483.039, Max-Change: 0.04337
Iteration: 6, Log-Lik: -18481.741, Max-Change: 0.03625
Iteration: 7, Log-Lik: -18480.641, Max-Change: 0.01925
Iteration: 8, Log-Lik: -18480.526, Max-Change: 0.01771
Iteration: 9, Log-Lik: -18480.447, Max-Change: 0.01387
Iteration: 10, Log-Lik: -18480.320, Max-Change: 0.00526
Iteration: 11, Log-Lik: -18480.310, Max-Change: 0.00435
Iteration: 12, Log-Lik: -18480.302, Max-Change: 0.00364
Iteration: 13, Log-Lik: -18480.290, Max-Change: 0.00035
Iteration: 14, Log-Lik: -18480.289, Max-Change: 0.00031
Iteration: 15, Log-Lik: -18480.289, Max-Change: 0.00140
Iteration: 16, Log-Lik: -18480.289, Max-Change: 0.00084
Iteration: 17, Log-Lik: -18480.289, Max-Change: 0.00018
Iteration: 18, Log-Lik: -18480.289, Max-Change: 0.00014
Iteration: 19, Log-Lik: -18480.289, Max-Change: 0.00054
Iteration: 20, Log-Lik: -18480.289, Max-Change: 0.00047
Iteration: 21, Log-Lik: -18480.289, Max-Change: 0.00050
Iteration: 22, Log-Lik: -18480.289, Max-Change: 0.00011
Iteration: 23, Log-Lik: -18480.289, Max-Change: 0.00040
Iteration: 24, Log-Lik: -18480.289, Max-Change: 0.00009

anova(mod_metric, mod_configural)
#>                     AIC    SABIC       HQ      BIC    logLik     X2 df     p
#> mod_metric     36921.29 37030.37 37013.84 37173.33 -18415.65                
#> mod_configural 36916.10 37061.53 37039.49 37252.15 -18398.05 35.197 15 0.002
anova(mod_fullconstrain, mod_metric)
#>                        AIC    SABIC       HQ      BIC    logLik      X2 df p
#> mod_fullconstrain 37020.58 37093.29 37082.27 37188.60 -18480.29             
#> mod_metric        36921.29 37030.37 37013.84 37173.33 -18415.65 129.284 15 0

# same as above, but with MHRM (generally  more accurate with 3+ factors, but slower)
mod_configural <- multipleGroup(dat, model, group = group, method = 'MHRM')
#> 
Stage 1 = 1, CDLL = -25538.2, AR(1.00) = [0.32; 0.34], Max-Change = 0.0590
Stage 1 = 2, CDLL = -25571.5, AR(1.00) = [0.35; 0.35], Max-Change = 0.0510
Stage 1 = 3, CDLL = -25393.5, AR(1.00) = [0.34; 0.37], Max-Change = 0.0521
Stage 1 = 4, CDLL = -25463.8, AR(1.00) = [0.34; 0.32], Max-Change = 0.0448
Stage 1 = 5, CDLL = -25342.9, AR(1.00) = [0.33; 0.32], Max-Change = 0.0452
Stage 1 = 6, CDLL = -25163.3, AR(1.00) = [0.35; 0.31], Max-Change = 0.0585
Stage 1 = 7, CDLL = -25199.3, AR(1.00) = [0.32; 0.35], Max-Change = 0.0515
Stage 1 = 8, CDLL = -25252.6, AR(1.00) = [0.30; 0.31], Max-Change = 0.0410
Stage 1 = 9, CDLL = -25181.7, AR(1.00) = [0.33; 0.30], Max-Change = 0.0450
Stage 1 = 10, CDLL = -25116.4, AR(1.00) = [0.35; 0.33], Max-Change = 0.0403
Stage 1 = 11, CDLL = -25056.9, AR(1.00) = [0.32; 0.32], Max-Change = 0.0433
Stage 1 = 12, CDLL = -25087.3, AR(1.00) = [0.32; 0.32], Max-Change = 0.0520
Stage 1 = 13, CDLL = -25129.6, AR(1.00) = [0.33; 0.31], Max-Change = 0.0391
Stage 1 = 14, CDLL = -25049.7, AR(1.00) = [0.31; 0.30], Max-Change = 0.0444
Stage 1 = 15, CDLL = -25035.6, AR(1.00) = [0.31; 0.32], Max-Change = 0.0611
Stage 1 = 16, CDLL = -25067.7, AR(1.00) = [0.36; 0.31], Max-Change = 0.0418
Stage 1 = 17, CDLL = -24990.2, AR(1.00) = [0.36; 0.34], Max-Change = 0.0514
Stage 1 = 18, CDLL = -25023.7, AR(1.00) = [0.33; 0.28], Max-Change = 0.0568
Stage 1 = 19, CDLL = -25051.9, AR(1.00) = [0.32; 0.32], Max-Change = 0.0286
Stage 1 = 20, CDLL = -24971.0, AR(1.00) = [0.34; 0.30], Max-Change = 0.0359
Stage 1 = 21, CDLL = -25004.8, AR(1.00) = [0.32; 0.31], Max-Change = 0.0247
Stage 1 = 22, CDLL = -24874.5, AR(1.00) = [0.33; 0.31], Max-Change = 0.0433
Stage 1 = 23, CDLL = -24842.4, AR(1.00) = [0.30; 0.31], Max-Change = 0.0549
Stage 1 = 24, CDLL = -24881.4, AR(1.00) = [0.31; 0.28], Max-Change = 0.0384
Stage 1 = 25, CDLL = -24907.5, AR(1.00) = [0.34; 0.30], Max-Change = 0.0468
Stage 1 = 26, CDLL = -24899.6, AR(1.00) = [0.32; 0.31], Max-Change = 0.0443
Stage 1 = 27, CDLL = -24892.2, AR(1.00) = [0.30; 0.29], Max-Change = 0.0343
Stage 1 = 28, CDLL = -24841.1, AR(1.00) = [0.32; 0.32], Max-Change = 0.0363
Stage 1 = 29, CDLL = -24791.3, AR(1.00) = [0.32; 0.31], Max-Change = 0.0315
Stage 1 = 30, CDLL = -24811.8, AR(1.00) = [0.30; 0.32], Max-Change = 0.0449
Stage 1 = 31, CDLL = -24813.6, AR(1.00) = [0.34; 0.29], Max-Change = 0.0334
Stage 1 = 32, CDLL = -24912.4, AR(1.00) = [0.29; 0.32], Max-Change = 0.0500
Stage 1 = 33, CDLL = -24813.8, AR(1.00) = [0.33; 0.29], Max-Change = 0.0348
Stage 1 = 34, CDLL = -24820.8, AR(1.00) = [0.29; 0.31], Max-Change = 0.0351
Stage 1 = 35, CDLL = -24790.9, AR(1.00) = [0.33; 0.31], Max-Change = 0.0404
Stage 1 = 36, CDLL = -24850.7, AR(1.00) = [0.34; 0.30], Max-Change = 0.0712
Stage 1 = 37, CDLL = -24855.3, AR(1.00) = [0.30; 0.28], Max-Change = 0.0320
Stage 1 = 38, CDLL = -24882.4, AR(1.00) = [0.34; 0.28], Max-Change = 0.0251
Stage 1 = 39, CDLL = -24853.9, AR(1.00) = [0.32; 0.29], Max-Change = 0.0268
Stage 1 = 40, CDLL = -24866.3, AR(1.00) = [0.34; 0.29], Max-Change = 0.0331
Stage 1 = 41, CDLL = -24968.3, AR(1.00) = [0.32; 0.30], Max-Change = 0.0369
Stage 1 = 42, CDLL = -24816.7, AR(1.00) = [0.32; 0.28], Max-Change = 0.0361
Stage 1 = 43, CDLL = -24875.2, AR(1.00) = [0.31; 0.31], Max-Change = 0.0252
Stage 1 = 44, CDLL = -24889.0, AR(1.00) = [0.33; 0.28], Max-Change = 0.0319
Stage 1 = 45, CDLL = -24881.2, AR(1.00) = [0.33; 0.31], Max-Change = 0.0311
Stage 1 = 46, CDLL = -24837.7, AR(1.00) = [0.32; 0.30], Max-Change = 0.0443
Stage 1 = 47, CDLL = -24808.6, AR(1.00) = [0.29; 0.29], Max-Change = 0.0405
Stage 1 = 48, CDLL = -24890.9, AR(1.00) = [0.32; 0.28], Max-Change = 0.0283
Stage 1 = 49, CDLL = -24764.7, AR(1.00) = [0.31; 0.30], Max-Change = 0.0392
Stage 1 = 50, CDLL = -24717.2, AR(1.00) = [0.30; 0.30], Max-Change = 0.0315
Stage 1 = 51, CDLL = -24729.0, AR(1.00) = [0.31; 0.26], Max-Change = 0.0536
Stage 1 = 52, CDLL = -24736.7, AR(1.00) = [0.31; 0.28], Max-Change = 0.0339
Stage 1 = 53, CDLL = -24831.9, AR(1.00) = [0.30; 0.31], Max-Change = 0.0258
Stage 1 = 54, CDLL = -24859.5, AR(1.00) = [0.30; 0.28], Max-Change = 0.0350
Stage 1 = 55, CDLL = -24812.9, AR(1.00) = [0.31; 0.30], Max-Change = 0.0428
Stage 1 = 56, CDLL = -24852.7, AR(1.00) = [0.31; 0.28], Max-Change = 0.0349
Stage 1 = 57, CDLL = -24792.8, AR(1.00) = [0.32; 0.31], Max-Change = 0.0378
Stage 1 = 58, CDLL = -24903.5, AR(1.00) = [0.32; 0.30], Max-Change = 0.0539
Stage 1 = 59, CDLL = -24791.8, AR(1.00) = [0.31; 0.27], Max-Change = 0.0303
Stage 1 = 60, CDLL = -24864.8, AR(1.00) = [0.30; 0.31], Max-Change = 0.0469
Stage 1 = 61, CDLL = -24898.1, AR(1.00) = [0.33; 0.31], Max-Change = 0.0424
Stage 1 = 62, CDLL = -24873.7, AR(1.00) = [0.31; 0.30], Max-Change = 0.0275
Stage 1 = 63, CDLL = -24892.9, AR(1.00) = [0.30; 0.32], Max-Change = 0.0502
Stage 1 = 64, CDLL = -24870.3, AR(1.00) = [0.32; 0.31], Max-Change = 0.0449
Stage 1 = 65, CDLL = -24865.2, AR(1.00) = [0.33; 0.33], Max-Change = 0.0378
Stage 1 = 66, CDLL = -24850.0, AR(1.00) = [0.31; 0.31], Max-Change = 0.0307
Stage 1 = 67, CDLL = -24822.2, AR(1.00) = [0.33; 0.30], Max-Change = 0.0340
Stage 1 = 68, CDLL = -24826.9, AR(1.00) = [0.31; 0.30], Max-Change = 0.0370
Stage 1 = 69, CDLL = -24880.3, AR(1.00) = [0.30; 0.31], Max-Change = 0.0527
Stage 1 = 70, CDLL = -24863.5, AR(1.00) = [0.32; 0.28], Max-Change = 0.0222
Stage 1 = 71, CDLL = -24804.1, AR(1.00) = [0.31; 0.29], Max-Change = 0.0256
Stage 1 = 72, CDLL = -24892.2, AR(1.00) = [0.31; 0.31], Max-Change = 0.0322
Stage 1 = 73, CDLL = -24890.6, AR(1.00) = [0.33; 0.33], Max-Change = 0.0393
Stage 1 = 74, CDLL = -24844.0, AR(1.00) = [0.33; 0.31], Max-Change = 0.0343
Stage 1 = 75, CDLL = -24836.1, AR(1.00) = [0.31; 0.30], Max-Change = 0.0384
Stage 1 = 76, CDLL = -24823.5, AR(1.00) = [0.31; 0.29], Max-Change = 0.0348
Stage 1 = 77, CDLL = -24838.2, AR(1.00) = [0.31; 0.29], Max-Change = 0.0321
Stage 1 = 78, CDLL = -24786.6, AR(1.00) = [0.31; 0.31], Max-Change = 0.0297
Stage 1 = 79, CDLL = -24812.2, AR(1.00) = [0.30; 0.29], Max-Change = 0.0377
Stage 1 = 80, CDLL = -24780.3, AR(1.00) = [0.31; 0.29], Max-Change = 0.0313
Stage 1 = 81, CDLL = -24903.6, AR(1.00) = [0.32; 0.29], Max-Change = 0.0272
Stage 1 = 82, CDLL = -24808.8, AR(1.00) = [0.32; 0.31], Max-Change = 0.0264
Stage 1 = 83, CDLL = -24776.3, AR(1.00) = [0.29; 0.30], Max-Change = 0.0357
Stage 1 = 84, CDLL = -24755.8, AR(1.00) = [0.34; 0.27], Max-Change = 0.0336
Stage 1 = 85, CDLL = -24768.5, AR(1.00) = [0.30; 0.32], Max-Change = 0.0355
Stage 1 = 86, CDLL = -24752.3, AR(1.00) = [0.30; 0.27], Max-Change = 0.0304
Stage 1 = 87, CDLL = -24777.9, AR(1.00) = [0.32; 0.28], Max-Change = 0.0452
Stage 1 = 88, CDLL = -24822.8, AR(1.00) = [0.30; 0.29], Max-Change = 0.0284
Stage 1 = 89, CDLL = -24788.0, AR(1.00) = [0.30; 0.28], Max-Change = 0.0211
Stage 1 = 90, CDLL = -24849.0, AR(1.00) = [0.31; 0.30], Max-Change = 0.0450
Stage 1 = 91, CDLL = -24821.7, AR(1.00) = [0.32; 0.31], Max-Change = 0.0394
Stage 1 = 92, CDLL = -24841.5, AR(1.00) = [0.32; 0.29], Max-Change = 0.0357
Stage 1 = 93, CDLL = -24856.5, AR(1.00) = [0.31; 0.28], Max-Change = 0.0273
Stage 1 = 94, CDLL = -24802.3, AR(1.00) = [0.28; 0.29], Max-Change = 0.0615
Stage 1 = 95, CDLL = -24737.8, AR(1.00) = [0.29; 0.30], Max-Change = 0.0300
Stage 1 = 96, CDLL = -24739.4, AR(1.00) = [0.31; 0.32], Max-Change = 0.0333
Stage 1 = 97, CDLL = -24783.0, AR(1.00) = [0.30; 0.28], Max-Change = 0.0246
Stage 1 = 98, CDLL = -24802.3, AR(1.00) = [0.32; 0.28], Max-Change = 0.0344
Stage 1 = 99, CDLL = -24828.1, AR(1.00) = [0.31; 0.29], Max-Change = 0.0406
Stage 1 = 100, CDLL = -24802.5, AR(1.00) = [0.29; 0.32], Max-Change = 0.0265
Stage 1 = 101, CDLL = -24814.7, AR(1.00) = [0.31; 0.28], Max-Change = 0.0389
Stage 1 = 102, CDLL = -24868.9, AR(1.00) = [0.33; 0.29], Max-Change = 0.0379
Stage 1 = 103, CDLL = -24857.6, AR(1.00) = [0.32; 0.28], Max-Change = 0.0637
Stage 1 = 104, CDLL = -24802.2, AR(1.00) = [0.30; 0.31], Max-Change = 0.0312
Stage 1 = 105, CDLL = -24748.9, AR(1.00) = [0.32; 0.30], Max-Change = 0.0208
Stage 1 = 106, CDLL = -24750.1, AR(1.00) = [0.30; 0.29], Max-Change = 0.0273
Stage 1 = 107, CDLL = -24773.4, AR(1.00) = [0.33; 0.32], Max-Change = 0.0217
Stage 1 = 108, CDLL = -24740.6, AR(1.00) = [0.33; 0.29], Max-Change = 0.0340
Stage 1 = 109, CDLL = -24756.0, AR(1.00) = [0.31; 0.29], Max-Change = 0.0473
Stage 1 = 110, CDLL = -24825.4, AR(1.00) = [0.29; 0.30], Max-Change = 0.0318
Stage 1 = 111, CDLL = -24843.5, AR(1.00) = [0.34; 0.28], Max-Change = 0.0316
Stage 1 = 112, CDLL = -24869.2, AR(1.00) = [0.30; 0.29], Max-Change = 0.0378
Stage 1 = 113, CDLL = -24895.6, AR(1.00) = [0.32; 0.31], Max-Change = 0.0282
Stage 1 = 114, CDLL = -24802.2, AR(1.00) = [0.32; 0.29], Max-Change = 0.0386
Stage 1 = 115, CDLL = -24845.1, AR(1.00) = [0.28; 0.29], Max-Change = 0.0447
Stage 1 = 116, CDLL = -24830.1, AR(1.00) = [0.34; 0.29], Max-Change = 0.0300
Stage 1 = 117, CDLL = -24860.0, AR(1.00) = [0.34; 0.30], Max-Change = 0.0565
Stage 1 = 118, CDLL = -24834.7, AR(1.00) = [0.32; 0.28], Max-Change = 0.0259
Stage 1 = 119, CDLL = -24837.5, AR(1.00) = [0.32; 0.30], Max-Change = 0.0267
Stage 1 = 120, CDLL = -24866.3, AR(1.00) = [0.29; 0.31], Max-Change = 0.0397
Stage 1 = 121, CDLL = -24831.6, AR(1.00) = [0.31; 0.28], Max-Change = 0.0238
Stage 1 = 122, CDLL = -24824.4, AR(1.00) = [0.31; 0.28], Max-Change = 0.0390
Stage 1 = 123, CDLL = -24784.8, AR(1.00) = [0.32; 0.28], Max-Change = 0.0650
Stage 1 = 124, CDLL = -24788.7, AR(1.00) = [0.30; 0.31], Max-Change = 0.0314
Stage 1 = 125, CDLL = -24822.5, AR(1.00) = [0.30; 0.26], Max-Change = 0.0328
Stage 1 = 126, CDLL = -24830.1, AR(1.00) = [0.33; 0.28], Max-Change = 0.0262
Stage 1 = 127, CDLL = -24897.1, AR(1.00) = [0.34; 0.28], Max-Change = 0.0410
Stage 1 = 128, CDLL = -24865.5, AR(1.00) = [0.32; 0.29], Max-Change = 0.0427
Stage 1 = 129, CDLL = -24836.1, AR(1.00) = [0.32; 0.30], Max-Change = 0.0381
Stage 1 = 130, CDLL = -24869.4, AR(1.00) = [0.30; 0.28], Max-Change = 0.0445
Stage 1 = 131, CDLL = -24835.3, AR(1.00) = [0.31; 0.30], Max-Change = 0.0469
Stage 1 = 132, CDLL = -24902.6, AR(1.00) = [0.30; 0.27], Max-Change = 0.0374
Stage 1 = 133, CDLL = -24765.6, AR(1.00) = [0.34; 0.28], Max-Change = 0.0410
Stage 1 = 134, CDLL = -24785.1, AR(1.00) = [0.31; 0.28], Max-Change = 0.0329
Stage 1 = 135, CDLL = -24857.7, AR(1.00) = [0.32; 0.30], Max-Change = 0.0330
Stage 1 = 136, CDLL = -24815.7, AR(1.00) = [0.32; 0.31], Max-Change = 0.0277
Stage 1 = 137, CDLL = -24712.5, AR(1.00) = [0.31; 0.28], Max-Change = 0.0275
Stage 1 = 138, CDLL = -24823.1, AR(1.00) = [0.32; 0.29], Max-Change = 0.0485
Stage 1 = 139, CDLL = -24766.8, AR(1.00) = [0.30; 0.29], Max-Change = 0.0440
Stage 1 = 140, CDLL = -24815.2, AR(1.00) = [0.33; 0.26], Max-Change = 0.0264
Stage 1 = 141, CDLL = -24760.8, AR(1.00) = [0.32; 0.29], Max-Change = 0.0432
Stage 1 = 142, CDLL = -24812.2, AR(1.00) = [0.31; 0.31], Max-Change = 0.0410
Stage 1 = 143, CDLL = -24778.2, AR(1.00) = [0.30; 0.27], Max-Change = 0.0404
Stage 1 = 144, CDLL = -24762.7, AR(1.00) = [0.30; 0.29], Max-Change = 0.0251
Stage 1 = 145, CDLL = -24764.0, AR(1.00) = [0.31; 0.28], Max-Change = 0.0507
Stage 1 = 146, CDLL = -24856.1, AR(1.00) = [0.32; 0.29], Max-Change = 0.0299
Stage 1 = 147, CDLL = -24926.3, AR(1.00) = [0.31; 0.32], Max-Change = 0.0810
Stage 1 = 148, CDLL = -24882.6, AR(1.00) = [0.31; 0.27], Max-Change = 0.0278
Stage 1 = 149, CDLL = -24907.0, AR(1.00) = [0.31; 0.32], Max-Change = 0.0372
Stage 1 = 150, CDLL = -24889.2, AR(0.65) = [0.40; 0.39], Max-Change = 0.0388
Stage 2 = 1, CDLL = -24839.1, AR(0.65) = [0.40; 0.38], Max-Change = 0.0274
Stage 2 = 2, CDLL = -24837.9, AR(0.65) = [0.39; 0.40], Max-Change = 0.0308
Stage 2 = 3, CDLL = -24835.6, AR(0.65) = [0.39; 0.38], Max-Change = 0.0455
Stage 2 = 4, CDLL = -24834.4, AR(0.65) = [0.39; 0.38], Max-Change = 0.0292
Stage 2 = 5, CDLL = -24730.3, AR(0.65) = [0.39; 0.39], Max-Change = 0.0250
Stage 2 = 6, CDLL = -24875.5, AR(0.65) = [0.42; 0.36], Max-Change = 0.0288
Stage 2 = 7, CDLL = -24934.2, AR(0.65) = [0.40; 0.37], Max-Change = 0.0254
Stage 2 = 8, CDLL = -24910.4, AR(0.65) = [0.40; 0.38], Max-Change = 0.0398
Stage 2 = 9, CDLL = -24903.2, AR(0.65) = [0.40; 0.37], Max-Change = 0.0308
Stage 2 = 10, CDLL = -24915.4, AR(0.65) = [0.42; 0.41], Max-Change = 0.0343
Stage 2 = 11, CDLL = -24831.3, AR(0.65) = [0.40; 0.38], Max-Change = 0.0507
Stage 2 = 12, CDLL = -24934.5, AR(0.65) = [0.41; 0.35], Max-Change = 0.0303
Stage 2 = 13, CDLL = -24869.1, AR(0.65) = [0.40; 0.37], Max-Change = 0.0368
Stage 2 = 14, CDLL = -24897.8, AR(0.65) = [0.41; 0.41], Max-Change = 0.0369
Stage 2 = 15, CDLL = -24842.1, AR(0.65) = [0.43; 0.38], Max-Change = 0.0298
Stage 2 = 16, CDLL = -24843.1, AR(0.65) = [0.43; 0.40], Max-Change = 0.0401
Stage 2 = 17, CDLL = -24927.6, AR(0.65) = [0.41; 0.41], Max-Change = 0.0428
Stage 2 = 18, CDLL = -24818.4, AR(0.65) = [0.43; 0.37], Max-Change = 0.0409
Stage 2 = 19, CDLL = -24858.6, AR(0.65) = [0.40; 0.38], Max-Change = 0.0384
Stage 2 = 20, CDLL = -24785.3, AR(0.65) = [0.42; 0.38], Max-Change = 0.0389
Stage 2 = 21, CDLL = -24794.8, AR(0.65) = [0.38; 0.40], Max-Change = 0.0351
Stage 2 = 22, CDLL = -24851.7, AR(0.65) = [0.40; 0.39], Max-Change = 0.0274
Stage 2 = 23, CDLL = -24843.8, AR(0.65) = [0.40; 0.36], Max-Change = 0.0390
Stage 2 = 24, CDLL = -24824.0, AR(0.65) = [0.40; 0.39], Max-Change = 0.0337
Stage 2 = 25, CDLL = -24840.2, AR(0.65) = [0.41; 0.37], Max-Change = 0.0322
Stage 2 = 26, CDLL = -24879.8, AR(0.65) = [0.41; 0.38], Max-Change = 0.0540
Stage 2 = 27, CDLL = -24857.0, AR(0.65) = [0.39; 0.40], Max-Change = 0.0337
Stage 2 = 28, CDLL = -24820.1, AR(0.65) = [0.43; 0.36], Max-Change = 0.0245
Stage 2 = 29, CDLL = -24735.8, AR(0.65) = [0.41; 0.40], Max-Change = 0.0353
Stage 2 = 30, CDLL = -24707.0, AR(0.65) = [0.40; 0.37], Max-Change = 0.0351
Stage 2 = 31, CDLL = -24771.6, AR(0.65) = [0.42; 0.38], Max-Change = 0.0221
Stage 2 = 32, CDLL = -24768.0, AR(0.65) = [0.40; 0.39], Max-Change = 0.0360
Stage 2 = 33, CDLL = -24736.9, AR(0.65) = [0.41; 0.38], Max-Change = 0.0580
Stage 2 = 34, CDLL = -24820.6, AR(0.65) = [0.40; 0.38], Max-Change = 0.0393
Stage 2 = 35, CDLL = -24801.1, AR(0.65) = [0.41; 0.39], Max-Change = 0.0259
Stage 2 = 36, CDLL = -24725.4, AR(0.65) = [0.40; 0.40], Max-Change = 0.0377
Stage 2 = 37, CDLL = -24749.7, AR(0.65) = [0.41; 0.38], Max-Change = 0.0447
Stage 2 = 38, CDLL = -24771.6, AR(0.65) = [0.40; 0.35], Max-Change = 0.0309
Stage 2 = 39, CDLL = -24694.2, AR(0.65) = [0.36; 0.38], Max-Change = 0.0425
Stage 2 = 40, CDLL = -24785.4, AR(0.65) = [0.38; 0.39], Max-Change = 0.0266
Stage 2 = 41, CDLL = -24728.7, AR(0.65) = [0.43; 0.35], Max-Change = 0.0595
Stage 2 = 42, CDLL = -24785.1, AR(0.65) = [0.41; 0.41], Max-Change = 0.0631
Stage 2 = 43, CDLL = -24795.0, AR(0.65) = [0.41; 0.38], Max-Change = 0.0266
Stage 2 = 44, CDLL = -24888.5, AR(0.65) = [0.41; 0.35], Max-Change = 0.0294
Stage 2 = 45, CDLL = -24876.1, AR(0.65) = [0.41; 0.38], Max-Change = 0.0404
Stage 2 = 46, CDLL = -24917.3, AR(0.65) = [0.40; 0.43], Max-Change = 0.0402
Stage 2 = 47, CDLL = -24863.1, AR(0.65) = [0.42; 0.39], Max-Change = 0.0263
Stage 2 = 48, CDLL = -24924.4, AR(0.65) = [0.38; 0.37], Max-Change = 0.0425
Stage 2 = 49, CDLL = -24820.3, AR(0.65) = [0.41; 0.39], Max-Change = 0.0324
Stage 2 = 50, CDLL = -24855.9, AR(0.65) = [0.40; 0.39], Max-Change = 0.0340
Stage 2 = 51, CDLL = -24926.7, AR(0.65) = [0.41; 0.39], Max-Change = 0.0393
Stage 2 = 52, CDLL = -24794.6, AR(0.65) = [0.42; 0.36], Max-Change = 0.0377
Stage 2 = 53, CDLL = -24754.6, AR(0.65) = [0.41; 0.36], Max-Change = 0.0538
Stage 2 = 54, CDLL = -24858.9, AR(0.65) = [0.40; 0.38], Max-Change = 0.0342
Stage 2 = 55, CDLL = -24804.7, AR(0.65) = [0.41; 0.35], Max-Change = 0.0249
Stage 2 = 56, CDLL = -24792.9, AR(0.65) = [0.40; 0.38], Max-Change = 0.0301
Stage 2 = 57, CDLL = -24817.3, AR(0.65) = [0.40; 0.37], Max-Change = 0.0345
Stage 2 = 58, CDLL = -24834.5, AR(0.65) = [0.40; 0.40], Max-Change = 0.0360
Stage 2 = 59, CDLL = -24735.7, AR(0.65) = [0.39; 0.39], Max-Change = 0.0411
Stage 2 = 60, CDLL = -24788.9, AR(0.65) = [0.42; 0.40], Max-Change = 0.0308
Stage 2 = 61, CDLL = -24783.6, AR(0.65) = [0.38; 0.38], Max-Change = 0.0407
Stage 2 = 62, CDLL = -24715.0, AR(0.65) = [0.42; 0.37], Max-Change = 0.0373
Stage 2 = 63, CDLL = -24686.4, AR(0.65) = [0.41; 0.39], Max-Change = 0.0357
Stage 2 = 64, CDLL = -24729.1, AR(0.65) = [0.40; 0.38], Max-Change = 0.0358
Stage 2 = 65, CDLL = -24724.5, AR(0.65) = [0.38; 0.35], Max-Change = 0.0316
Stage 2 = 66, CDLL = -24779.7, AR(0.65) = [0.39; 0.37], Max-Change = 0.0284
Stage 2 = 67, CDLL = -24957.6, AR(0.65) = [0.40; 0.38], Max-Change = 0.0370
Stage 2 = 68, CDLL = -24841.8, AR(0.65) = [0.38; 0.37], Max-Change = 0.0253
Stage 2 = 69, CDLL = -24871.3, AR(0.65) = [0.40; 0.39], Max-Change = 0.0331
Stage 2 = 70, CDLL = -24928.2, AR(0.65) = [0.41; 0.39], Max-Change = 0.0395
Stage 2 = 71, CDLL = -24875.1, AR(0.65) = [0.41; 0.36], Max-Change = 0.0281
Stage 2 = 72, CDLL = -24843.6, AR(0.65) = [0.41; 0.38], Max-Change = 0.0238
Stage 2 = 73, CDLL = -24873.3, AR(0.65) = [0.45; 0.36], Max-Change = 0.0272
Stage 2 = 74, CDLL = -24765.4, AR(0.65) = [0.41; 0.37], Max-Change = 0.0520
Stage 2 = 75, CDLL = -24767.9, AR(0.65) = [0.39; 0.38], Max-Change = 0.0252
Stage 2 = 76, CDLL = -24777.6, AR(0.65) = [0.38; 0.37], Max-Change = 0.0401
Stage 2 = 77, CDLL = -24831.0, AR(0.65) = [0.38; 0.39], Max-Change = 0.0453
Stage 2 = 78, CDLL = -24852.4, AR(0.65) = [0.40; 0.41], Max-Change = 0.0347
Stage 2 = 79, CDLL = -24784.6, AR(0.65) = [0.37; 0.36], Max-Change = 0.0410
Stage 2 = 80, CDLL = -24839.5, AR(0.65) = [0.41; 0.38], Max-Change = 0.0307
Stage 2 = 81, CDLL = -24898.0, AR(0.65) = [0.37; 0.41], Max-Change = 0.0411
Stage 2 = 82, CDLL = -24754.0, AR(0.65) = [0.40; 0.38], Max-Change = 0.0324
Stage 2 = 83, CDLL = -24868.4, AR(0.65) = [0.41; 0.38], Max-Change = 0.0353
Stage 2 = 84, CDLL = -24912.3, AR(0.65) = [0.42; 0.41], Max-Change = 0.0441
Stage 2 = 85, CDLL = -24792.2, AR(0.65) = [0.43; 0.39], Max-Change = 0.0374
Stage 2 = 86, CDLL = -24851.7, AR(0.65) = [0.42; 0.40], Max-Change = 0.0463
Stage 2 = 87, CDLL = -24845.1, AR(0.65) = [0.39; 0.38], Max-Change = 0.0281
Stage 2 = 88, CDLL = -24795.3, AR(0.65) = [0.40; 0.36], Max-Change = 0.0402
Stage 2 = 89, CDLL = -24868.7, AR(0.65) = [0.41; 0.39], Max-Change = 0.0384
Stage 2 = 90, CDLL = -24833.6, AR(0.65) = [0.40; 0.37], Max-Change = 0.0290
Stage 2 = 91, CDLL = -24867.0, AR(0.65) = [0.43; 0.39], Max-Change = 0.0401
Stage 2 = 92, CDLL = -24974.3, AR(0.65) = [0.40; 0.38], Max-Change = 0.0546
Stage 2 = 93, CDLL = -24873.0, AR(0.65) = [0.40; 0.36], Max-Change = 0.0300
Stage 2 = 94, CDLL = -25025.6, AR(0.65) = [0.40; 0.37], Max-Change = 0.0268
Stage 2 = 95, CDLL = -24874.4, AR(0.65) = [0.39; 0.37], Max-Change = 0.0401
Stage 2 = 96, CDLL = -24821.6, AR(0.65) = [0.43; 0.40], Max-Change = 0.0299
Stage 2 = 97, CDLL = -24811.6, AR(0.65) = [0.41; 0.39], Max-Change = 0.0613
Stage 2 = 98, CDLL = -24868.5, AR(0.65) = [0.41; 0.39], Max-Change = 0.0343
Stage 2 = 99, CDLL = -24761.6, AR(0.65) = [0.39; 0.38], Max-Change = 0.0483
Stage 2 = 100, CDLL = -24799.7, AR(0.65) = [0.38; 0.38], Max-Change = 0.0472
Stage 3 = 1, CDLL = -24906.5, AR(0.65) = [0.40; 0.38], gam = 0.0000, Max-Change = 0.0000
Stage 3 = 2, CDLL = -24904.4, AR(0.65) = [0.38; 0.36], gam = 0.1778, Max-Change = 0.0400
Stage 3 = 3, CDLL = -24863.5, AR(0.65) = [0.41; 0.38], gam = 0.1057, Max-Change = 0.0314
Stage 3 = 4, CDLL = -24884.9, AR(0.65) = [0.40; 0.40], gam = 0.0780, Max-Change = 0.0153
Stage 3 = 5, CDLL = -24792.5, AR(0.65) = [0.39; 0.40], gam = 0.0629, Max-Change = 0.0105
Stage 3 = 6, CDLL = -24763.4, AR(0.65) = [0.43; 0.38], gam = 0.0532, Max-Change = 0.0084
Stage 3 = 7, CDLL = -24800.6, AR(0.65) = [0.39; 0.37], gam = 0.0464, Max-Change = 0.0134
Stage 3 = 8, CDLL = -24828.3, AR(0.65) = [0.43; 0.41], gam = 0.0413, Max-Change = 0.0099
Stage 3 = 9, CDLL = -24789.9, AR(0.65) = [0.39; 0.37], gam = 0.0374, Max-Change = 0.0098
Stage 3 = 10, CDLL = -24755.4, AR(0.65) = [0.41; 0.37], gam = 0.0342, Max-Change = 0.0048
Stage 3 = 11, CDLL = -24839.9, AR(0.65) = [0.40; 0.40], gam = 0.0316, Max-Change = 0.0057
Stage 3 = 12, CDLL = -24842.9, AR(0.65) = [0.39; 0.38], gam = 0.0294, Max-Change = 0.0032
Stage 3 = 13, CDLL = -24891.3, AR(0.65) = [0.41; 0.38], gam = 0.0276, Max-Change = 0.0048
Stage 3 = 14, CDLL = -24876.3, AR(0.65) = [0.41; 0.36], gam = 0.0260, Max-Change = 0.0042
Stage 3 = 15, CDLL = -24970.4, AR(0.65) = [0.40; 0.38], gam = 0.0246, Max-Change = 0.0069
Stage 3 = 16, CDLL = -24875.9, AR(0.65) = [0.43; 0.40], gam = 0.0233, Max-Change = 0.0037
Stage 3 = 17, CDLL = -24861.6, AR(0.65) = [0.39; 0.37], gam = 0.0222, Max-Change = 0.0044
Stage 3 = 18, CDLL = -24856.8, AR(0.65) = [0.41; 0.38], gam = 0.0212, Max-Change = 0.0044
Stage 3 = 19, CDLL = -24830.6, AR(0.65) = [0.39; 0.41], gam = 0.0203, Max-Change = 0.0036
Stage 3 = 20, CDLL = -24843.9, AR(0.65) = [0.41; 0.36], gam = 0.0195, Max-Change = 0.0051
Stage 3 = 21, CDLL = -24900.7, AR(0.65) = [0.42; 0.41], gam = 0.0188, Max-Change = 0.0048
Stage 3 = 22, CDLL = -24832.8, AR(0.65) = [0.39; 0.40], gam = 0.0181, Max-Change = 0.0023
Stage 3 = 23, CDLL = -24870.4, AR(0.65) = [0.38; 0.36], gam = 0.0175, Max-Change = 0.0043
Stage 3 = 24, CDLL = -24880.1, AR(0.65) = [0.40; 0.39], gam = 0.0169, Max-Change = 0.0035
Stage 3 = 25, CDLL = -24870.3, AR(0.65) = [0.39; 0.37], gam = 0.0164, Max-Change = 0.0032
Stage 3 = 26, CDLL = -24857.3, AR(0.65) = [0.40; 0.39], gam = 0.0159, Max-Change = 0.0033
Stage 3 = 27, CDLL = -24802.7, AR(0.65) = [0.38; 0.37], gam = 0.0154, Max-Change = 0.0018
Stage 3 = 28, CDLL = -24795.2, AR(0.65) = [0.42; 0.39], gam = 0.0150, Max-Change = 0.0024
Stage 3 = 29, CDLL = -24718.0, AR(0.65) = [0.38; 0.37], gam = 0.0146, Max-Change = 0.0026
Stage 3 = 30, CDLL = -24717.4, AR(0.65) = [0.39; 0.39], gam = 0.0142, Max-Change = 0.0018
Stage 3 = 31, CDLL = -24853.7, AR(0.65) = [0.40; 0.36], gam = 0.0139, Max-Change = 0.0024
Stage 3 = 32, CDLL = -24827.6, AR(0.65) = [0.42; 0.40], gam = 0.0135, Max-Change = 0.0018
Stage 3 = 33, CDLL = -24779.2, AR(0.65) = [0.40; 0.39], gam = 0.0132, Max-Change = 0.0035
Stage 3 = 34, CDLL = -24765.1, AR(0.65) = [0.36; 0.40], gam = 0.0129, Max-Change = 0.0028
Stage 3 = 35, CDLL = -24865.5, AR(0.65) = [0.41; 0.38], gam = 0.0126, Max-Change = 0.0016
Stage 3 = 36, CDLL = -24786.8, AR(0.65) = [0.39; 0.38], gam = 0.0124, Max-Change = 0.0023
Stage 3 = 37, CDLL = -24815.4, AR(0.65) = [0.40; 0.37], gam = 0.0121, Max-Change = 0.0022
Stage 3 = 38, CDLL = -24888.5, AR(0.65) = [0.41; 0.37], gam = 0.0119, Max-Change = 0.0020
Stage 3 = 39, CDLL = -24848.7, AR(0.65) = [0.41; 0.41], gam = 0.0116, Max-Change = 0.0035
Stage 3 = 40, CDLL = -24853.0, AR(0.65) = [0.41; 0.37], gam = 0.0114, Max-Change = 0.0032
Stage 3 = 41, CDLL = -24775.5, AR(0.65) = [0.40; 0.39], gam = 0.0112, Max-Change = 0.0020
Stage 3 = 42, CDLL = -24787.7, AR(0.65) = [0.41; 0.38], gam = 0.0110, Max-Change = 0.0013
Stage 3 = 43, CDLL = -24840.6, AR(0.65) = [0.41; 0.38], gam = 0.0108, Max-Change = 0.0013
Stage 3 = 44, CDLL = -24885.6, AR(0.65) = [0.37; 0.40], gam = 0.0106, Max-Change = 0.0021
Stage 3 = 45, CDLL = -24879.8, AR(0.65) = [0.39; 0.38], gam = 0.0104, Max-Change = 0.0018
Stage 3 = 46, CDLL = -24817.4, AR(0.65) = [0.41; 0.36], gam = 0.0102, Max-Change = 0.0022
Stage 3 = 47, CDLL = -24800.6, AR(0.65) = [0.44; 0.39], gam = 0.0101, Max-Change = 0.0025
Stage 3 = 48, CDLL = -24852.2, AR(0.65) = [0.40; 0.41], gam = 0.0099, Max-Change = 0.0018
Stage 3 = 49, CDLL = -24867.0, AR(0.65) = [0.41; 0.39], gam = 0.0098, Max-Change = 0.0014
Stage 3 = 50, CDLL = -24859.2, AR(0.65) = [0.41; 0.40], gam = 0.0096, Max-Change = 0.0015
Stage 3 = 51, CDLL = -24873.9, AR(0.65) = [0.37; 0.40], gam = 0.0095, Max-Change = 0.0013
Stage 3 = 52, CDLL = -24838.7, AR(0.65) = [0.39; 0.37], gam = 0.0093, Max-Change = 0.0017
Stage 3 = 53, CDLL = -24839.1, AR(0.65) = [0.38; 0.39], gam = 0.0092, Max-Change = 0.0015
Stage 3 = 54, CDLL = -24760.6, AR(0.65) = [0.39; 0.38], gam = 0.0091, Max-Change = 0.0021
Stage 3 = 55, CDLL = -24763.1, AR(0.65) = [0.41; 0.40], gam = 0.0089, Max-Change = 0.0019
Stage 3 = 56, CDLL = -24842.5, AR(0.65) = [0.40; 0.38], gam = 0.0088, Max-Change = 0.0012
Stage 3 = 57, CDLL = -24846.0, AR(0.65) = [0.40; 0.38], gam = 0.0087, Max-Change = 0.0019
Stage 3 = 58, CDLL = -24879.3, AR(0.65) = [0.39; 0.36], gam = 0.0086, Max-Change = 0.0012
Stage 3 = 59, CDLL = -24767.5, AR(0.65) = [0.41; 0.38], gam = 0.0085, Max-Change = 0.0013
Stage 3 = 60, CDLL = -24860.9, AR(0.65) = [0.40; 0.40], gam = 0.0084, Max-Change = 0.0011
Stage 3 = 61, CDLL = -24864.8, AR(0.65) = [0.41; 0.38], gam = 0.0082, Max-Change = 0.0015
Stage 3 = 62, CDLL = -24811.3, AR(0.65) = [0.41; 0.39], gam = 0.0081, Max-Change = 0.0014
Stage 3 = 63, CDLL = -24861.0, AR(0.65) = [0.40; 0.40], gam = 0.0080, Max-Change = 0.0015
Stage 3 = 64, CDLL = -24862.8, AR(0.65) = [0.41; 0.38], gam = 0.0080, Max-Change = 0.0016
Stage 3 = 65, CDLL = -24887.7, AR(0.65) = [0.40; 0.40], gam = 0.0079, Max-Change = 0.0015
Stage 3 = 66, CDLL = -24921.7, AR(0.65) = [0.42; 0.39], gam = 0.0078, Max-Change = 0.0013
Stage 3 = 67, CDLL = -24951.2, AR(0.65) = [0.40; 0.39], gam = 0.0077, Max-Change = 0.0016
Stage 3 = 68, CDLL = -24806.2, AR(0.65) = [0.41; 0.37], gam = 0.0076, Max-Change = 0.0012
Stage 3 = 69, CDLL = -24828.9, AR(0.65) = [0.39; 0.39], gam = 0.0075, Max-Change = 0.0007
Stage 3 = 70, CDLL = -24843.1, AR(0.65) = [0.41; 0.38], gam = 0.0074, Max-Change = 0.0015
Stage 3 = 71, CDLL = -24867.3, AR(0.65) = [0.39; 0.37], gam = 0.0073, Max-Change = 0.0010
Stage 3 = 72, CDLL = -24855.5, AR(0.65) = [0.40; 0.39], gam = 0.0073, Max-Change = 0.0015
Stage 3 = 73, CDLL = -24820.3, AR(0.65) = [0.39; 0.40], gam = 0.0072, Max-Change = 0.0013
Stage 3 = 74, CDLL = -24847.8, AR(0.65) = [0.40; 0.38], gam = 0.0071, Max-Change = 0.0010
Stage 3 = 75, CDLL = -24892.1, AR(0.65) = [0.39; 0.39], gam = 0.0070, Max-Change = 0.0018
Stage 3 = 76, CDLL = -24838.7, AR(0.65) = [0.40; 0.38], gam = 0.0070, Max-Change = 0.0023
Stage 3 = 77, CDLL = -24937.4, AR(0.65) = [0.39; 0.38], gam = 0.0069, Max-Change = 0.0015
Stage 3 = 78, CDLL = -24779.4, AR(0.65) = [0.40; 0.38], gam = 0.0068, Max-Change = 0.0013
Stage 3 = 79, CDLL = -24788.0, AR(0.65) = [0.39; 0.37], gam = 0.0068, Max-Change = 0.0008
Stage 3 = 80, CDLL = -24823.1, AR(0.65) = [0.37; 0.37], gam = 0.0067, Max-Change = 0.0010
Stage 3 = 81, CDLL = -24827.4, AR(0.65) = [0.40; 0.39], gam = 0.0066, Max-Change = 0.0022
Stage 3 = 82, CDLL = -24883.2, AR(0.65) = [0.39; 0.42], gam = 0.0066, Max-Change = 0.0021
Stage 3 = 83, CDLL = -24841.0, AR(0.65) = [0.36; 0.40], gam = 0.0065, Max-Change = 0.0016
Stage 3 = 84, CDLL = -24695.1, AR(0.65) = [0.40; 0.38], gam = 0.0065, Max-Change = 0.0014
Stage 3 = 85, CDLL = -24801.2, AR(0.65) = [0.41; 0.38], gam = 0.0064, Max-Change = 0.0012
Stage 3 = 86, CDLL = -24932.3, AR(0.65) = [0.40; 0.41], gam = 0.0064, Max-Change = 0.0009
Stage 3 = 87, CDLL = -24864.8, AR(0.65) = [0.40; 0.38], gam = 0.0063, Max-Change = 0.0012
Stage 3 = 88, CDLL = -24915.8, AR(0.65) = [0.41; 0.38], gam = 0.0062, Max-Change = 0.0012
Stage 3 = 89, CDLL = -24810.8, AR(0.65) = [0.42; 0.37], gam = 0.0062, Max-Change = 0.0012
Stage 3 = 90, CDLL = -24941.2, AR(0.65) = [0.41; 0.37], gam = 0.0061, Max-Change = 0.0010
Stage 3 = 91, CDLL = -24855.8, AR(0.65) = [0.40; 0.38], gam = 0.0061, Max-Change = 0.0008
Stage 3 = 92, CDLL = -24809.6, AR(0.65) = [0.42; 0.38], gam = 0.0060, Max-Change = 0.0013
Stage 3 = 93, CDLL = -24857.7, AR(0.65) = [0.38; 0.38], gam = 0.0060, Max-Change = 0.0010
Stage 3 = 94, CDLL = -24839.2, AR(0.65) = [0.38; 0.38], gam = 0.0059, Max-Change = 0.0014
Stage 3 = 95, CDLL = -24835.8, AR(0.65) = [0.39; 0.38], gam = 0.0059, Max-Change = 0.0012
Stage 3 = 96, CDLL = -24826.0, AR(0.65) = [0.41; 0.37], gam = 0.0058, Max-Change = 0.0018
Stage 3 = 97, CDLL = -24778.9, AR(0.65) = [0.39; 0.36], gam = 0.0058, Max-Change = 0.0006
Stage 3 = 98, CDLL = -24754.5, AR(0.65) = [0.38; 0.37], gam = 0.0058, Max-Change = 0.0008
Stage 3 = 99, CDLL = -24846.1, AR(0.65) = [0.41; 0.40], gam = 0.0057, Max-Change = 0.0011
Stage 3 = 100, CDLL = -24850.4, AR(0.65) = [0.38; 0.37], gam = 0.0057, Max-Change = 0.0010
Stage 3 = 101, CDLL = -24900.1, AR(0.65) = [0.38; 0.40], gam = 0.0056, Max-Change = 0.0010
Stage 3 = 102, CDLL = -24781.0, AR(0.65) = [0.39; 0.37], gam = 0.0056, Max-Change = 0.0006

#> 
#> Calculating log-likelihood...
mod_metric <- multipleGroup(dat, model, group = group, invariance=c('slopes'), method = 'MHRM')
#> 
Stage 1 = 1, CDLL = -25538.2, AR(1.00) = [0.32; 0.34], Max-Change = 0.0602
Stage 1 = 2, CDLL = -25572.8, AR(1.00) = [0.36; 0.35], Max-Change = 0.0556
Stage 1 = 3, CDLL = -25409.5, AR(1.00) = [0.35; 0.37], Max-Change = 0.0444
Stage 1 = 4, CDLL = -25474.1, AR(1.00) = [0.34; 0.33], Max-Change = 0.0508
Stage 1 = 5, CDLL = -25347.3, AR(1.00) = [0.32; 0.33], Max-Change = 0.0365
Stage 1 = 6, CDLL = -25157.2, AR(1.00) = [0.35; 0.31], Max-Change = 0.0433
Stage 1 = 7, CDLL = -25138.7, AR(1.00) = [0.30; 0.35], Max-Change = 0.0317
Stage 1 = 8, CDLL = -25215.7, AR(1.00) = [0.30; 0.32], Max-Change = 0.0330
Stage 1 = 9, CDLL = -25189.7, AR(1.00) = [0.32; 0.31], Max-Change = 0.0324
Stage 1 = 10, CDLL = -25117.7, AR(1.00) = [0.34; 0.33], Max-Change = 0.0245
Stage 1 = 11, CDLL = -25081.9, AR(1.00) = [0.34; 0.31], Max-Change = 0.0334
Stage 1 = 12, CDLL = -25148.1, AR(1.00) = [0.33; 0.32], Max-Change = 0.0232
Stage 1 = 13, CDLL = -25171.7, AR(1.00) = [0.32; 0.32], Max-Change = 0.0176
Stage 1 = 14, CDLL = -25127.9, AR(1.00) = [0.29; 0.32], Max-Change = 0.0321
Stage 1 = 15, CDLL = -25092.6, AR(1.00) = [0.33; 0.31], Max-Change = 0.0257
Stage 1 = 16, CDLL = -25035.9, AR(1.00) = [0.34; 0.33], Max-Change = 0.0304
Stage 1 = 17, CDLL = -24972.6, AR(1.00) = [0.35; 0.37], Max-Change = 0.0253
Stage 1 = 18, CDLL = -25103.3, AR(1.00) = [0.32; 0.30], Max-Change = 0.0199
Stage 1 = 19, CDLL = -25109.0, AR(1.00) = [0.31; 0.33], Max-Change = 0.0240
Stage 1 = 20, CDLL = -25023.9, AR(1.00) = [0.33; 0.32], Max-Change = 0.0202
Stage 1 = 21, CDLL = -25008.0, AR(1.00) = [0.29; 0.30], Max-Change = 0.0239
Stage 1 = 22, CDLL = -24893.0, AR(1.00) = [0.33; 0.31], Max-Change = 0.0248
Stage 1 = 23, CDLL = -24879.5, AR(1.00) = [0.29; 0.32], Max-Change = 0.0311
Stage 1 = 24, CDLL = -24892.4, AR(1.00) = [0.29; 0.29], Max-Change = 0.0186
Stage 1 = 25, CDLL = -24905.1, AR(1.00) = [0.33; 0.33], Max-Change = 0.0301
Stage 1 = 26, CDLL = -24855.3, AR(1.00) = [0.32; 0.33], Max-Change = 0.0316
Stage 1 = 27, CDLL = -24941.9, AR(1.00) = [0.30; 0.32], Max-Change = 0.0253
Stage 1 = 28, CDLL = -24973.2, AR(1.00) = [0.30; 0.31], Max-Change = 0.0146
Stage 1 = 29, CDLL = -24879.2, AR(1.00) = [0.32; 0.33], Max-Change = 0.0204
Stage 1 = 30, CDLL = -24853.0, AR(1.00) = [0.29; 0.34], Max-Change = 0.0180
Stage 1 = 31, CDLL = -24912.8, AR(1.00) = [0.32; 0.31], Max-Change = 0.0305
Stage 1 = 32, CDLL = -24883.5, AR(1.00) = [0.28; 0.33], Max-Change = 0.0229
Stage 1 = 33, CDLL = -24835.2, AR(1.00) = [0.31; 0.29], Max-Change = 0.0400
Stage 1 = 34, CDLL = -24770.5, AR(1.00) = [0.31; 0.29], Max-Change = 0.0192
Stage 1 = 35, CDLL = -24758.8, AR(1.00) = [0.31; 0.31], Max-Change = 0.0343
Stage 1 = 36, CDLL = -24798.0, AR(1.00) = [0.33; 0.29], Max-Change = 0.0320
Stage 1 = 37, CDLL = -24835.8, AR(1.00) = [0.30; 0.32], Max-Change = 0.0285
Stage 1 = 38, CDLL = -24822.3, AR(1.00) = [0.33; 0.28], Max-Change = 0.0170
Stage 1 = 39, CDLL = -24861.0, AR(1.00) = [0.28; 0.28], Max-Change = 0.0337
Stage 1 = 40, CDLL = -24855.1, AR(1.00) = [0.31; 0.31], Max-Change = 0.0177
Stage 1 = 41, CDLL = -25012.6, AR(1.00) = [0.29; 0.30], Max-Change = 0.0206
Stage 1 = 42, CDLL = -24893.8, AR(1.00) = [0.31; 0.30], Max-Change = 0.0226
Stage 1 = 43, CDLL = -24963.2, AR(1.00) = [0.33; 0.31], Max-Change = 0.0167
Stage 1 = 44, CDLL = -24901.7, AR(1.00) = [0.30; 0.28], Max-Change = 0.0183
Stage 1 = 45, CDLL = -24888.1, AR(1.00) = [0.32; 0.31], Max-Change = 0.0259
Stage 1 = 46, CDLL = -24887.5, AR(1.00) = [0.31; 0.29], Max-Change = 0.0128
Stage 1 = 47, CDLL = -24801.3, AR(1.00) = [0.28; 0.30], Max-Change = 0.0273
Stage 1 = 48, CDLL = -24804.3, AR(1.00) = [0.30; 0.30], Max-Change = 0.0211
Stage 1 = 49, CDLL = -24792.8, AR(1.00) = [0.32; 0.30], Max-Change = 0.0283
Stage 1 = 50, CDLL = -24832.5, AR(1.00) = [0.29; 0.31], Max-Change = 0.0258
Stage 1 = 51, CDLL = -24840.3, AR(1.00) = [0.29; 0.27], Max-Change = 0.0327
Stage 1 = 52, CDLL = -24850.8, AR(1.00) = [0.30; 0.30], Max-Change = 0.0224
Stage 1 = 53, CDLL = -24825.3, AR(1.00) = [0.29; 0.32], Max-Change = 0.0153
Stage 1 = 54, CDLL = -24819.5, AR(1.00) = [0.30; 0.32], Max-Change = 0.0245
Stage 1 = 55, CDLL = -24772.9, AR(1.00) = [0.32; 0.30], Max-Change = 0.0285
Stage 1 = 56, CDLL = -24814.3, AR(1.00) = [0.28; 0.29], Max-Change = 0.0165
Stage 1 = 57, CDLL = -24802.0, AR(1.00) = [0.29; 0.33], Max-Change = 0.0225
Stage 1 = 58, CDLL = -24893.5, AR(1.00) = [0.28; 0.30], Max-Change = 0.0195
Stage 1 = 59, CDLL = -24883.8, AR(1.00) = [0.31; 0.28], Max-Change = 0.0179
Stage 1 = 60, CDLL = -24923.4, AR(1.00) = [0.30; 0.33], Max-Change = 0.0302
Stage 1 = 61, CDLL = -24902.4, AR(1.00) = [0.30; 0.32], Max-Change = 0.0240
Stage 1 = 62, CDLL = -24885.8, AR(1.00) = [0.30; 0.31], Max-Change = 0.0266
Stage 1 = 63, CDLL = -24816.5, AR(1.00) = [0.28; 0.31], Max-Change = 0.0268
Stage 1 = 64, CDLL = -24788.1, AR(1.00) = [0.31; 0.31], Max-Change = 0.0258
Stage 1 = 65, CDLL = -24931.6, AR(1.00) = [0.34; 0.34], Max-Change = 0.0243
Stage 1 = 66, CDLL = -24859.2, AR(1.00) = [0.31; 0.32], Max-Change = 0.0174
Stage 1 = 67, CDLL = -24775.9, AR(1.00) = [0.33; 0.30], Max-Change = 0.0205
Stage 1 = 68, CDLL = -24769.4, AR(1.00) = [0.31; 0.29], Max-Change = 0.0201
Stage 1 = 69, CDLL = -24881.4, AR(1.00) = [0.28; 0.31], Max-Change = 0.0533
Stage 1 = 70, CDLL = -24775.9, AR(1.00) = [0.31; 0.32], Max-Change = 0.0199
Stage 1 = 71, CDLL = -24833.9, AR(1.00) = [0.29; 0.29], Max-Change = 0.0250
Stage 1 = 72, CDLL = -24903.0, AR(1.00) = [0.31; 0.33], Max-Change = 0.0225
Stage 1 = 73, CDLL = -24813.7, AR(1.00) = [0.29; 0.30], Max-Change = 0.0267
Stage 1 = 74, CDLL = -24833.7, AR(1.00) = [0.33; 0.33], Max-Change = 0.0159
Stage 1 = 75, CDLL = -24836.1, AR(1.00) = [0.29; 0.30], Max-Change = 0.0182
Stage 1 = 76, CDLL = -24848.9, AR(1.00) = [0.30; 0.31], Max-Change = 0.0229
Stage 1 = 77, CDLL = -24875.2, AR(1.00) = [0.30; 0.32], Max-Change = 0.0242
Stage 1 = 78, CDLL = -24760.7, AR(1.00) = [0.29; 0.32], Max-Change = 0.0285
Stage 1 = 79, CDLL = -24789.2, AR(1.00) = [0.31; 0.32], Max-Change = 0.0240
Stage 1 = 80, CDLL = -24836.8, AR(1.00) = [0.32; 0.29], Max-Change = 0.0294
Stage 1 = 81, CDLL = -24915.0, AR(1.00) = [0.32; 0.29], Max-Change = 0.0171
Stage 1 = 82, CDLL = -24853.2, AR(1.00) = [0.32; 0.29], Max-Change = 0.0156
Stage 1 = 83, CDLL = -24844.4, AR(1.00) = [0.29; 0.32], Max-Change = 0.0214
Stage 1 = 84, CDLL = -24847.2, AR(1.00) = [0.32; 0.28], Max-Change = 0.0175
Stage 1 = 85, CDLL = -24779.0, AR(1.00) = [0.31; 0.33], Max-Change = 0.0262
Stage 1 = 86, CDLL = -24802.5, AR(1.00) = [0.30; 0.28], Max-Change = 0.0279
Stage 1 = 87, CDLL = -24874.9, AR(1.00) = [0.34; 0.30], Max-Change = 0.0195
Stage 1 = 88, CDLL = -24917.7, AR(1.00) = [0.30; 0.31], Max-Change = 0.0337
Stage 1 = 89, CDLL = -24866.2, AR(1.00) = [0.28; 0.33], Max-Change = 0.0234
Stage 1 = 90, CDLL = -24856.5, AR(1.00) = [0.31; 0.29], Max-Change = 0.0289
Stage 1 = 91, CDLL = -24849.8, AR(1.00) = [0.33; 0.31], Max-Change = 0.0167
Stage 1 = 92, CDLL = -24873.8, AR(1.00) = [0.30; 0.31], Max-Change = 0.0206
Stage 1 = 93, CDLL = -24858.6, AR(1.00) = [0.30; 0.30], Max-Change = 0.0106
Stage 1 = 94, CDLL = -24910.5, AR(1.00) = [0.30; 0.30], Max-Change = 0.0424
Stage 1 = 95, CDLL = -24837.0, AR(1.00) = [0.30; 0.32], Max-Change = 0.0174
Stage 1 = 96, CDLL = -24890.1, AR(1.00) = [0.30; 0.32], Max-Change = 0.0168
Stage 1 = 97, CDLL = -24879.9, AR(1.00) = [0.29; 0.30], Max-Change = 0.0176
Stage 1 = 98, CDLL = -24862.3, AR(1.00) = [0.29; 0.28], Max-Change = 0.0296
Stage 1 = 99, CDLL = -24898.3, AR(1.00) = [0.30; 0.33], Max-Change = 0.0258
Stage 1 = 100, CDLL = -24898.2, AR(1.00) = [0.30; 0.33], Max-Change = 0.0122
Stage 1 = 101, CDLL = -24940.0, AR(1.00) = [0.28; 0.30], Max-Change = 0.0307
Stage 1 = 102, CDLL = -24922.8, AR(1.00) = [0.32; 0.33], Max-Change = 0.0214
Stage 1 = 103, CDLL = -24882.0, AR(1.00) = [0.31; 0.31], Max-Change = 0.0319
Stage 1 = 104, CDLL = -24777.9, AR(1.00) = [0.30; 0.32], Max-Change = 0.0384
Stage 1 = 105, CDLL = -24723.6, AR(1.00) = [0.33; 0.32], Max-Change = 0.0263
Stage 1 = 106, CDLL = -24798.0, AR(1.00) = [0.30; 0.31], Max-Change = 0.0241
Stage 1 = 107, CDLL = -24789.6, AR(1.00) = [0.31; 0.32], Max-Change = 0.0285
Stage 1 = 108, CDLL = -24761.5, AR(1.00) = [0.31; 0.31], Max-Change = 0.0269
Stage 1 = 109, CDLL = -24815.0, AR(1.00) = [0.29; 0.30], Max-Change = 0.0253
Stage 1 = 110, CDLL = -24852.7, AR(1.00) = [0.30; 0.32], Max-Change = 0.0247
Stage 1 = 111, CDLL = -24811.0, AR(1.00) = [0.32; 0.27], Max-Change = 0.0192
Stage 1 = 112, CDLL = -24848.6, AR(1.00) = [0.30; 0.31], Max-Change = 0.0207
Stage 1 = 113, CDLL = -24956.7, AR(1.00) = [0.31; 0.30], Max-Change = 0.0181
Stage 1 = 114, CDLL = -24854.7, AR(1.00) = [0.31; 0.30], Max-Change = 0.0184
Stage 1 = 115, CDLL = -24964.5, AR(1.00) = [0.28; 0.29], Max-Change = 0.0219
Stage 1 = 116, CDLL = -24889.6, AR(1.00) = [0.33; 0.32], Max-Change = 0.0138
Stage 1 = 117, CDLL = -24928.1, AR(1.00) = [0.33; 0.29], Max-Change = 0.0198
Stage 1 = 118, CDLL = -24772.6, AR(1.00) = [0.30; 0.30], Max-Change = 0.0203
Stage 1 = 119, CDLL = -24811.7, AR(1.00) = [0.29; 0.28], Max-Change = 0.0233
Stage 1 = 120, CDLL = -24886.0, AR(1.00) = [0.29; 0.33], Max-Change = 0.0218
Stage 1 = 121, CDLL = -24871.4, AR(1.00) = [0.31; 0.29], Max-Change = 0.0253
Stage 1 = 122, CDLL = -24903.7, AR(1.00) = [0.29; 0.30], Max-Change = 0.0177
Stage 1 = 123, CDLL = -24930.5, AR(1.00) = [0.31; 0.30], Max-Change = 0.0142
Stage 1 = 124, CDLL = -24897.4, AR(1.00) = [0.26; 0.32], Max-Change = 0.0181
Stage 1 = 125, CDLL = -24947.5, AR(1.00) = [0.32; 0.28], Max-Change = 0.0279
Stage 1 = 126, CDLL = -24977.3, AR(1.00) = [0.31; 0.29], Max-Change = 0.0251
Stage 1 = 127, CDLL = -24923.2, AR(1.00) = [0.32; 0.30], Max-Change = 0.0152
Stage 1 = 128, CDLL = -24861.8, AR(1.00) = [0.30; 0.28], Max-Change = 0.0171
Stage 1 = 129, CDLL = -24886.0, AR(1.00) = [0.29; 0.31], Max-Change = 0.0185
Stage 1 = 130, CDLL = -24904.0, AR(1.00) = [0.29; 0.28], Max-Change = 0.0206
Stage 1 = 131, CDLL = -24809.0, AR(1.00) = [0.28; 0.31], Max-Change = 0.0165
Stage 1 = 132, CDLL = -24885.5, AR(1.00) = [0.28; 0.31], Max-Change = 0.0222
Stage 1 = 133, CDLL = -24819.7, AR(1.00) = [0.30; 0.27], Max-Change = 0.0181
Stage 1 = 134, CDLL = -24928.4, AR(1.00) = [0.33; 0.30], Max-Change = 0.0308
Stage 1 = 135, CDLL = -24904.1, AR(1.00) = [0.30; 0.30], Max-Change = 0.0201
Stage 1 = 136, CDLL = -24852.9, AR(1.00) = [0.31; 0.33], Max-Change = 0.0198
Stage 1 = 137, CDLL = -24820.6, AR(1.00) = [0.30; 0.30], Max-Change = 0.0216
Stage 1 = 138, CDLL = -24891.3, AR(1.00) = [0.32; 0.30], Max-Change = 0.0272
Stage 1 = 139, CDLL = -24846.9, AR(1.00) = [0.30; 0.32], Max-Change = 0.0205
Stage 1 = 140, CDLL = -24815.1, AR(1.00) = [0.32; 0.28], Max-Change = 0.0160
Stage 1 = 141, CDLL = -24853.8, AR(1.00) = [0.30; 0.30], Max-Change = 0.0271
Stage 1 = 142, CDLL = -24819.4, AR(1.00) = [0.30; 0.34], Max-Change = 0.0137
Stage 1 = 143, CDLL = -24849.3, AR(1.00) = [0.30; 0.30], Max-Change = 0.0107
Stage 1 = 144, CDLL = -24790.4, AR(1.00) = [0.30; 0.31], Max-Change = 0.0176
Stage 1 = 145, CDLL = -24809.5, AR(1.00) = [0.29; 0.29], Max-Change = 0.0271
Stage 1 = 146, CDLL = -24908.8, AR(1.00) = [0.30; 0.30], Max-Change = 0.0208
Stage 1 = 147, CDLL = -24948.2, AR(1.00) = [0.29; 0.32], Max-Change = 0.0286
Stage 1 = 148, CDLL = -24930.3, AR(1.00) = [0.29; 0.28], Max-Change = 0.0181
Stage 1 = 149, CDLL = -24885.7, AR(1.00) = [0.29; 0.34], Max-Change = 0.0215
Stage 1 = 150, CDLL = -24848.8, AR(0.61) = [0.42; 0.41], Max-Change = 0.0196
Stage 2 = 1, CDLL = -24850.3, AR(0.61) = [0.41; 0.41], Max-Change = 0.0151
Stage 2 = 2, CDLL = -24816.0, AR(0.61) = [0.39; 0.45], Max-Change = 0.0218
Stage 2 = 3, CDLL = -24817.0, AR(0.61) = [0.37; 0.41], Max-Change = 0.0253
Stage 2 = 4, CDLL = -24865.3, AR(0.61) = [0.38; 0.42], Max-Change = 0.0201
Stage 2 = 5, CDLL = -24767.1, AR(0.61) = [0.38; 0.41], Max-Change = 0.0179
Stage 2 = 6, CDLL = -24860.7, AR(0.61) = [0.41; 0.37], Max-Change = 0.0144
Stage 2 = 7, CDLL = -24828.9, AR(0.61) = [0.41; 0.38], Max-Change = 0.0141
Stage 2 = 8, CDLL = -24893.9, AR(0.61) = [0.40; 0.40], Max-Change = 0.0208
Stage 2 = 9, CDLL = -24883.6, AR(0.61) = [0.40; 0.41], Max-Change = 0.0124
Stage 2 = 10, CDLL = -24874.8, AR(0.61) = [0.42; 0.43], Max-Change = 0.0194
Stage 2 = 11, CDLL = -24821.7, AR(0.61) = [0.40; 0.42], Max-Change = 0.0172
Stage 2 = 12, CDLL = -25005.0, AR(0.61) = [0.42; 0.40], Max-Change = 0.0254
Stage 2 = 13, CDLL = -24974.6, AR(0.61) = [0.39; 0.39], Max-Change = 0.0225
Stage 2 = 14, CDLL = -24989.2, AR(0.61) = [0.42; 0.44], Max-Change = 0.0228
Stage 2 = 15, CDLL = -24856.8, AR(0.61) = [0.41; 0.40], Max-Change = 0.0310
Stage 2 = 16, CDLL = -24898.9, AR(0.61) = [0.43; 0.42], Max-Change = 0.0388
Stage 2 = 17, CDLL = -24955.8, AR(0.61) = [0.41; 0.42], Max-Change = 0.0211
Stage 2 = 18, CDLL = -24840.9, AR(0.61) = [0.42; 0.39], Max-Change = 0.0142
Stage 2 = 19, CDLL = -24882.9, AR(0.61) = [0.38; 0.39], Max-Change = 0.0228
Stage 2 = 20, CDLL = -24888.0, AR(0.61) = [0.42; 0.42], Max-Change = 0.0273
Stage 2 = 21, CDLL = -24863.3, AR(0.61) = [0.40; 0.41], Max-Change = 0.0402
Stage 2 = 22, CDLL = -24941.1, AR(0.61) = [0.42; 0.42], Max-Change = 0.0296
Stage 2 = 23, CDLL = -24895.7, AR(0.61) = [0.41; 0.41], Max-Change = 0.0256
Stage 2 = 24, CDLL = -24899.5, AR(0.61) = [0.40; 0.41], Max-Change = 0.0389
Stage 2 = 25, CDLL = -24881.3, AR(0.61) = [0.41; 0.41], Max-Change = 0.0127
Stage 2 = 26, CDLL = -24937.9, AR(0.61) = [0.43; 0.41], Max-Change = 0.0248
Stage 2 = 27, CDLL = -24977.9, AR(0.61) = [0.39; 0.46], Max-Change = 0.0446
Stage 2 = 28, CDLL = -24933.6, AR(0.61) = [0.39; 0.40], Max-Change = 0.0215
Stage 2 = 29, CDLL = -24915.3, AR(0.61) = [0.41; 0.42], Max-Change = 0.0230
Stage 2 = 30, CDLL = -24874.4, AR(0.61) = [0.42; 0.39], Max-Change = 0.0198
Stage 2 = 31, CDLL = -24863.8, AR(0.61) = [0.42; 0.42], Max-Change = 0.0142
Stage 2 = 32, CDLL = -24899.0, AR(0.61) = [0.40; 0.41], Max-Change = 0.0202
Stage 2 = 33, CDLL = -24836.9, AR(0.61) = [0.39; 0.41], Max-Change = 0.0441
Stage 2 = 34, CDLL = -24917.1, AR(0.61) = [0.40; 0.41], Max-Change = 0.0276
Stage 2 = 35, CDLL = -24906.9, AR(0.61) = [0.41; 0.39], Max-Change = 0.0145
Stage 2 = 36, CDLL = -24779.1, AR(0.61) = [0.41; 0.41], Max-Change = 0.0263
Stage 2 = 37, CDLL = -24813.1, AR(0.61) = [0.40; 0.42], Max-Change = 0.0201
Stage 2 = 38, CDLL = -24762.9, AR(0.61) = [0.40; 0.39], Max-Change = 0.0193
Stage 2 = 39, CDLL = -24701.4, AR(0.61) = [0.38; 0.40], Max-Change = 0.0273
Stage 2 = 40, CDLL = -24843.1, AR(0.61) = [0.38; 0.40], Max-Change = 0.0223
Stage 2 = 41, CDLL = -24746.4, AR(0.61) = [0.42; 0.38], Max-Change = 0.0262
Stage 2 = 42, CDLL = -24832.4, AR(0.61) = [0.42; 0.42], Max-Change = 0.0329
Stage 2 = 43, CDLL = -24856.4, AR(0.61) = [0.42; 0.41], Max-Change = 0.0240
Stage 2 = 44, CDLL = -24876.5, AR(0.61) = [0.41; 0.37], Max-Change = 0.0166
Stage 2 = 45, CDLL = -24912.2, AR(0.61) = [0.43; 0.41], Max-Change = 0.0283
Stage 2 = 46, CDLL = -24926.1, AR(0.61) = [0.41; 0.43], Max-Change = 0.0325
Stage 2 = 47, CDLL = -24832.1, AR(0.61) = [0.40; 0.43], Max-Change = 0.0273
Stage 2 = 48, CDLL = -24872.1, AR(0.61) = [0.39; 0.41], Max-Change = 0.0236
Stage 2 = 49, CDLL = -24839.4, AR(0.61) = [0.41; 0.42], Max-Change = 0.0310
Stage 2 = 50, CDLL = -24908.7, AR(0.61) = [0.39; 0.40], Max-Change = 0.0176
Stage 2 = 51, CDLL = -24940.3, AR(0.61) = [0.40; 0.41], Max-Change = 0.0152
Stage 2 = 52, CDLL = -24808.6, AR(0.61) = [0.42; 0.40], Max-Change = 0.0246
Stage 2 = 53, CDLL = -24833.2, AR(0.61) = [0.41; 0.40], Max-Change = 0.0227
Stage 2 = 54, CDLL = -24862.5, AR(0.61) = [0.40; 0.41], Max-Change = 0.0188
Stage 2 = 55, CDLL = -24786.2, AR(0.61) = [0.41; 0.38], Max-Change = 0.0203
Stage 2 = 56, CDLL = -24896.8, AR(0.61) = [0.41; 0.41], Max-Change = 0.0197
Stage 2 = 57, CDLL = -24879.0, AR(0.61) = [0.40; 0.41], Max-Change = 0.0246
Stage 2 = 58, CDLL = -24889.7, AR(0.61) = [0.39; 0.42], Max-Change = 0.0160
Stage 2 = 59, CDLL = -24751.4, AR(0.61) = [0.41; 0.42], Max-Change = 0.0277
Stage 2 = 60, CDLL = -24787.8, AR(0.61) = [0.41; 0.41], Max-Change = 0.0216
Stage 2 = 61, CDLL = -24839.4, AR(0.61) = [0.39; 0.41], Max-Change = 0.0315
Stage 2 = 62, CDLL = -24879.0, AR(0.61) = [0.42; 0.42], Max-Change = 0.0404
Stage 2 = 63, CDLL = -24862.8, AR(0.61) = [0.42; 0.42], Max-Change = 0.0293
Stage 2 = 64, CDLL = -24859.4, AR(0.61) = [0.43; 0.39], Max-Change = 0.0267
Stage 2 = 65, CDLL = -24778.0, AR(0.61) = [0.39; 0.41], Max-Change = 0.0246
Stage 2 = 66, CDLL = -24842.4, AR(0.61) = [0.41; 0.41], Max-Change = 0.0153
Stage 2 = 67, CDLL = -24942.1, AR(0.61) = [0.40; 0.41], Max-Change = 0.0272
Stage 2 = 68, CDLL = -24830.6, AR(0.61) = [0.39; 0.41], Max-Change = 0.0182
Stage 2 = 69, CDLL = -24841.1, AR(0.61) = [0.42; 0.41], Max-Change = 0.0182
Stage 2 = 70, CDLL = -24870.9, AR(0.61) = [0.38; 0.43], Max-Change = 0.0171
Stage 2 = 71, CDLL = -24822.3, AR(0.61) = [0.40; 0.41], Max-Change = 0.0230
Stage 2 = 72, CDLL = -24801.2, AR(0.61) = [0.42; 0.40], Max-Change = 0.0163
Stage 2 = 73, CDLL = -24900.6, AR(0.61) = [0.44; 0.40], Max-Change = 0.0182
Stage 2 = 74, CDLL = -24827.2, AR(0.61) = [0.42; 0.41], Max-Change = 0.0223
Stage 2 = 75, CDLL = -24786.8, AR(0.61) = [0.38; 0.41], Max-Change = 0.0229
Stage 2 = 76, CDLL = -24784.6, AR(0.61) = [0.38; 0.40], Max-Change = 0.0210
Stage 2 = 77, CDLL = -24855.4, AR(0.61) = [0.39; 0.41], Max-Change = 0.0210
Stage 2 = 78, CDLL = -24905.7, AR(0.61) = [0.40; 0.44], Max-Change = 0.0235
Stage 2 = 79, CDLL = -24863.3, AR(0.61) = [0.40; 0.40], Max-Change = 0.0204
Stage 2 = 80, CDLL = -24816.3, AR(0.61) = [0.40; 0.40], Max-Change = 0.0273
Stage 2 = 81, CDLL = -24842.1, AR(0.61) = [0.40; 0.42], Max-Change = 0.0164
Stage 2 = 82, CDLL = -24798.7, AR(0.61) = [0.41; 0.42], Max-Change = 0.0122
Stage 2 = 83, CDLL = -24866.0, AR(0.61) = [0.41; 0.40], Max-Change = 0.0173
Stage 2 = 84, CDLL = -24839.3, AR(0.61) = [0.41; 0.44], Max-Change = 0.0154
Stage 2 = 85, CDLL = -24767.6, AR(0.61) = [0.41; 0.39], Max-Change = 0.0420
Stage 2 = 86, CDLL = -24818.0, AR(0.61) = [0.41; 0.41], Max-Change = 0.0345
Stage 2 = 87, CDLL = -24845.5, AR(0.61) = [0.41; 0.40], Max-Change = 0.0169
Stage 2 = 88, CDLL = -24847.0, AR(0.61) = [0.40; 0.39], Max-Change = 0.0182
Stage 2 = 89, CDLL = -24898.7, AR(0.61) = [0.41; 0.40], Max-Change = 0.0172
Stage 2 = 90, CDLL = -24869.1, AR(0.61) = [0.41; 0.41], Max-Change = 0.0225
Stage 2 = 91, CDLL = -24956.8, AR(0.61) = [0.43; 0.41], Max-Change = 0.0239
Stage 2 = 92, CDLL = -24960.6, AR(0.61) = [0.39; 0.40], Max-Change = 0.0172
Stage 2 = 93, CDLL = -24917.6, AR(0.61) = [0.39; 0.39], Max-Change = 0.0171
Stage 2 = 94, CDLL = -24952.2, AR(0.61) = [0.41; 0.43], Max-Change = 0.0267
Stage 2 = 95, CDLL = -24855.9, AR(0.61) = [0.42; 0.39], Max-Change = 0.0205
Stage 2 = 96, CDLL = -24794.4, AR(0.61) = [0.45; 0.41], Max-Change = 0.0246
Stage 2 = 97, CDLL = -24846.5, AR(0.61) = [0.43; 0.41], Max-Change = 0.0335
Stage 2 = 98, CDLL = -24936.2, AR(0.61) = [0.42; 0.42], Max-Change = 0.0183
Stage 2 = 99, CDLL = -24861.0, AR(0.61) = [0.39; 0.41], Max-Change = 0.0198
Stage 2 = 100, CDLL = -24878.1, AR(0.61) = [0.39; 0.40], Max-Change = 0.0259
Stage 3 = 1, CDLL = -24939.9, AR(0.61) = [0.40; 0.41], gam = 0.0000, Max-Change = 0.0000
Stage 3 = 2, CDLL = -24835.7, AR(0.61) = [0.39; 0.40], gam = 0.1778, Max-Change = 0.0167
Stage 3 = 3, CDLL = -24796.2, AR(0.61) = [0.40; 0.39], gam = 0.1057, Max-Change = 0.0103
Stage 3 = 4, CDLL = -24840.8, AR(0.61) = [0.39; 0.42], gam = 0.0780, Max-Change = 0.0132
Stage 3 = 5, CDLL = -24805.1, AR(0.61) = [0.38; 0.42], gam = 0.0629, Max-Change = 0.0049
Stage 3 = 6, CDLL = -24733.4, AR(0.61) = [0.40; 0.39], gam = 0.0532, Max-Change = 0.0077
Stage 3 = 7, CDLL = -24804.5, AR(0.61) = [0.41; 0.40], gam = 0.0464, Max-Change = 0.0073
Stage 3 = 8, CDLL = -24788.7, AR(0.61) = [0.43; 0.43], gam = 0.0413, Max-Change = 0.0037
Stage 3 = 9, CDLL = -24851.4, AR(0.61) = [0.41; 0.41], gam = 0.0374, Max-Change = 0.0040
Stage 3 = 10, CDLL = -24741.9, AR(0.61) = [0.41; 0.38], gam = 0.0342, Max-Change = 0.0062
Stage 3 = 11, CDLL = -24811.3, AR(0.61) = [0.38; 0.41], gam = 0.0316, Max-Change = 0.0037
Stage 3 = 12, CDLL = -24847.4, AR(0.61) = [0.38; 0.41], gam = 0.0294, Max-Change = 0.0038
Stage 3 = 13, CDLL = -24831.5, AR(0.61) = [0.41; 0.40], gam = 0.0276, Max-Change = 0.0025
Stage 3 = 14, CDLL = -24782.9, AR(0.61) = [0.41; 0.42], gam = 0.0260, Max-Change = 0.0025
Stage 3 = 15, CDLL = -24869.9, AR(0.61) = [0.39; 0.41], gam = 0.0246, Max-Change = 0.0033
Stage 3 = 16, CDLL = -24859.3, AR(0.61) = [0.42; 0.41], gam = 0.0233, Max-Change = 0.0024
Stage 3 = 17, CDLL = -24799.4, AR(0.61) = [0.39; 0.41], gam = 0.0222, Max-Change = 0.0026
Stage 3 = 18, CDLL = -24878.5, AR(0.61) = [0.40; 0.40], gam = 0.0212, Max-Change = 0.0023
Stage 3 = 19, CDLL = -24784.3, AR(0.61) = [0.41; 0.42], gam = 0.0203, Max-Change = 0.0022
Stage 3 = 20, CDLL = -24955.4, AR(0.61) = [0.40; 0.39], gam = 0.0195, Max-Change = 0.0026
Stage 3 = 21, CDLL = -24923.9, AR(0.61) = [0.43; 0.42], gam = 0.0188, Max-Change = 0.0019
Stage 3 = 22, CDLL = -24893.5, AR(0.61) = [0.38; 0.41], gam = 0.0181, Max-Change = 0.0021
Stage 3 = 23, CDLL = -24828.8, AR(0.61) = [0.41; 0.39], gam = 0.0175, Max-Change = 0.0022
Stage 3 = 24, CDLL = -24855.4, AR(0.61) = [0.39; 0.41], gam = 0.0169, Max-Change = 0.0024
Stage 3 = 25, CDLL = -24851.4, AR(0.61) = [0.43; 0.41], gam = 0.0164, Max-Change = 0.0026
Stage 3 = 26, CDLL = -24807.5, AR(0.61) = [0.40; 0.41], gam = 0.0159, Max-Change = 0.0018
Stage 3 = 27, CDLL = -24843.6, AR(0.61) = [0.38; 0.41], gam = 0.0154, Max-Change = 0.0014
Stage 3 = 28, CDLL = -24794.2, AR(0.61) = [0.41; 0.42], gam = 0.0150, Max-Change = 0.0016
Stage 3 = 29, CDLL = -24808.8, AR(0.61) = [0.40; 0.41], gam = 0.0146, Max-Change = 0.0019
Stage 3 = 30, CDLL = -24802.9, AR(0.61) = [0.40; 0.41], gam = 0.0142, Max-Change = 0.0021
Stage 3 = 31, CDLL = -24944.2, AR(0.61) = [0.42; 0.38], gam = 0.0139, Max-Change = 0.0015
Stage 3 = 32, CDLL = -24864.5, AR(0.61) = [0.41; 0.41], gam = 0.0135, Max-Change = 0.0017
Stage 3 = 33, CDLL = -24724.6, AR(0.61) = [0.40; 0.42], gam = 0.0132, Max-Change = 0.0011
Stage 3 = 34, CDLL = -24757.4, AR(0.61) = [0.38; 0.42], gam = 0.0129, Max-Change = 0.0016
Stage 3 = 35, CDLL = -24905.7, AR(0.61) = [0.42; 0.41], gam = 0.0126, Max-Change = 0.0019
Stage 3 = 36, CDLL = -24899.1, AR(0.61) = [0.39; 0.43], gam = 0.0124, Max-Change = 0.0020
Stage 3 = 37, CDLL = -24887.2, AR(0.61) = [0.40; 0.41], gam = 0.0121, Max-Change = 0.0012
Stage 3 = 38, CDLL = -24886.0, AR(0.61) = [0.39; 0.42], gam = 0.0119, Max-Change = 0.0014
Stage 3 = 39, CDLL = -24844.1, AR(0.61) = [0.42; 0.40], gam = 0.0116, Max-Change = 0.0010
Stage 3 = 40, CDLL = -24788.4, AR(0.61) = [0.40; 0.37], gam = 0.0114, Max-Change = 0.0016
Stage 3 = 41, CDLL = -24782.5, AR(0.61) = [0.41; 0.42], gam = 0.0112, Max-Change = 0.0013
Stage 3 = 42, CDLL = -24822.5, AR(0.61) = [0.41; 0.40], gam = 0.0110, Max-Change = 0.0013
Stage 3 = 43, CDLL = -24848.1, AR(0.61) = [0.39; 0.41], gam = 0.0108, Max-Change = 0.0011
Stage 3 = 44, CDLL = -24876.7, AR(0.61) = [0.39; 0.43], gam = 0.0106, Max-Change = 0.0015
Stage 3 = 45, CDLL = -24865.6, AR(0.61) = [0.41; 0.40], gam = 0.0104, Max-Change = 0.0018
Stage 3 = 46, CDLL = -24840.7, AR(0.61) = [0.40; 0.41], gam = 0.0102, Max-Change = 0.0009
Stage 3 = 47, CDLL = -24871.7, AR(0.61) = [0.44; 0.41], gam = 0.0101, Max-Change = 0.0017
Stage 3 = 48, CDLL = -24899.3, AR(0.61) = [0.41; 0.42], gam = 0.0099, Max-Change = 0.0014
Stage 3 = 49, CDLL = -24871.4, AR(0.61) = [0.41; 0.42], gam = 0.0098, Max-Change = 0.0008
Stage 3 = 50, CDLL = -24898.2, AR(0.61) = [0.41; 0.43], gam = 0.0096, Max-Change = 0.0011
Stage 3 = 51, CDLL = -24886.4, AR(0.61) = [0.38; 0.41], gam = 0.0095, Max-Change = 0.0010
Stage 3 = 52, CDLL = -24810.9, AR(0.61) = [0.39; 0.40], gam = 0.0093, Max-Change = 0.0011
Stage 3 = 53, CDLL = -24812.2, AR(0.61) = [0.38; 0.41], gam = 0.0092, Max-Change = 0.0010
Stage 3 = 54, CDLL = -24772.4, AR(0.61) = [0.39; 0.41], gam = 0.0091, Max-Change = 0.0010
Stage 3 = 55, CDLL = -24755.5, AR(0.61) = [0.41; 0.42], gam = 0.0089, Max-Change = 0.0012
Stage 3 = 56, CDLL = -24913.5, AR(0.61) = [0.40; 0.41], gam = 0.0088, Max-Change = 0.0010
Stage 3 = 57, CDLL = -24898.8, AR(0.61) = [0.41; 0.40], gam = 0.0087, Max-Change = 0.0012
Stage 3 = 58, CDLL = -24949.7, AR(0.61) = [0.37; 0.41], gam = 0.0086, Max-Change = 0.0020
Stage 3 = 59, CDLL = -24802.3, AR(0.61) = [0.40; 0.40], gam = 0.0085, Max-Change = 0.0013
Stage 3 = 60, CDLL = -24839.9, AR(0.61) = [0.40; 0.44], gam = 0.0084, Max-Change = 0.0010
Stage 3 = 61, CDLL = -24945.1, AR(0.61) = [0.40; 0.41], gam = 0.0082, Max-Change = 0.0009
Stage 3 = 62, CDLL = -24873.6, AR(0.61) = [0.41; 0.42], gam = 0.0081, Max-Change = 0.0008
Stage 3 = 63, CDLL = -24864.0, AR(0.61) = [0.40; 0.42], gam = 0.0080, Max-Change = 0.0010
Stage 3 = 64, CDLL = -24895.3, AR(0.61) = [0.40; 0.40], gam = 0.0080, Max-Change = 0.0009
Stage 3 = 65, CDLL = -24933.8, AR(0.61) = [0.39; 0.42], gam = 0.0079, Max-Change = 0.0017
Stage 3 = 66, CDLL = -24908.1, AR(0.61) = [0.42; 0.43], gam = 0.0078, Max-Change = 0.0011
Stage 3 = 67, CDLL = -25000.3, AR(0.61) = [0.38; 0.41], gam = 0.0077, Max-Change = 0.0011
Stage 3 = 68, CDLL = -24915.4, AR(0.61) = [0.42; 0.41], gam = 0.0076, Max-Change = 0.0011
Stage 3 = 69, CDLL = -24895.0, AR(0.61) = [0.40; 0.40], gam = 0.0075, Max-Change = 0.0007
Stage 3 = 70, CDLL = -24926.7, AR(0.61) = [0.39; 0.39], gam = 0.0074, Max-Change = 0.0010
Stage 3 = 71, CDLL = -24850.9, AR(0.61) = [0.40; 0.40], gam = 0.0073, Max-Change = 0.0005

#> 
#> Calculating log-likelihood...
mod_fullconstrain <- multipleGroup(dat, model, group = group, method = 'MHRM',
                             invariance=c('slopes', 'intercepts'))
#> 
Stage 1 = 1, CDLL = -25538.2, AR(1.00) = [0.32; 0.34], Max-Change = 0.0462
Stage 1 = 2, CDLL = -25574.1, AR(1.00) = [0.35; 0.34], Max-Change = 0.0312
Stage 1 = 3, CDLL = -25413.8, AR(1.00) = [0.35; 0.37], Max-Change = 0.0468
Stage 1 = 4, CDLL = -25488.9, AR(1.00) = [0.34; 0.32], Max-Change = 0.0362
Stage 1 = 5, CDLL = -25375.0, AR(1.00) = [0.33; 0.33], Max-Change = 0.0366
Stage 1 = 6, CDLL = -25206.3, AR(1.00) = [0.34; 0.32], Max-Change = 0.0420
Stage 1 = 7, CDLL = -25220.3, AR(1.00) = [0.32; 0.36], Max-Change = 0.0307
Stage 1 = 8, CDLL = -25277.7, AR(1.00) = [0.29; 0.33], Max-Change = 0.0387
Stage 1 = 9, CDLL = -25190.3, AR(1.00) = [0.32; 0.30], Max-Change = 0.0375
Stage 1 = 10, CDLL = -25124.8, AR(1.00) = [0.34; 0.34], Max-Change = 0.0293
Stage 1 = 11, CDLL = -25090.9, AR(1.00) = [0.33; 0.32], Max-Change = 0.0436
Stage 1 = 12, CDLL = -25116.1, AR(1.00) = [0.31; 0.31], Max-Change = 0.0336
Stage 1 = 13, CDLL = -25115.5, AR(1.00) = [0.32; 0.31], Max-Change = 0.0242
Stage 1 = 14, CDLL = -25119.1, AR(1.00) = [0.30; 0.30], Max-Change = 0.0422
Stage 1 = 15, CDLL = -25057.5, AR(1.00) = [0.32; 0.31], Max-Change = 0.0259
Stage 1 = 16, CDLL = -25089.6, AR(1.00) = [0.34; 0.32], Max-Change = 0.0239
Stage 1 = 17, CDLL = -25004.3, AR(1.00) = [0.34; 0.35], Max-Change = 0.0230
Stage 1 = 18, CDLL = -25065.9, AR(1.00) = [0.31; 0.28], Max-Change = 0.0316
Stage 1 = 19, CDLL = -25101.3, AR(1.00) = [0.32; 0.33], Max-Change = 0.0240
Stage 1 = 20, CDLL = -25065.4, AR(1.00) = [0.33; 0.30], Max-Change = 0.0363
Stage 1 = 21, CDLL = -25087.3, AR(1.00) = [0.30; 0.30], Max-Change = 0.0179
Stage 1 = 22, CDLL = -24977.2, AR(1.00) = [0.29; 0.32], Max-Change = 0.0254
Stage 1 = 23, CDLL = -24934.5, AR(1.00) = [0.29; 0.30], Max-Change = 0.0253
Stage 1 = 24, CDLL = -24947.3, AR(1.00) = [0.29; 0.32], Max-Change = 0.0183
Stage 1 = 25, CDLL = -24925.8, AR(1.00) = [0.30; 0.30], Max-Change = 0.0200
Stage 1 = 26, CDLL = -24878.1, AR(1.00) = [0.29; 0.32], Max-Change = 0.0310
Stage 1 = 27, CDLL = -24901.6, AR(1.00) = [0.29; 0.31], Max-Change = 0.0170
Stage 1 = 28, CDLL = -24923.5, AR(1.00) = [0.31; 0.29], Max-Change = 0.0156
Stage 1 = 29, CDLL = -24786.3, AR(1.00) = [0.32; 0.31], Max-Change = 0.0182
Stage 1 = 30, CDLL = -24811.1, AR(1.00) = [0.29; 0.32], Max-Change = 0.0207
Stage 1 = 31, CDLL = -24813.9, AR(1.00) = [0.29; 0.29], Max-Change = 0.0165
Stage 1 = 32, CDLL = -24938.7, AR(1.00) = [0.27; 0.32], Max-Change = 0.0149
Stage 1 = 33, CDLL = -24895.3, AR(1.00) = [0.31; 0.29], Max-Change = 0.0216
Stage 1 = 34, CDLL = -24903.6, AR(1.00) = [0.30; 0.30], Max-Change = 0.0224
Stage 1 = 35, CDLL = -24893.5, AR(1.00) = [0.30; 0.31], Max-Change = 0.0145
Stage 1 = 36, CDLL = -24882.7, AR(1.00) = [0.31; 0.30], Max-Change = 0.0270
Stage 1 = 37, CDLL = -24949.2, AR(1.00) = [0.29; 0.31], Max-Change = 0.0279
Stage 1 = 38, CDLL = -24925.5, AR(1.00) = [0.32; 0.30], Max-Change = 0.0149
Stage 1 = 39, CDLL = -24849.6, AR(1.00) = [0.29; 0.28], Max-Change = 0.0259
Stage 1 = 40, CDLL = -24916.7, AR(1.00) = [0.32; 0.30], Max-Change = 0.0210
Stage 1 = 41, CDLL = -25008.3, AR(1.00) = [0.31; 0.29], Max-Change = 0.0206
Stage 1 = 42, CDLL = -24945.3, AR(1.00) = [0.31; 0.27], Max-Change = 0.0219
Stage 1 = 43, CDLL = -24965.3, AR(1.00) = [0.30; 0.30], Max-Change = 0.0140
Stage 1 = 44, CDLL = -24889.9, AR(1.00) = [0.30; 0.29], Max-Change = 0.0169
Stage 1 = 45, CDLL = -24859.6, AR(1.00) = [0.32; 0.32], Max-Change = 0.0216
Stage 1 = 46, CDLL = -24879.8, AR(1.00) = [0.30; 0.30], Max-Change = 0.0183
Stage 1 = 47, CDLL = -24957.1, AR(1.00) = [0.31; 0.32], Max-Change = 0.0198
Stage 1 = 48, CDLL = -24965.1, AR(1.00) = [0.31; 0.29], Max-Change = 0.0179
Stage 1 = 49, CDLL = -24877.1, AR(1.00) = [0.30; 0.30], Max-Change = 0.0232
Stage 1 = 50, CDLL = -24874.7, AR(1.00) = [0.28; 0.30], Max-Change = 0.0250
Stage 1 = 51, CDLL = -24887.1, AR(1.00) = [0.29; 0.30], Max-Change = 0.0163
Stage 1 = 52, CDLL = -24899.5, AR(1.00) = [0.30; 0.29], Max-Change = 0.0236
Stage 1 = 53, CDLL = -24944.4, AR(1.00) = [0.32; 0.31], Max-Change = 0.0200
Stage 1 = 54, CDLL = -24967.0, AR(1.00) = [0.30; 0.30], Max-Change = 0.0197
Stage 1 = 55, CDLL = -24888.1, AR(1.00) = [0.30; 0.31], Max-Change = 0.0172
Stage 1 = 56, CDLL = -24825.3, AR(1.00) = [0.28; 0.30], Max-Change = 0.0158
Stage 1 = 57, CDLL = -24783.8, AR(1.00) = [0.30; 0.30], Max-Change = 0.0193
Stage 1 = 58, CDLL = -24890.8, AR(1.00) = [0.28; 0.31], Max-Change = 0.0190
Stage 1 = 59, CDLL = -24821.4, AR(1.00) = [0.31; 0.29], Max-Change = 0.0220
Stage 1 = 60, CDLL = -24833.9, AR(1.00) = [0.27; 0.33], Max-Change = 0.0230
Stage 1 = 61, CDLL = -24879.6, AR(1.00) = [0.33; 0.31], Max-Change = 0.0186
Stage 1 = 62, CDLL = -24870.9, AR(1.00) = [0.32; 0.31], Max-Change = 0.0296
Stage 1 = 63, CDLL = -24874.5, AR(1.00) = [0.30; 0.32], Max-Change = 0.0231
Stage 1 = 64, CDLL = -24856.0, AR(1.00) = [0.34; 0.30], Max-Change = 0.0481
Stage 1 = 65, CDLL = -24823.4, AR(1.00) = [0.32; 0.32], Max-Change = 0.0297
Stage 1 = 66, CDLL = -24749.4, AR(1.00) = [0.28; 0.31], Max-Change = 0.0308
Stage 1 = 67, CDLL = -24794.2, AR(1.00) = [0.31; 0.31], Max-Change = 0.0308
Stage 1 = 68, CDLL = -24824.1, AR(1.00) = [0.30; 0.30], Max-Change = 0.0180
Stage 1 = 69, CDLL = -24868.1, AR(1.00) = [0.28; 0.32], Max-Change = 0.0390
Stage 1 = 70, CDLL = -24843.6, AR(1.00) = [0.30; 0.31], Max-Change = 0.0172
Stage 1 = 71, CDLL = -24829.6, AR(1.00) = [0.27; 0.29], Max-Change = 0.0234
Stage 1 = 72, CDLL = -24912.5, AR(1.00) = [0.33; 0.32], Max-Change = 0.0193
Stage 1 = 73, CDLL = -24903.7, AR(1.00) = [0.29; 0.28], Max-Change = 0.0254
Stage 1 = 74, CDLL = -24894.4, AR(1.00) = [0.31; 0.31], Max-Change = 0.0181
Stage 1 = 75, CDLL = -24885.4, AR(1.00) = [0.30; 0.31], Max-Change = 0.0215
Stage 1 = 76, CDLL = -24821.5, AR(1.00) = [0.30; 0.30], Max-Change = 0.0160
Stage 1 = 77, CDLL = -24844.8, AR(1.00) = [0.31; 0.29], Max-Change = 0.0166
Stage 1 = 78, CDLL = -24763.5, AR(1.00) = [0.31; 0.31], Max-Change = 0.0258
Stage 1 = 79, CDLL = -24833.2, AR(1.00) = [0.30; 0.31], Max-Change = 0.0360
Stage 1 = 80, CDLL = -24828.2, AR(1.00) = [0.32; 0.32], Max-Change = 0.0239
Stage 1 = 81, CDLL = -24876.3, AR(1.00) = [0.30; 0.30], Max-Change = 0.0197
Stage 1 = 82, CDLL = -24851.4, AR(1.00) = [0.30; 0.30], Max-Change = 0.0104
Stage 1 = 83, CDLL = -24838.3, AR(1.00) = [0.31; 0.30], Max-Change = 0.0318
Stage 1 = 84, CDLL = -24857.8, AR(1.00) = [0.33; 0.29], Max-Change = 0.0146
Stage 1 = 85, CDLL = -24770.3, AR(1.00) = [0.31; 0.29], Max-Change = 0.0212
Stage 1 = 86, CDLL = -24754.2, AR(1.00) = [0.29; 0.30], Max-Change = 0.0155
Stage 1 = 87, CDLL = -24883.9, AR(1.00) = [0.32; 0.29], Max-Change = 0.0236
Stage 1 = 88, CDLL = -24825.6, AR(1.00) = [0.29; 0.30], Max-Change = 0.0220
Stage 1 = 89, CDLL = -24872.4, AR(1.00) = [0.29; 0.32], Max-Change = 0.0236
Stage 1 = 90, CDLL = -24906.2, AR(1.00) = [0.32; 0.30], Max-Change = 0.0348
Stage 1 = 91, CDLL = -24886.9, AR(1.00) = [0.32; 0.31], Max-Change = 0.0215
Stage 1 = 92, CDLL = -24895.0, AR(1.00) = [0.31; 0.30], Max-Change = 0.0211
Stage 1 = 93, CDLL = -24850.6, AR(1.00) = [0.31; 0.27], Max-Change = 0.0137
Stage 1 = 94, CDLL = -24878.1, AR(1.00) = [0.28; 0.29], Max-Change = 0.0191
Stage 1 = 95, CDLL = -24831.0, AR(1.00) = [0.27; 0.31], Max-Change = 0.0173
Stage 1 = 96, CDLL = -24849.5, AR(1.00) = [0.31; 0.32], Max-Change = 0.0278
Stage 1 = 97, CDLL = -24887.2, AR(1.00) = [0.29; 0.30], Max-Change = 0.0195
Stage 1 = 98, CDLL = -24852.3, AR(1.00) = [0.30; 0.30], Max-Change = 0.0296
Stage 1 = 99, CDLL = -24913.1, AR(1.00) = [0.29; 0.33], Max-Change = 0.0235
Stage 1 = 100, CDLL = -24889.9, AR(1.00) = [0.29; 0.32], Max-Change = 0.0242
Stage 1 = 101, CDLL = -24882.3, AR(1.00) = [0.31; 0.29], Max-Change = 0.0243
Stage 1 = 102, CDLL = -24898.3, AR(1.00) = [0.31; 0.31], Max-Change = 0.0204
Stage 1 = 103, CDLL = -24825.3, AR(1.00) = [0.29; 0.29], Max-Change = 0.0289
Stage 1 = 104, CDLL = -24789.7, AR(1.00) = [0.30; 0.30], Max-Change = 0.0258
Stage 1 = 105, CDLL = -24718.0, AR(1.00) = [0.33; 0.30], Max-Change = 0.0236
Stage 1 = 106, CDLL = -24729.4, AR(1.00) = [0.29; 0.29], Max-Change = 0.0155
Stage 1 = 107, CDLL = -24753.1, AR(1.00) = [0.31; 0.33], Max-Change = 0.0178
Stage 1 = 108, CDLL = -24656.3, AR(1.00) = [0.31; 0.30], Max-Change = 0.0196
Stage 1 = 109, CDLL = -24737.6, AR(1.00) = [0.28; 0.29], Max-Change = 0.0361
Stage 1 = 110, CDLL = -24819.3, AR(1.00) = [0.26; 0.29], Max-Change = 0.0260
Stage 1 = 111, CDLL = -24813.7, AR(1.00) = [0.32; 0.29], Max-Change = 0.0187
Stage 1 = 112, CDLL = -24894.0, AR(1.00) = [0.31; 0.29], Max-Change = 0.0257
Stage 1 = 113, CDLL = -24826.5, AR(1.00) = [0.32; 0.32], Max-Change = 0.0156
Stage 1 = 114, CDLL = -24835.4, AR(1.00) = [0.31; 0.32], Max-Change = 0.0224
Stage 1 = 115, CDLL = -24824.5, AR(1.00) = [0.27; 0.28], Max-Change = 0.0232
Stage 1 = 116, CDLL = -24843.7, AR(1.00) = [0.30; 0.30], Max-Change = 0.0190
Stage 1 = 117, CDLL = -24955.4, AR(1.00) = [0.31; 0.31], Max-Change = 0.0199
Stage 1 = 118, CDLL = -24847.1, AR(1.00) = [0.31; 0.29], Max-Change = 0.0265
Stage 1 = 119, CDLL = -24890.1, AR(1.00) = [0.31; 0.30], Max-Change = 0.0220
Stage 1 = 120, CDLL = -24885.0, AR(1.00) = [0.30; 0.32], Max-Change = 0.0149
Stage 1 = 121, CDLL = -24890.4, AR(1.00) = [0.31; 0.29], Max-Change = 0.0185
Stage 1 = 122, CDLL = -24964.0, AR(1.00) = [0.30; 0.31], Max-Change = 0.0219
Stage 1 = 123, CDLL = -24972.6, AR(1.00) = [0.30; 0.27], Max-Change = 0.0183
Stage 1 = 124, CDLL = -24886.2, AR(1.00) = [0.27; 0.30], Max-Change = 0.0118
Stage 1 = 125, CDLL = -25002.6, AR(1.00) = [0.30; 0.27], Max-Change = 0.0267
Stage 1 = 126, CDLL = -25007.7, AR(1.00) = [0.32; 0.30], Max-Change = 0.0155
Stage 1 = 127, CDLL = -24984.0, AR(1.00) = [0.32; 0.31], Max-Change = 0.0256
Stage 1 = 128, CDLL = -24954.1, AR(1.00) = [0.33; 0.30], Max-Change = 0.0168
Stage 1 = 129, CDLL = -24838.2, AR(1.00) = [0.32; 0.30], Max-Change = 0.0207
Stage 1 = 130, CDLL = -24879.2, AR(1.00) = [0.30; 0.28], Max-Change = 0.0146
Stage 1 = 131, CDLL = -24834.5, AR(1.00) = [0.29; 0.32], Max-Change = 0.0292
Stage 1 = 132, CDLL = -24888.3, AR(1.00) = [0.26; 0.30], Max-Change = 0.0255
Stage 1 = 133, CDLL = -24815.9, AR(1.00) = [0.29; 0.28], Max-Change = 0.0188
Stage 1 = 134, CDLL = -24848.8, AR(1.00) = [0.30; 0.29], Max-Change = 0.0227
Stage 1 = 135, CDLL = -24904.4, AR(1.00) = [0.30; 0.31], Max-Change = 0.0214
Stage 1 = 136, CDLL = -24895.1, AR(1.00) = [0.31; 0.32], Max-Change = 0.0237
Stage 1 = 137, CDLL = -24903.0, AR(1.00) = [0.30; 0.31], Max-Change = 0.0221
Stage 1 = 138, CDLL = -24917.0, AR(1.00) = [0.31; 0.29], Max-Change = 0.0202
Stage 1 = 139, CDLL = -24941.4, AR(1.00) = [0.28; 0.30], Max-Change = 0.0217
Stage 1 = 140, CDLL = -24903.9, AR(1.00) = [0.30; 0.29], Max-Change = 0.0157
Stage 1 = 141, CDLL = -24956.8, AR(1.00) = [0.30; 0.31], Max-Change = 0.0199
Stage 1 = 142, CDLL = -24890.6, AR(1.00) = [0.31; 0.33], Max-Change = 0.0221
Stage 1 = 143, CDLL = -24891.5, AR(1.00) = [0.31; 0.32], Max-Change = 0.0198
Stage 1 = 144, CDLL = -24901.0, AR(1.00) = [0.29; 0.29], Max-Change = 0.0221
Stage 1 = 145, CDLL = -24864.1, AR(1.00) = [0.30; 0.28], Max-Change = 0.0226
Stage 1 = 146, CDLL = -24902.8, AR(1.00) = [0.30; 0.31], Max-Change = 0.0144
Stage 1 = 147, CDLL = -24857.9, AR(1.00) = [0.28; 0.33], Max-Change = 0.0213
Stage 1 = 148, CDLL = -24913.7, AR(1.00) = [0.29; 0.29], Max-Change = 0.0244
Stage 1 = 149, CDLL = -24894.2, AR(1.00) = [0.28; 0.32], Max-Change = 0.0204
Stage 1 = 150, CDLL = -24837.3, AR(0.60) = [0.41; 0.41], Max-Change = 0.0209
Stage 2 = 1, CDLL = -24958.8, AR(0.60) = [0.39; 0.42], Max-Change = 0.0223
Stage 2 = 2, CDLL = -24955.3, AR(0.60) = [0.38; 0.42], Max-Change = 0.0211
Stage 2 = 3, CDLL = -24891.8, AR(0.60) = [0.37; 0.42], Max-Change = 0.0243
Stage 2 = 4, CDLL = -24879.1, AR(0.60) = [0.40; 0.41], Max-Change = 0.0182
Stage 2 = 5, CDLL = -24782.0, AR(0.60) = [0.41; 0.42], Max-Change = 0.0212
Stage 2 = 6, CDLL = -24939.4, AR(0.60) = [0.41; 0.36], Max-Change = 0.0169
Stage 2 = 7, CDLL = -24977.2, AR(0.60) = [0.40; 0.37], Max-Change = 0.0222
Stage 2 = 8, CDLL = -24976.7, AR(0.60) = [0.40; 0.38], Max-Change = 0.0175
Stage 2 = 9, CDLL = -24941.6, AR(0.60) = [0.40; 0.40], Max-Change = 0.0117
Stage 2 = 10, CDLL = -24952.9, AR(0.60) = [0.43; 0.43], Max-Change = 0.0244
Stage 2 = 11, CDLL = -24851.9, AR(0.60) = [0.40; 0.42], Max-Change = 0.0132
Stage 2 = 12, CDLL = -24961.2, AR(0.60) = [0.42; 0.39], Max-Change = 0.0295
Stage 2 = 13, CDLL = -24890.9, AR(0.60) = [0.40; 0.40], Max-Change = 0.0264
Stage 2 = 14, CDLL = -24892.4, AR(0.60) = [0.41; 0.44], Max-Change = 0.0170
Stage 2 = 15, CDLL = -24978.9, AR(0.60) = [0.43; 0.40], Max-Change = 0.0299
Stage 2 = 16, CDLL = -24873.6, AR(0.60) = [0.43; 0.42], Max-Change = 0.0272
Stage 2 = 17, CDLL = -24910.9, AR(0.60) = [0.41; 0.41], Max-Change = 0.0218
Stage 2 = 18, CDLL = -24781.5, AR(0.60) = [0.40; 0.41], Max-Change = 0.0182
Stage 2 = 19, CDLL = -24902.7, AR(0.60) = [0.39; 0.41], Max-Change = 0.0183
Stage 2 = 20, CDLL = -24868.8, AR(0.60) = [0.41; 0.42], Max-Change = 0.0232
Stage 2 = 21, CDLL = -24788.5, AR(0.60) = [0.38; 0.41], Max-Change = 0.0264
Stage 2 = 22, CDLL = -24869.6, AR(0.60) = [0.40; 0.40], Max-Change = 0.0202
Stage 2 = 23, CDLL = -24855.1, AR(0.60) = [0.41; 0.40], Max-Change = 0.0174
Stage 2 = 24, CDLL = -24825.0, AR(0.60) = [0.42; 0.41], Max-Change = 0.0290
Stage 2 = 25, CDLL = -24848.3, AR(0.60) = [0.40; 0.39], Max-Change = 0.0104
Stage 2 = 26, CDLL = -24878.4, AR(0.60) = [0.42; 0.41], Max-Change = 0.0218
Stage 2 = 27, CDLL = -24894.8, AR(0.60) = [0.37; 0.42], Max-Change = 0.0276
Stage 2 = 28, CDLL = -24901.4, AR(0.60) = [0.40; 0.39], Max-Change = 0.0135
Stage 2 = 29, CDLL = -24816.5, AR(0.60) = [0.41; 0.41], Max-Change = 0.0214
Stage 2 = 30, CDLL = -24833.9, AR(0.60) = [0.42; 0.38], Max-Change = 0.0140
Stage 2 = 31, CDLL = -24879.2, AR(0.60) = [0.42; 0.41], Max-Change = 0.0195
Stage 2 = 32, CDLL = -24824.8, AR(0.60) = [0.38; 0.42], Max-Change = 0.0220
Stage 2 = 33, CDLL = -24852.6, AR(0.60) = [0.41; 0.40], Max-Change = 0.0296
Stage 2 = 34, CDLL = -24875.6, AR(0.60) = [0.41; 0.40], Max-Change = 0.0229
Stage 2 = 35, CDLL = -24822.1, AR(0.60) = [0.38; 0.42], Max-Change = 0.0161
Stage 2 = 36, CDLL = -24682.6, AR(0.60) = [0.37; 0.40], Max-Change = 0.0216
Stage 2 = 37, CDLL = -24752.7, AR(0.60) = [0.41; 0.40], Max-Change = 0.0149
Stage 2 = 38, CDLL = -24740.2, AR(0.60) = [0.39; 0.40], Max-Change = 0.0214
Stage 2 = 39, CDLL = -24683.5, AR(0.60) = [0.38; 0.40], Max-Change = 0.0296
Stage 2 = 40, CDLL = -24880.0, AR(0.60) = [0.38; 0.41], Max-Change = 0.0155
Stage 2 = 41, CDLL = -24744.7, AR(0.60) = [0.41; 0.38], Max-Change = 0.0166
Stage 2 = 42, CDLL = -24838.2, AR(0.60) = [0.40; 0.42], Max-Change = 0.0368
Stage 2 = 43, CDLL = -24832.7, AR(0.60) = [0.42; 0.39], Max-Change = 0.0242
Stage 2 = 44, CDLL = -24842.7, AR(0.60) = [0.41; 0.40], Max-Change = 0.0273
Stage 2 = 45, CDLL = -24860.1, AR(0.60) = [0.43; 0.42], Max-Change = 0.0292
Stage 2 = 46, CDLL = -24875.2, AR(0.60) = [0.40; 0.43], Max-Change = 0.0323
Stage 2 = 47, CDLL = -24815.9, AR(0.60) = [0.40; 0.43], Max-Change = 0.0143
Stage 2 = 48, CDLL = -24857.5, AR(0.60) = [0.39; 0.40], Max-Change = 0.0187
Stage 2 = 49, CDLL = -24754.4, AR(0.60) = [0.41; 0.41], Max-Change = 0.0243
Stage 2 = 50, CDLL = -24856.6, AR(0.60) = [0.39; 0.40], Max-Change = 0.0199
Stage 2 = 51, CDLL = -24930.8, AR(0.60) = [0.40; 0.40], Max-Change = 0.0243
Stage 2 = 52, CDLL = -24838.7, AR(0.60) = [0.41; 0.41], Max-Change = 0.0252
Stage 2 = 53, CDLL = -24825.7, AR(0.60) = [0.39; 0.40], Max-Change = 0.0202
Stage 2 = 54, CDLL = -24862.2, AR(0.60) = [0.40; 0.41], Max-Change = 0.0118
Stage 2 = 55, CDLL = -24746.6, AR(0.60) = [0.40; 0.39], Max-Change = 0.0160
Stage 2 = 56, CDLL = -24859.0, AR(0.60) = [0.41; 0.40], Max-Change = 0.0221
Stage 2 = 57, CDLL = -24885.7, AR(0.60) = [0.41; 0.41], Max-Change = 0.0160
Stage 2 = 58, CDLL = -24834.2, AR(0.60) = [0.38; 0.41], Max-Change = 0.0171
Stage 2 = 59, CDLL = -24744.7, AR(0.60) = [0.38; 0.39], Max-Change = 0.0196
Stage 2 = 60, CDLL = -24775.7, AR(0.60) = [0.42; 0.43], Max-Change = 0.0193
Stage 2 = 61, CDLL = -24761.5, AR(0.60) = [0.38; 0.42], Max-Change = 0.0238
Stage 2 = 62, CDLL = -24835.5, AR(0.60) = [0.40; 0.40], Max-Change = 0.0498
Stage 2 = 63, CDLL = -24818.0, AR(0.60) = [0.40; 0.41], Max-Change = 0.0380
Stage 2 = 64, CDLL = -24787.1, AR(0.60) = [0.40; 0.40], Max-Change = 0.0254
Stage 2 = 65, CDLL = -24699.3, AR(0.60) = [0.37; 0.41], Max-Change = 0.0113
Stage 2 = 66, CDLL = -24779.6, AR(0.60) = [0.40; 0.40], Max-Change = 0.0181
Stage 2 = 67, CDLL = -24887.8, AR(0.60) = [0.41; 0.40], Max-Change = 0.0214
Stage 2 = 68, CDLL = -24866.2, AR(0.60) = [0.39; 0.40], Max-Change = 0.0208
Stage 2 = 69, CDLL = -24810.9, AR(0.60) = [0.40; 0.42], Max-Change = 0.0169
Stage 2 = 70, CDLL = -24826.3, AR(0.60) = [0.41; 0.39], Max-Change = 0.0105
Stage 2 = 71, CDLL = -24785.6, AR(0.60) = [0.42; 0.40], Max-Change = 0.0187
Stage 2 = 72, CDLL = -24755.7, AR(0.60) = [0.42; 0.41], Max-Change = 0.0166
Stage 2 = 73, CDLL = -24814.3, AR(0.60) = [0.44; 0.39], Max-Change = 0.0153
Stage 2 = 74, CDLL = -24726.4, AR(0.60) = [0.39; 0.41], Max-Change = 0.0185
Stage 2 = 75, CDLL = -24721.4, AR(0.60) = [0.37; 0.39], Max-Change = 0.0314
Stage 2 = 76, CDLL = -24738.0, AR(0.60) = [0.39; 0.37], Max-Change = 0.0178
Stage 2 = 77, CDLL = -24784.4, AR(0.60) = [0.39; 0.42], Max-Change = 0.0231
Stage 2 = 78, CDLL = -24867.5, AR(0.60) = [0.40; 0.42], Max-Change = 0.0235
Stage 2 = 79, CDLL = -24735.6, AR(0.60) = [0.39; 0.39], Max-Change = 0.0242
Stage 2 = 80, CDLL = -24737.4, AR(0.60) = [0.39; 0.39], Max-Change = 0.0181
Stage 2 = 81, CDLL = -24685.5, AR(0.60) = [0.38; 0.42], Max-Change = 0.0204
Stage 2 = 82, CDLL = -24685.4, AR(0.60) = [0.40; 0.41], Max-Change = 0.0214
Stage 2 = 83, CDLL = -24768.1, AR(0.60) = [0.39; 0.40], Max-Change = 0.0164
Stage 2 = 84, CDLL = -24848.7, AR(0.60) = [0.41; 0.45], Max-Change = 0.0184
Stage 2 = 85, CDLL = -24780.2, AR(0.60) = [0.41; 0.40], Max-Change = 0.0259
Stage 2 = 86, CDLL = -24818.1, AR(0.60) = [0.40; 0.41], Max-Change = 0.0249
Stage 2 = 87, CDLL = -24775.3, AR(0.60) = [0.41; 0.40], Max-Change = 0.0174
Stage 2 = 88, CDLL = -24773.8, AR(0.60) = [0.40; 0.39], Max-Change = 0.0201
Stage 2 = 89, CDLL = -24806.9, AR(0.60) = [0.40; 0.39], Max-Change = 0.0339
Stage 2 = 90, CDLL = -24826.3, AR(0.60) = [0.40; 0.39], Max-Change = 0.0264
Stage 2 = 91, CDLL = -24865.5, AR(0.60) = [0.41; 0.40], Max-Change = 0.0203
Stage 2 = 92, CDLL = -24922.3, AR(0.60) = [0.41; 0.40], Max-Change = 0.0191
Stage 2 = 93, CDLL = -24932.2, AR(0.60) = [0.38; 0.39], Max-Change = 0.0231
Stage 2 = 94, CDLL = -24932.5, AR(0.60) = [0.38; 0.40], Max-Change = 0.0241
Stage 2 = 95, CDLL = -24870.1, AR(0.60) = [0.40; 0.38], Max-Change = 0.0169
Stage 2 = 96, CDLL = -24843.8, AR(0.60) = [0.41; 0.41], Max-Change = 0.0333
Stage 2 = 97, CDLL = -24841.0, AR(0.60) = [0.41; 0.40], Max-Change = 0.0246
Stage 2 = 98, CDLL = -24893.6, AR(0.60) = [0.41; 0.42], Max-Change = 0.0137
Stage 2 = 99, CDLL = -24796.9, AR(0.60) = [0.40; 0.41], Max-Change = 0.0204
Stage 2 = 100, CDLL = -24839.1, AR(0.60) = [0.37; 0.40], Max-Change = 0.0226
Stage 3 = 1, CDLL = -24942.2, AR(0.60) = [0.39; 0.41], gam = 0.0000, Max-Change = 0.0000
Stage 3 = 2, CDLL = -24892.6, AR(0.60) = [0.39; 0.40], gam = 0.1778, Max-Change = 0.0188
Stage 3 = 3, CDLL = -24805.6, AR(0.60) = [0.38; 0.40], gam = 0.1057, Max-Change = 0.0174
Stage 3 = 4, CDLL = -24904.8, AR(0.60) = [0.39; 0.43], gam = 0.0780, Max-Change = 0.0073
Stage 3 = 5, CDLL = -24883.5, AR(0.60) = [0.40; 0.40], gam = 0.0629, Max-Change = 0.0064
Stage 3 = 6, CDLL = -24822.4, AR(0.60) = [0.41; 0.39], gam = 0.0532, Max-Change = 0.0125
Stage 3 = 7, CDLL = -24833.7, AR(0.60) = [0.40; 0.38], gam = 0.0464, Max-Change = 0.0108
Stage 3 = 8, CDLL = -24824.9, AR(0.60) = [0.44; 0.41], gam = 0.0413, Max-Change = 0.0032
Stage 3 = 9, CDLL = -24854.9, AR(0.60) = [0.40; 0.41], gam = 0.0374, Max-Change = 0.0022
Stage 3 = 10, CDLL = -24809.2, AR(0.60) = [0.41; 0.39], gam = 0.0342, Max-Change = 0.0045
Stage 3 = 11, CDLL = -24814.6, AR(0.60) = [0.39; 0.42], gam = 0.0316, Max-Change = 0.0034
Stage 3 = 12, CDLL = -24830.0, AR(0.60) = [0.39; 0.38], gam = 0.0294, Max-Change = 0.0026
Stage 3 = 13, CDLL = -24886.8, AR(0.60) = [0.41; 0.41], gam = 0.0276, Max-Change = 0.0029
Stage 3 = 14, CDLL = -24888.1, AR(0.60) = [0.41; 0.39], gam = 0.0260, Max-Change = 0.0037
Stage 3 = 15, CDLL = -25001.9, AR(0.60) = [0.40; 0.38], gam = 0.0246, Max-Change = 0.0041
Stage 3 = 16, CDLL = -24895.4, AR(0.60) = [0.42; 0.40], gam = 0.0233, Max-Change = 0.0022
Stage 3 = 17, CDLL = -24892.8, AR(0.60) = [0.40; 0.41], gam = 0.0222, Max-Change = 0.0022
Stage 3 = 18, CDLL = -24843.0, AR(0.60) = [0.40; 0.41], gam = 0.0212, Max-Change = 0.0033
Stage 3 = 19, CDLL = -24880.0, AR(0.60) = [0.39; 0.43], gam = 0.0203, Max-Change = 0.0025
Stage 3 = 20, CDLL = -24889.2, AR(0.60) = [0.40; 0.38], gam = 0.0195, Max-Change = 0.0019
Stage 3 = 21, CDLL = -24891.6, AR(0.60) = [0.43; 0.41], gam = 0.0188, Max-Change = 0.0019
Stage 3 = 22, CDLL = -24854.1, AR(0.60) = [0.40; 0.43], gam = 0.0181, Max-Change = 0.0018
Stage 3 = 23, CDLL = -24886.8, AR(0.60) = [0.41; 0.39], gam = 0.0175, Max-Change = 0.0018
Stage 3 = 24, CDLL = -24894.1, AR(0.60) = [0.40; 0.41], gam = 0.0169, Max-Change = 0.0018
Stage 3 = 25, CDLL = -24848.5, AR(0.60) = [0.41; 0.42], gam = 0.0164, Max-Change = 0.0015
Stage 3 = 26, CDLL = -24839.7, AR(0.60) = [0.41; 0.42], gam = 0.0159, Max-Change = 0.0017
Stage 3 = 27, CDLL = -24835.0, AR(0.60) = [0.39; 0.39], gam = 0.0154, Max-Change = 0.0014
Stage 3 = 28, CDLL = -24861.3, AR(0.60) = [0.42; 0.41], gam = 0.0150, Max-Change = 0.0018
Stage 3 = 29, CDLL = -24836.9, AR(0.60) = [0.39; 0.41], gam = 0.0146, Max-Change = 0.0022
Stage 3 = 30, CDLL = -24853.2, AR(0.60) = [0.44; 0.42], gam = 0.0142, Max-Change = 0.0014
Stage 3 = 31, CDLL = -24941.1, AR(0.60) = [0.41; 0.38], gam = 0.0139, Max-Change = 0.0019
Stage 3 = 32, CDLL = -24833.5, AR(0.60) = [0.42; 0.41], gam = 0.0135, Max-Change = 0.0012
Stage 3 = 33, CDLL = -24814.6, AR(0.60) = [0.42; 0.42], gam = 0.0132, Max-Change = 0.0011
Stage 3 = 34, CDLL = -24846.9, AR(0.60) = [0.38; 0.41], gam = 0.0129, Max-Change = 0.0013
Stage 3 = 35, CDLL = -24916.3, AR(0.60) = [0.41; 0.40], gam = 0.0126, Max-Change = 0.0012
Stage 3 = 36, CDLL = -24867.5, AR(0.60) = [0.39; 0.41], gam = 0.0124, Max-Change = 0.0014
Stage 3 = 37, CDLL = -24884.4, AR(0.60) = [0.40; 0.39], gam = 0.0121, Max-Change = 0.0011
Stage 3 = 38, CDLL = -24888.2, AR(0.60) = [0.40; 0.42], gam = 0.0119, Max-Change = 0.0017
Stage 3 = 39, CDLL = -24854.2, AR(0.60) = [0.41; 0.44], gam = 0.0116, Max-Change = 0.0015
Stage 3 = 40, CDLL = -24869.3, AR(0.60) = [0.40; 0.38], gam = 0.0114, Max-Change = 0.0020
Stage 3 = 41, CDLL = -24860.8, AR(0.60) = [0.40; 0.42], gam = 0.0112, Max-Change = 0.0012
Stage 3 = 42, CDLL = -24818.4, AR(0.60) = [0.42; 0.40], gam = 0.0110, Max-Change = 0.0010
Stage 3 = 43, CDLL = -24838.9, AR(0.60) = [0.42; 0.41], gam = 0.0108, Max-Change = 0.0011
Stage 3 = 44, CDLL = -24900.3, AR(0.60) = [0.38; 0.44], gam = 0.0106, Max-Change = 0.0011
Stage 3 = 45, CDLL = -24884.1, AR(0.60) = [0.39; 0.41], gam = 0.0104, Max-Change = 0.0016
Stage 3 = 46, CDLL = -24831.8, AR(0.60) = [0.40; 0.40], gam = 0.0102, Max-Change = 0.0010
Stage 3 = 47, CDLL = -24853.5, AR(0.60) = [0.42; 0.41], gam = 0.0101, Max-Change = 0.0010
Stage 3 = 48, CDLL = -24895.0, AR(0.60) = [0.42; 0.42], gam = 0.0099, Max-Change = 0.0012
Stage 3 = 49, CDLL = -24893.2, AR(0.60) = [0.41; 0.41], gam = 0.0098, Max-Change = 0.0008
Stage 3 = 50, CDLL = -24921.3, AR(0.60) = [0.41; 0.42], gam = 0.0096, Max-Change = 0.0011
Stage 3 = 51, CDLL = -24830.6, AR(0.60) = [0.37; 0.41], gam = 0.0095, Max-Change = 0.0010
Stage 3 = 52, CDLL = -24903.1, AR(0.60) = [0.38; 0.39], gam = 0.0093, Max-Change = 0.0010
Stage 3 = 53, CDLL = -24895.4, AR(0.60) = [0.40; 0.42], gam = 0.0092, Max-Change = 0.0011
Stage 3 = 54, CDLL = -24823.4, AR(0.60) = [0.40; 0.41], gam = 0.0091, Max-Change = 0.0006
Stage 3 = 55, CDLL = -24780.7, AR(0.60) = [0.41; 0.40], gam = 0.0089, Max-Change = 0.0013
Stage 3 = 56, CDLL = -24897.3, AR(0.60) = [0.40; 0.40], gam = 0.0088, Max-Change = 0.0010
Stage 3 = 57, CDLL = -24847.5, AR(0.60) = [0.41; 0.42], gam = 0.0087, Max-Change = 0.0008
Stage 3 = 58, CDLL = -24846.2, AR(0.60) = [0.40; 0.39], gam = 0.0086, Max-Change = 0.0007
Stage 3 = 59, CDLL = -24784.5, AR(0.60) = [0.42; 0.43], gam = 0.0085, Max-Change = 0.0009

#> 
#> Calculating log-likelihood...

anova(mod_metric, mod_configural)
#>                     AIC    SABIC       HQ      BIC    logLik     X2 df p
#> mod_metric     36927.79 37036.86 37020.33 37179.83 -18418.89            
#> mod_configural 36918.04 37063.47 37041.43 37254.10 -18399.02 39.745 15 0
anova(mod_fullconstrain, mod_metric)
#>                        AIC    SABIC       HQ      BIC    logLik     X2 df p
#> mod_fullconstrain 37023.82 37096.54 37085.52 37191.85 -18481.91            
#> mod_metric        36927.79 37036.86 37020.33 37179.83 -18418.89 126.04 15 0

############
# polytomous item example
set.seed(12345)
a <- matrix(abs(rnorm(15,1,.3)), ncol=1)
d <- matrix(rnorm(15,0,.7),ncol=1)
d <- cbind(d, d-1, d-2)
itemtype <- rep('graded', nrow(a))
N <- 1000
dataset1 <- simdata(a, d, N, itemtype)
dataset2 <- simdata(a, d, N, itemtype, mu = .1, sigma = matrix(1.5))
dat <- rbind(dataset1, dataset2)
group <- c(rep('D1', N), rep('D2', N))
model <- 'F1 = 1-15'

mod_configural <- multipleGroup(dat, model, group = group)
#> 
Iteration: 1, Log-Lik: -34412.001, Max-Change: 0.50962
Iteration: 2, Log-Lik: -34167.562, Max-Change: 0.22394
Iteration: 3, Log-Lik: -34141.265, Max-Change: 0.13027
Iteration: 4, Log-Lik: -34131.412, Max-Change: 0.09083
Iteration: 5, Log-Lik: -34127.437, Max-Change: 0.06043
Iteration: 6, Log-Lik: -34125.397, Max-Change: 0.04270
Iteration: 7, Log-Lik: -34124.782, Max-Change: 0.03782
Iteration: 8, Log-Lik: -34124.082, Max-Change: 0.01765
Iteration: 9, Log-Lik: -34123.767, Max-Change: 0.01169
Iteration: 10, Log-Lik: -34123.518, Max-Change: 0.00648
Iteration: 11, Log-Lik: -34123.453, Max-Change: 0.00402
Iteration: 12, Log-Lik: -34123.416, Max-Change: 0.00386
Iteration: 13, Log-Lik: -34123.356, Max-Change: 0.00289
Iteration: 14, Log-Lik: -34123.346, Max-Change: 0.00227
Iteration: 15, Log-Lik: -34123.342, Max-Change: 0.00039
Iteration: 16, Log-Lik: -34123.342, Max-Change: 0.00033
Iteration: 17, Log-Lik: -34123.342, Max-Change: 0.00097
Iteration: 18, Log-Lik: -34123.340, Max-Change: 0.00127
Iteration: 19, Log-Lik: -34123.340, Max-Change: 0.00145
Iteration: 20, Log-Lik: -34123.338, Max-Change: 0.00031
Iteration: 21, Log-Lik: -34123.337, Max-Change: 0.00072
Iteration: 22, Log-Lik: -34123.337, Max-Change: 0.00035
Iteration: 23, Log-Lik: -34123.336, Max-Change: 0.00076
Iteration: 24, Log-Lik: -34123.336, Max-Change: 0.00023
Iteration: 25, Log-Lik: -34123.336, Max-Change: 0.00019
Iteration: 26, Log-Lik: -34123.336, Max-Change: 0.00049
Iteration: 27, Log-Lik: -34123.335, Max-Change: 0.00084
Iteration: 28, Log-Lik: -34123.335, Max-Change: 0.00034
Iteration: 29, Log-Lik: -34123.335, Max-Change: 0.00058
Iteration: 30, Log-Lik: -34123.335, Max-Change: 0.00028
Iteration: 31, Log-Lik: -34123.334, Max-Change: 0.00022
Iteration: 32, Log-Lik: -34123.334, Max-Change: 0.00049
Iteration: 33, Log-Lik: -34123.334, Max-Change: 0.00015
Iteration: 34, Log-Lik: -34123.334, Max-Change: 0.00012
Iteration: 35, Log-Lik: -34123.334, Max-Change: 0.00031
Iteration: 36, Log-Lik: -34123.334, Max-Change: 0.00056
Iteration: 37, Log-Lik: -34123.334, Max-Change: 0.00021
Iteration: 38, Log-Lik: -34123.334, Max-Change: 0.00041
Iteration: 39, Log-Lik: -34123.334, Max-Change: 0.00017
Iteration: 40, Log-Lik: -34123.334, Max-Change: 0.00014
Iteration: 41, Log-Lik: -34123.334, Max-Change: 0.00034
Iteration: 42, Log-Lik: -34123.334, Max-Change: 0.00011
Iteration: 43, Log-Lik: -34123.334, Max-Change: 0.00009
plot(mod_configural)

plot(mod_configural, type = 'SE')

itemplot(mod_configural, 1)

itemplot(mod_configural, 1, type = 'info')

plot(mod_configural, type = 'trace') # messy, score function typically better

plot(mod_configural, type = 'itemscore')


fs <- fscores(mod_configural, full.scores = FALSE)
#> 
#> Method:  EAP
#> 
#> Empirical Reliability:
#> 
#>     F1 
#> 0.7942 
#> 
#> Method:  EAP
#> 
#> Empirical Reliability:
#> 
#>     F1 
#> 0.7249 
head(fs[["D1"]])
#>      Item_1 Item_2 Item_3 Item_4 Item_5 Item_6 Item_7 Item_8 Item_9 Item_10
#> [1,]      0      0      0      0      0      0      0      0      0       0
#> [2,]      0      0      0      0      0      0      0      0      0       0
#> [3,]      0      0      0      0      0      0      0      0      0       0
#> [4,]      0      0      0      0      0      0      0      0      0       0
#> [5,]      0      0      0      0      0      0      0      0      0       0
#> [6,]      0      0      0      0      0      0      0      0      0       0
#>      Item_11 Item_12 Item_13 Item_14 Item_15        F1     SE_F1
#> [1,]       0       0       0       0       0 -2.137056 0.6262714
#> [2,]       0       0       0       1       0 -1.785692 0.5741235
#> [3,]       0       0       0       2       0 -1.726621 0.5800312
#> [4,]       0       0       0       3       0 -1.688716 0.5856268
#> [5,]       0       0       0       3       1 -1.439230 0.5535499
#> [6,]       0       2       0       0       0 -1.582715 0.5660598
fscores(mod_configural, method = 'EAPsum', full.scores = FALSE)
#>       df     X2  p.X2 SEM.alpha rxx.alpha rxx_F1
#> stats 39 42.374 0.328     3.869     0.784  0.776
#> 
#>       df     X2  p.X2 SEM.alpha rxx.alpha rxx_F1
#> stats 42 29.475 0.928     3.825     0.842  0.832
#> 
#> $D1
#>    Sum.Scores     F1 SE_F1 observed expected std.res
#> 0           0 -2.137 0.626        6    5.731   0.112
#> 1           1 -1.842 0.589        6   10.082   1.286
#> 2           2 -1.645 0.575       19   15.026   1.025
#> 3           3 -1.491 0.568       22   21.117   0.192
#> 4           4 -1.323 0.548       31   26.167   0.945
#> 5           5 -1.173 0.534       21   30.811   1.768
#> 6           6 -1.033 0.523       30   34.974   0.841
#> 7           7 -0.898 0.510       37   38.286   0.208
#> 8           8 -0.770 0.500       47   40.921   0.950
#> 9           9 -0.648 0.490       40   42.896   0.442
#> 10         10 -0.531 0.481       54   44.208   1.473
#> 11         11 -0.417 0.473       52   44.945   1.052
#> 12         12 -0.307 0.466       50   45.161   0.720
#> 13         13 -0.201 0.460       35   44.909   1.479
#> 14         14 -0.097 0.455       41   44.252   0.489
#> 15         15  0.005 0.450       33   43.244   1.558
#> 16         16  0.104 0.446       50   41.936   1.245
#> 17         17  0.202 0.443       38   40.375   0.374
#> 18         18  0.298 0.440       34   38.606   0.741
#> 19         19  0.394 0.437       40   36.668   0.550
#> 20         20  0.488 0.436       30   34.599   0.782
#> 21         21  0.582 0.435       42   32.431   1.680
#> 22         22  0.675 0.434       32   30.195   0.328
#> 23         23  0.768 0.434       28   27.920   0.015
#> 24         24  0.861 0.434       19   25.631   1.310
#> 25         25  0.954 0.435       34   23.350   2.204
#> 26         26  1.048 0.436       21   21.099   0.022
#> 27         27  1.142 0.438       18   18.899   0.207
#> 28         28  1.237 0.441       21   16.765   1.034
#> 29         29  1.334 0.444       10   14.717   1.229
#> 30         30  1.431 0.447       11   12.767   0.495
#> 31         31  1.530 0.451        8   10.931   0.887
#> 32         32  1.631 0.456        8    9.221   0.402
#> 33         33  1.733 0.461        8    7.648   0.127
#> 34         34  1.838 0.466        6    6.221   0.089
#> 35         35  1.946 0.472        1    4.949   1.775
#> 36         36  2.056 0.479        4    3.835   0.084
#> 37         37  2.169 0.486        6    2.881   1.838
#> 38         38  2.287 0.494        3    2.086   0.632
#> 39         39  2.409 0.503        3    1.445   1.293
#> 40         40  2.535 0.512        1    0.946   0.055
#> 41         41  2.668 0.522        0    0.580   0.761
#> 42         42  2.809 0.534        0    0.324   0.569
#> 43         43  2.955 0.544        0    0.158   0.397
#> 44         44  3.126 0.559        0    0.066   0.256
#> 45         45  3.345 0.584        0    0.019   0.137
#> 
#> $D2
#>    Sum.Scores     F1 SE_F1 observed expected std.res
#> 0           0 -2.051 0.591        9   11.036   0.613
#> 1           1 -1.750 0.548       23   16.140   1.708
#> 2           2 -1.554 0.530       22   20.995   0.219
#> 3           3 -1.412 0.524       31   27.050   0.759
#> 4           4 -1.240 0.493       35   30.434   0.828
#> 5           5 -1.095 0.475       33   33.197   0.034
#> 6           6 -0.964 0.460       34   35.476   0.248
#> 7           7 -0.836 0.444       32   36.880   0.804
#> 8           8 -0.718 0.431       32   37.812   0.945
#> 9           9 -0.607 0.419       31   38.353   1.187
#> 10         10 -0.501 0.409       28   38.516   1.695
#> 11         11 -0.400 0.400       46   38.404   1.226
#> 12         12 -0.303 0.393       41   38.063   0.476
#> 13         13 -0.210 0.386       36   37.526   0.249
#> 14         14 -0.119 0.381       33   36.830   0.631
#> 15         15 -0.031 0.376       37   36.003   0.166
#> 16         16  0.055 0.372       33   35.064   0.349
#> 17         17  0.140 0.369       33   34.032   0.177
#> 18         18  0.223 0.366       42   32.921   1.582
#> 19         19  0.305 0.364       28   31.744   0.665
#> 20         20  0.386 0.363       29   30.511   0.274
#> 21         21  0.466 0.362       30   29.230   0.142
#> 22         22  0.546 0.362       24   27.908   0.740
#> 23         23  0.626 0.362       28   26.553   0.281
#> 24         24  0.706 0.363       29   25.169   0.764
#> 25         25  0.787 0.364       27   23.761   0.664
#> 26         26  0.868 0.366       29   22.334   1.411
#> 27         27  0.950 0.369       19   20.892   0.414
#> 28         28  1.033 0.372       17   19.437   0.553
#> 29         29  1.117 0.376       13   17.975   1.174
#> 30         30  1.203 0.380       19   16.510   0.613
#> 31         31  1.291 0.385       17   15.044   0.504
#> 32         32  1.381 0.391       17   13.583   0.927
#> 33         33  1.473 0.398       16   12.135   1.109
#> 34         34  1.568 0.405       11   10.703   0.091
#> 35         35  1.667 0.414        8    9.299   0.426
#> 36         36  1.769 0.423       11    7.936   1.088
#> 37         37  1.874 0.433        3    6.617   1.406
#> 38         38  1.984 0.444        6    5.370   0.272
#> 39         39  2.101 0.457        4    4.219   0.107
#> 40         40  2.219 0.469        2    3.152   0.649
#> 41         41  2.344 0.482        2    2.236   0.158
#> 42         42  2.484 0.501        0    1.485   1.219
#> 43         43  2.612 0.511        0    0.842   0.918
#> 44         44  2.766 0.525        0    0.438   0.662
#> 45         45  2.988 0.555        0    0.185   0.431
#> 

# constrain slopes within each group to be equal (but not across groups)
model2 <- 'F1 = 1-15
           CONSTRAIN = (1-15, a1)'
mod_configural2 <- multipleGroup(dat, model2, group = group)
#> 
Iteration: 1, Log-Lik: -34412.001, Max-Change: 0.31938
Iteration: 2, Log-Lik: -34328.899, Max-Change: 0.08440
Iteration: 3, Log-Lik: -34305.996, Max-Change: 0.06675
Iteration: 4, Log-Lik: -34296.479, Max-Change: 0.04419
Iteration: 5, Log-Lik: -34292.571, Max-Change: 0.02327
Iteration: 6, Log-Lik: -34290.898, Max-Change: 0.01614
Iteration: 7, Log-Lik: -34289.676, Max-Change: 0.00825
Iteration: 8, Log-Lik: -34289.460, Max-Change: 0.00517
Iteration: 9, Log-Lik: -34289.353, Max-Change: 0.00408
Iteration: 10, Log-Lik: -34289.172, Max-Change: 0.00304
Iteration: 11, Log-Lik: -34289.157, Max-Change: 0.00173
Iteration: 12, Log-Lik: -34289.149, Max-Change: 0.00177
Iteration: 13, Log-Lik: -34289.129, Max-Change: 0.00072
Iteration: 14, Log-Lik: -34289.128, Max-Change: 0.00043
Iteration: 15, Log-Lik: -34289.127, Max-Change: 0.00007
plot(mod_configural2, type = 'SE')

plot(mod_configural2, type = 'RE')

itemplot(mod_configural2, 10)


############
## empirical histogram example (normal and bimodal groups)
set.seed(1234)
a <- matrix(rlnorm(50, .2, .2))
d <- matrix(rnorm(50))
ThetaNormal <- matrix(rnorm(2000))
ThetaBimodal <- scale(matrix(c(rnorm(1000, -2), rnorm(1000,2)))) #bimodal
Theta <- rbind(ThetaNormal, ThetaBimodal)
dat <- simdata(a, d, 4000, itemtype = '2PL', Theta=Theta)
group <- rep(c('G1', 'G2'), each=2000)

EH <- multipleGroup(dat, 1, group=group, dentype="empiricalhist", invariance = colnames(dat))
#> 
Iteration: 1, Log-Lik: -108895.053, Max-Change: 0.63949
Iteration: 2, Log-Lik: -108014.337, Max-Change: 0.07743
Iteration: 3, Log-Lik: -107976.553, Max-Change: 0.01217
Iteration: 4, Log-Lik: -107968.285, Max-Change: 0.00311
Iteration: 5, Log-Lik: -107965.375, Max-Change: 0.00307
Iteration: 6, Log-Lik: -107964.050, Max-Change: 0.00249
Iteration: 7, Log-Lik: -107963.268, Max-Change: 0.00059
Iteration: 8, Log-Lik: -107962.720, Max-Change: 0.00070
Iteration: 9, Log-Lik: -107962.291, Max-Change: 0.00055
Iteration: 10, Log-Lik: -107961.936, Max-Change: 0.00035
Iteration: 11, Log-Lik: -107961.637, Max-Change: 0.00034
Iteration: 12, Log-Lik: -107961.381, Max-Change: 0.00032
Iteration: 13, Log-Lik: -107961.158, Max-Change: 0.00022
Iteration: 14, Log-Lik: -107960.962, Max-Change: 0.00026
Iteration: 15, Log-Lik: -107960.789, Max-Change: 0.00022
Iteration: 16, Log-Lik: -107960.635, Max-Change: 0.00015
Iteration: 17, Log-Lik: -107960.497, Max-Change: 0.00018
Iteration: 18, Log-Lik: -107960.373, Max-Change: 0.00016
Iteration: 19, Log-Lik: -107960.260, Max-Change: 0.00012
Iteration: 20, Log-Lik: -107960.158, Max-Change: 0.00014
Iteration: 21, Log-Lik: -107960.064, Max-Change: 0.00013
Iteration: 22, Log-Lik: -107959.978, Max-Change: 0.00009
coef(EH, simplify=TRUE)
#> $G1
#> $items
#>            a1      d g u
#> Item_1  0.759 -1.830 0 1
#> Item_2  1.062 -0.555 0 1
#> Item_3  1.235 -1.117 0 1
#> Item_4  0.611 -0.953 0 1
#> Item_5  1.088 -0.132 0 1
#> Item_6  1.054  0.502 0 1
#> Item_7  0.849  1.581 0 1
#> Item_8  0.870 -0.779 0 1
#> Item_9  0.902  1.658 0 1
#> Item_10 0.812 -1.188 0 1
#> Item_11 0.903  0.661 0 1
#> Item_12 0.841  2.646 0 1
#> Item_13 0.843 -0.064 0 1
#> Item_14 1.009 -0.600 0 1
#> Item_15 1.167  0.013 0 1
#> Item_16 1.008  1.886 0 1
#> Item_17 0.885 -1.124 0 1
#> Item_18 0.790  1.420 0 1
#> Item_19 0.799  1.316 0 1
#> Item_20 1.565  0.294 0 1
#> Item_21 1.002  0.001 0 1
#> Item_22 0.929 -0.497 0 1
#> Item_23 0.903 -0.383 0 1
#> Item_24 1.120  0.702 0 1
#> Item_25 0.850  2.002 0 1
#> Item_26 0.706 -0.208 0 1
#> Item_27 1.048 -1.279 0 1
#> Item_28 0.826 -0.770 0 1
#> Item_29 1.062  0.221 0 1
#> Item_30 0.737 -0.333 0 1
#> Item_31 1.208 -0.178 0 1
#> Item_32 0.917 -0.202 0 1
#> Item_33 0.859 -1.360 0 1
#> Item_34 0.913 -0.252 0 1
#> Item_35 0.767  0.886 0 1
#> Item_36 0.783  0.763 0 1
#> Item_37 0.630  0.550 0 1
#> Item_38 0.736 -0.405 0 1
#> Item_39 0.917 -0.166 0 1
#> Item_40 0.895 -1.251 0 1
#> Item_41 1.251 -0.040 0 1
#> Item_42 0.882  0.202 0 1
#> Item_43 0.796  1.639 0 1
#> Item_44 1.022  1.038 0 1
#> Item_45 0.812 -0.470 0 1
#> Item_46 0.807  0.336 0 1
#> Item_47 0.815 -1.121 0 1
#> Item_48 0.739  0.892 0 1
#> Item_49 0.904  1.036 0 1
#> Item_50 0.895  2.124 0 1
#> 
#> $means
#> F1 
#>  0 
#> 
#> $cov
#>    F1
#> F1  1
#> 
#> 
#> $G2
#> $items
#>            a1      d g u
#> Item_1  0.759 -1.830 0 1
#> Item_2  1.062 -0.555 0 1
#> Item_3  1.235 -1.117 0 1
#> Item_4  0.611 -0.953 0 1
#> Item_5  1.088 -0.132 0 1
#> Item_6  1.054  0.502 0 1
#> Item_7  0.849  1.581 0 1
#> Item_8  0.870 -0.779 0 1
#> Item_9  0.902  1.658 0 1
#> Item_10 0.812 -1.188 0 1
#> Item_11 0.903  0.661 0 1
#> Item_12 0.841  2.646 0 1
#> Item_13 0.843 -0.064 0 1
#> Item_14 1.009 -0.600 0 1
#> Item_15 1.167  0.013 0 1
#> Item_16 1.008  1.886 0 1
#> Item_17 0.885 -1.124 0 1
#> Item_18 0.790  1.420 0 1
#> Item_19 0.799  1.316 0 1
#> Item_20 1.565  0.294 0 1
#> Item_21 1.002  0.001 0 1
#> Item_22 0.929 -0.497 0 1
#> Item_23 0.903 -0.383 0 1
#> Item_24 1.120  0.702 0 1
#> Item_25 0.850  2.002 0 1
#> Item_26 0.706 -0.208 0 1
#> Item_27 1.048 -1.279 0 1
#> Item_28 0.826 -0.770 0 1
#> Item_29 1.062  0.221 0 1
#> Item_30 0.737 -0.333 0 1
#> Item_31 1.208 -0.178 0 1
#> Item_32 0.917 -0.202 0 1
#> Item_33 0.859 -1.360 0 1
#> Item_34 0.913 -0.252 0 1
#> Item_35 0.767  0.886 0 1
#> Item_36 0.783  0.763 0 1
#> Item_37 0.630  0.550 0 1
#> Item_38 0.736 -0.405 0 1
#> Item_39 0.917 -0.166 0 1
#> Item_40 0.895 -1.251 0 1
#> Item_41 1.251 -0.040 0 1
#> Item_42 0.882  0.202 0 1
#> Item_43 0.796  1.639 0 1
#> Item_44 1.022  1.038 0 1
#> Item_45 0.812 -0.470 0 1
#> Item_46 0.807  0.336 0 1
#> Item_47 0.815 -1.121 0 1
#> Item_48 0.739  0.892 0 1
#> Item_49 0.904  1.036 0 1
#> Item_50 0.895  2.124 0 1
#> 
#> $means
#> F1 
#>  0 
#> 
#> $cov
#>    F1
#> F1  1
#> 
#> 
plot(EH, type = 'empiricalhist', npts = 60)


# DIF test for item 1
EH1 <- multipleGroup(dat, 1, group=group, dentype="empiricalhist", invariance = colnames(dat)[-1])
#> 
Iteration: 1, Log-Lik: -108895.053, Max-Change: 0.67592
Iteration: 2, Log-Lik: -108013.049, Max-Change: 0.07675
Iteration: 3, Log-Lik: -107976.386, Max-Change: 0.01118
Iteration: 4, Log-Lik: -107968.253, Max-Change: 0.00317
Iteration: 5, Log-Lik: -107965.335, Max-Change: 0.00376
Iteration: 6, Log-Lik: -107964.004, Max-Change: 0.00153
Iteration: 7, Log-Lik: -107963.227, Max-Change: 0.00106
Iteration: 8, Log-Lik: -107962.680, Max-Change: 0.00047
Iteration: 9, Log-Lik: -107962.251, Max-Change: 0.00049
Iteration: 10, Log-Lik: -107961.897, Max-Change: 0.00036
Iteration: 11, Log-Lik: -107961.598, Max-Change: 0.00035
Iteration: 12, Log-Lik: -107961.341, Max-Change: 0.00030
Iteration: 13, Log-Lik: -107961.118, Max-Change: 0.00018
Iteration: 14, Log-Lik: -107960.922, Max-Change: 0.00023
Iteration: 15, Log-Lik: -107960.749, Max-Change: 0.00024
Iteration: 16, Log-Lik: -107960.595, Max-Change: 0.00026
Iteration: 17, Log-Lik: -107960.457, Max-Change: 0.00025
Iteration: 18, Log-Lik: -107960.333, Max-Change: 0.00024
Iteration: 19, Log-Lik: -107960.220, Max-Change: 0.00017
Iteration: 20, Log-Lik: -107960.117, Max-Change: 0.00019
Iteration: 21, Log-Lik: -107960.023, Max-Change: 0.00014
Iteration: 22, Log-Lik: -107959.937, Max-Change: 0.00016
Iteration: 23, Log-Lik: -107959.858, Max-Change: 0.00014
Iteration: 24, Log-Lik: -107959.785, Max-Change: 0.00013
Iteration: 25, Log-Lik: -107959.717, Max-Change: 0.00030
Iteration: 26, Log-Lik: -107959.654, Max-Change: 0.00025
Iteration: 27, Log-Lik: -107959.595, Max-Change: 0.00011
Iteration: 28, Log-Lik: -107959.541, Max-Change: 0.00011
Iteration: 29, Log-Lik: -107959.489, Max-Change: 0.00009
anova(EH, EH1)
#>          AIC    SABIC       HQ      BIC    logLik    X2 df     p
#> EH  216599.8 217659.4 217358.4 218739.8 -107959.9               
#> EH1 216602.9 217668.7 217365.9 218755.4 -107959.4 0.916  2 0.632

#--------------------------------
# Mixture model (no prior group variable specified)

set.seed(12345)
nitems <- 20
a1 <- matrix(.75, ncol=1, nrow=nitems)
a2 <- matrix(1.25, ncol=1, nrow=nitems)
d1 <- matrix(rnorm(nitems,0,1),ncol=1)
d2 <- matrix(rnorm(nitems,0,1),ncol=1)
itemtype <- rep('2PL', nrow(a1))
N1 <- 500
N2 <- N1*2 # second class twice as large

dataset1 <- simdata(a1, d1, N1, itemtype)
dataset2 <- simdata(a2, d2, N2, itemtype)
dat <- rbind(dataset1, dataset2)
# group <- c(rep('D1', N1), rep('D2', N2))

# Mixture Rasch model (Rost, 1990)
models <- 'F1 = 1-20
           CONSTRAIN = (1-20, a1)'
mod_mix <- multipleGroup(dat, models, dentype = 'mixture-2', GenRandomPars = TRUE)
#> 
Iteration: 1, Log-Lik: -22548.612, Max-Change: 3.60500
Iteration: 2, Log-Lik: -17682.256, Max-Change: 0.37786
Iteration: 3, Log-Lik: -17633.378, Max-Change: 0.29101
Iteration: 4, Log-Lik: -17577.267, Max-Change: 0.42553
Iteration: 5, Log-Lik: -17487.284, Max-Change: 0.53092
Iteration: 6, Log-Lik: -17384.738, Max-Change: 0.43400
Iteration: 7, Log-Lik: -17325.940, Max-Change: 0.19617
Iteration: 8, Log-Lik: -17306.055, Max-Change: 0.13082
Iteration: 9, Log-Lik: -17297.602, Max-Change: 0.10649
Iteration: 10, Log-Lik: -17292.378, Max-Change: 0.08533
Iteration: 11, Log-Lik: -17288.466, Max-Change: 0.07164
Iteration: 12, Log-Lik: -17285.258, Max-Change: 0.06372
Iteration: 13, Log-Lik: -17281.432, Max-Change: 0.17182
Iteration: 14, Log-Lik: -17274.384, Max-Change: 0.03310
Iteration: 15, Log-Lik: -17273.646, Max-Change: 0.02987
Iteration: 16, Log-Lik: -17272.672, Max-Change: 0.03010
Iteration: 17, Log-Lik: -17272.253, Max-Change: 0.02644
Iteration: 18, Log-Lik: -17271.981, Max-Change: 0.02274
Iteration: 19, Log-Lik: -17271.705, Max-Change: 0.04648
Iteration: 20, Log-Lik: -17271.208, Max-Change: 0.01259
Iteration: 21, Log-Lik: -17271.178, Max-Change: 0.01244
Iteration: 22, Log-Lik: -17271.147, Max-Change: 0.01329
Iteration: 23, Log-Lik: -17271.109, Max-Change: 0.00286
Iteration: 24, Log-Lik: -17271.106, Max-Change: 0.00265
Iteration: 25, Log-Lik: -17271.103, Max-Change: 0.00144
Iteration: 26, Log-Lik: -17271.102, Max-Change: 0.00047
Iteration: 27, Log-Lik: -17271.102, Max-Change: 0.00090
Iteration: 28, Log-Lik: -17271.101, Max-Change: 0.00227
Iteration: 29, Log-Lik: -17271.099, Max-Change: 0.00177
Iteration: 30, Log-Lik: -17271.098, Max-Change: 0.00079
Iteration: 31, Log-Lik: -17271.098, Max-Change: 0.00052
Iteration: 32, Log-Lik: -17271.098, Max-Change: 0.00220
Iteration: 33, Log-Lik: -17271.097, Max-Change: 0.00177
Iteration: 34, Log-Lik: -17271.096, Max-Change: 0.00078
Iteration: 35, Log-Lik: -17271.095, Max-Change: 0.00142
Iteration: 36, Log-Lik: -17271.095, Max-Change: 0.00046
Iteration: 37, Log-Lik: -17271.095, Max-Change: 0.00027
Iteration: 38, Log-Lik: -17271.095, Max-Change: 0.00136
Iteration: 39, Log-Lik: -17271.095, Max-Change: 0.00027
Iteration: 40, Log-Lik: -17271.095, Max-Change: 0.00124
Iteration: 41, Log-Lik: -17271.094, Max-Change: 0.00031
Iteration: 42, Log-Lik: -17271.094, Max-Change: 0.00110
Iteration: 43, Log-Lik: -17271.094, Max-Change: 0.00027
Iteration: 44, Log-Lik: -17271.094, Max-Change: 0.00018
Iteration: 45, Log-Lik: -17271.094, Max-Change: 0.00091
Iteration: 46, Log-Lik: -17271.094, Max-Change: 0.00027
Iteration: 47, Log-Lik: -17271.094, Max-Change: 0.00077
Iteration: 48, Log-Lik: -17271.094, Max-Change: 0.00014
Iteration: 49, Log-Lik: -17271.094, Max-Change: 0.00014
Iteration: 50, Log-Lik: -17271.094, Max-Change: 0.00069
Iteration: 51, Log-Lik: -17271.093, Max-Change: 0.00014
Iteration: 52, Log-Lik: -17271.093, Max-Change: 0.00062
Iteration: 53, Log-Lik: -17271.093, Max-Change: 0.00011
Iteration: 54, Log-Lik: -17271.093, Max-Change: 0.00054
Iteration: 55, Log-Lik: -17271.093, Max-Change: 0.00013
coef(mod_mix, simplify=TRUE)
#> $MIXTURE_1
#> $items
#>            a1      d g u
#> Item_1  1.302  0.772 0 1
#> Item_2  1.302  1.476 0 1
#> Item_3  1.302 -0.553 0 1
#> Item_4  1.302 -1.588 0 1
#> Item_5  1.302 -1.545 0 1
#> Item_6  1.302  2.084 0 1
#> Item_7  1.302 -0.510 0 1
#> Item_8  1.302  0.606 0 1
#> Item_9  1.302  0.550 0 1
#> Item_10 1.302 -0.167 0 1
#> Item_11 1.302  0.961 0 1
#> Item_12 1.302  2.156 0 1
#> Item_13 1.302  2.082 0 1
#> Item_14 1.302  1.733 0 1
#> Item_15 1.302  0.138 0 1
#> Item_16 1.302  0.434 0 1
#> Item_17 1.302 -0.368 0 1
#> Item_18 1.302 -1.633 0 1
#> Item_19 1.302  1.799 0 1
#> Item_20 1.302 -0.024 0 1
#> 
#> $means
#> F1 
#>  0 
#> 
#> $cov
#>    F1
#> F1  1
#> 
#> $class_proportion
#>     pi
#>  0.655
#> 
#> 
#> $MIXTURE_2
#> $items
#>            a1      d g u
#> Item_1  0.681  0.664 0 1
#> Item_2  0.681  0.805 0 1
#> Item_3  0.681 -0.039 0 1
#> Item_4  0.681 -0.416 0 1
#> Item_5  0.681  0.530 0 1
#> Item_6  0.681 -2.045 0 1
#> Item_7  0.681  0.770 0 1
#> Item_8  0.681 -0.314 0 1
#> Item_9  0.681 -0.030 0 1
#> Item_10 0.681 -0.820 0 1
#> Item_11 0.681 -0.252 0 1
#> Item_12 0.681  1.939 0 1
#> Item_13 0.681  0.642 0 1
#> Item_14 0.681  0.593 0 1
#> Item_15 0.681 -0.749 0 1
#> Item_16 0.681  0.852 0 1
#> Item_17 0.681 -0.950 0 1
#> Item_18 0.681 -0.345 0 1
#> Item_19 0.681  1.230 0 1
#> Item_20 0.681  0.271 0 1
#> 
#> $means
#> F1 
#>  0 
#> 
#> $cov
#>    F1
#> F1  1
#> 
#> $class_proportion
#>     pi
#>  0.345
#> 
#> 
summary(mod_mix)
#> 
#> ----------
#> GROUP: MIXTURE_1 
#>          F1    h2
#>  [1,] 0.608 0.369
#>  [2,] 0.608 0.369
#>  [3,] 0.608 0.369
#>  [4,] 0.608 0.369
#>  [5,] 0.608 0.369
#>  [6,] 0.608 0.369
#>  [7,] 0.608 0.369
#>  [8,] 0.608 0.369
#>  [9,] 0.608 0.369
#> [10,] 0.608 0.369
#> [11,] 0.608 0.369
#> [12,] 0.608 0.369
#> [13,] 0.608 0.369
#> [14,] 0.608 0.369
#> [15,] 0.608 0.369
#> [16,] 0.608 0.369
#> [17,] 0.608 0.369
#> [18,] 0.608 0.369
#> [19,] 0.608 0.369
#> [20,] 0.608 0.369
#> 
#> SS loadings:  7.386 
#> Proportion Var:  0.369 
#> 
#> Factor correlations: 
#> 
#>    F1
#> F1  1
#> 
#> Class proportion:  0.655 
#> 
#> ----------
#> GROUP: MIXTURE_2 
#>          F1    h2
#>  [1,] 0.371 0.138
#>  [2,] 0.371 0.138
#>  [3,] 0.371 0.138
#>  [4,] 0.371 0.138
#>  [5,] 0.371 0.138
#>  [6,] 0.371 0.138
#>  [7,] 0.371 0.138
#>  [8,] 0.371 0.138
#>  [9,] 0.371 0.138
#> [10,] 0.371 0.138
#> [11,] 0.371 0.138
#> [12,] 0.371 0.138
#> [13,] 0.371 0.138
#> [14,] 0.371 0.138
#> [15,] 0.371 0.138
#> [16,] 0.371 0.138
#> [17,] 0.371 0.138
#> [18,] 0.371 0.138
#> [19,] 0.371 0.138
#> [20,] 0.371 0.138
#> 
#> SS loadings:  2.758 
#> Proportion Var:  0.138 
#> 
#> Factor correlations: 
#> 
#>    F1
#> F1  1
#> 
#> Class proportion:  0.345 
plot(mod_mix)

plot(mod_mix, type = 'trace')

itemplot(mod_mix, 1, type = 'info')


head(fscores(mod_mix)) # theta estimates
#>         Class_1
#> [1,] -0.3609178
#> [2,] -1.6950807
#> [3,] -0.8217168
#> [4,]  0.8090483
#> [5,]  0.7936363
#> [6,]  0.2286020
head(fscores(mod_mix, method = 'classify')) # classification probability
#>         CLASS_1   CLASS_2
#> [1,] 0.04826707 0.9517329
#> [2,] 0.74223456 0.2577654
#> [3,] 0.02496631 0.9750337
#> [4,] 0.02929597 0.9707040
#> [5,] 0.07220958 0.9277904
#> [6,] 0.42428417 0.5757158
itemfit(mod_mix)
#>       item   S_X2 df.S_X2 RMSEA.S_X2 p.S_X2
#> 1   Item_1 30.498      12      0.032  0.002
#> 2   Item_2 36.271      12      0.037  0.000
#> 3   Item_3 15.756      12      0.014  0.203
#> 4   Item_4  9.334      11      0.000  0.591
#> 5   Item_5 21.638      12      0.023  0.042
#> 6   Item_6 26.071      13      0.026  0.017
#> 7   Item_7  8.624      12      0.000  0.735
#> 8   Item_8 16.652      12      0.016  0.163
#> 9   Item_9 22.772      12      0.024  0.030
#> 10 Item_10 14.622      12      0.012  0.263
#> 11 Item_11  7.357      12      0.000  0.833
#> 12 Item_12 14.964      12      0.013  0.243
#> 13 Item_13 10.222      12      0.000  0.597
#> 14 Item_14 17.414      13      0.015  0.181
#> 15 Item_15  9.436      12      0.000  0.665
#> 16 Item_16 11.408      12      0.000  0.494
#> 17 Item_17 16.483      12      0.016  0.170
#> 18 Item_18 11.717      11      0.007  0.385
#> 19 Item_19 11.425      12      0.000  0.493
#> 20 Item_20 15.291      12      0.014  0.226

# Mixture 2PL model
mod_mix2 <- multipleGroup(dat, 1, dentype = 'mixture-2', GenRandomPars = TRUE)
#> 
Iteration: 1, Log-Lik: -21804.788, Max-Change: 3.04972
Iteration: 2, Log-Lik: -17810.175, Max-Change: 0.58267
Iteration: 3, Log-Lik: -17671.211, Max-Change: 0.31912
Iteration: 4, Log-Lik: -17622.044, Max-Change: 0.18073
Iteration: 5, Log-Lik: -17583.767, Max-Change: 0.22263
Iteration: 6, Log-Lik: -17542.036, Max-Change: 0.29907
Iteration: 7, Log-Lik: -17501.345, Max-Change: 0.34981
Iteration: 8, Log-Lik: -17469.861, Max-Change: 0.32929
Iteration: 9, Log-Lik: -17448.121, Max-Change: 0.34654
Iteration: 10, Log-Lik: -17433.633, Max-Change: 0.31083
Iteration: 11, Log-Lik: -17423.484, Max-Change: 0.25509
Iteration: 12, Log-Lik: -17415.902, Max-Change: 0.21169
Iteration: 13, Log-Lik: -17410.076, Max-Change: 0.17470
Iteration: 14, Log-Lik: -17405.507, Max-Change: 0.16107
Iteration: 15, Log-Lik: -17401.835, Max-Change: 0.12070
Iteration: 16, Log-Lik: -17391.734, Max-Change: 0.07980
Iteration: 17, Log-Lik: -17389.862, Max-Change: 0.07186
Iteration: 18, Log-Lik: -17388.071, Max-Change: 0.08090
Iteration: 19, Log-Lik: -17378.997, Max-Change: 0.11219
Iteration: 20, Log-Lik: -17377.746, Max-Change: 0.12054
Iteration: 21, Log-Lik: -17376.537, Max-Change: 0.10123
Iteration: 22, Log-Lik: -17372.478, Max-Change: 0.10585
Iteration: 23, Log-Lik: -17371.648, Max-Change: 0.11930
Iteration: 24, Log-Lik: -17370.923, Max-Change: 0.11379
Iteration: 25, Log-Lik: -17367.476, Max-Change: 0.06491
Iteration: 26, Log-Lik: -17366.915, Max-Change: 0.08832
Iteration: 27, Log-Lik: -17366.434, Max-Change: 0.08802
Iteration: 28, Log-Lik: -17363.856, Max-Change: 0.05093
Iteration: 29, Log-Lik: -17363.352, Max-Change: 0.06177
Iteration: 30, Log-Lik: -17362.859, Max-Change: 0.06205
Iteration: 31, Log-Lik: -17359.768, Max-Change: 0.07035
Iteration: 32, Log-Lik: -17359.018, Max-Change: 0.07115
Iteration: 33, Log-Lik: -17358.305, Max-Change: 0.07367
Iteration: 34, Log-Lik: -17355.063, Max-Change: 0.08918
Iteration: 35, Log-Lik: -17354.156, Max-Change: 0.09059
Iteration: 36, Log-Lik: -17353.198, Max-Change: 0.09200
Iteration: 37, Log-Lik: -17347.095, Max-Change: 0.10738
Iteration: 38, Log-Lik: -17345.847, Max-Change: 0.10794
Iteration: 39, Log-Lik: -17344.636, Max-Change: 0.10736
Iteration: 40, Log-Lik: -17337.051, Max-Change: 0.10016
Iteration: 41, Log-Lik: -17335.670, Max-Change: 0.09836
Iteration: 42, Log-Lik: -17334.378, Max-Change: 0.11890
Iteration: 43, Log-Lik: -17325.750, Max-Change: 0.14279
Iteration: 44, Log-Lik: -17323.983, Max-Change: 0.13516
Iteration: 45, Log-Lik: -17322.371, Max-Change: 0.15640
Iteration: 46, Log-Lik: -17311.126, Max-Change: 0.17685
Iteration: 47, Log-Lik: -17308.465, Max-Change: 0.21903
Iteration: 48, Log-Lik: -17305.411, Max-Change: 0.20508
Iteration: 49, Log-Lik: -17280.827, Max-Change: 0.19435
Iteration: 50, Log-Lik: -17273.182, Max-Change: 0.18999
Iteration: 51, Log-Lik: -17266.760, Max-Change: 0.17776
Iteration: 52, Log-Lik: -17261.540, Max-Change: 0.16254
Iteration: 53, Log-Lik: -17257.741, Max-Change: 0.13696
Iteration: 54, Log-Lik: -17255.220, Max-Change: 0.11311
Iteration: 55, Log-Lik: -17250.580, Max-Change: 0.03582
Iteration: 56, Log-Lik: -17249.921, Max-Change: 0.03476
Iteration: 57, Log-Lik: -17249.436, Max-Change: 0.03195
Iteration: 58, Log-Lik: -17247.545, Max-Change: 0.01294
Iteration: 59, Log-Lik: -17247.369, Max-Change: 0.01063
Iteration: 60, Log-Lik: -17247.261, Max-Change: 0.00971
Iteration: 61, Log-Lik: -17246.852, Max-Change: 0.00846
Iteration: 62, Log-Lik: -17246.804, Max-Change: 0.00577
Iteration: 63, Log-Lik: -17246.775, Max-Change: 0.00583
Iteration: 64, Log-Lik: -17246.672, Max-Change: 0.00503
Iteration: 65, Log-Lik: -17246.659, Max-Change: 0.00411
Iteration: 66, Log-Lik: -17246.653, Max-Change: 0.00367
Iteration: 67, Log-Lik: -17246.631, Max-Change: 0.00340
Iteration: 68, Log-Lik: -17246.626, Max-Change: 0.00169
Iteration: 69, Log-Lik: -17246.625, Max-Change: 0.00170
Iteration: 70, Log-Lik: -17246.619, Max-Change: 0.00163
Iteration: 71, Log-Lik: -17246.618, Max-Change: 0.00075
Iteration: 72, Log-Lik: -17246.618, Max-Change: 0.00077
Iteration: 73, Log-Lik: -17246.617, Max-Change: 0.00056
Iteration: 74, Log-Lik: -17246.616, Max-Change: 0.00059
Iteration: 75, Log-Lik: -17246.616, Max-Change: 0.00057
Iteration: 76, Log-Lik: -17246.615, Max-Change: 0.00059
Iteration: 77, Log-Lik: -17246.615, Max-Change: 0.00035
Iteration: 78, Log-Lik: -17246.615, Max-Change: 0.00035
Iteration: 79, Log-Lik: -17246.615, Max-Change: 0.00025
Iteration: 80, Log-Lik: -17246.615, Max-Change: 0.00026
Iteration: 81, Log-Lik: -17246.615, Max-Change: 0.00025
Iteration: 82, Log-Lik: -17246.615, Max-Change: 0.00029
Iteration: 83, Log-Lik: -17246.615, Max-Change: 0.00015
Iteration: 84, Log-Lik: -17246.615, Max-Change: 0.00015
Iteration: 85, Log-Lik: -17246.615, Max-Change: 0.00013
Iteration: 86, Log-Lik: -17246.615, Max-Change: 0.00013
Iteration: 87, Log-Lik: -17246.615, Max-Change: 0.00012
Iteration: 88, Log-Lik: -17246.615, Max-Change: 0.00013
anova(mod_mix, mod_mix2)
#>               AIC    SABIC       HQ      BIC    logLik     X2 df    p
#> mod_mix  34628.19 34720.06 34713.30 34856.65 -17271.09               
#> mod_mix2 34655.23 34828.29 34815.56 35085.60 -17246.62 48.957 38 0.11
coef(mod_mix2, simplify=TRUE)
#> $MIXTURE_1
#> $items
#>            a1      d g u
#> Item_1  0.517  0.672 0 1
#> Item_2  0.516  0.826 0 1
#> Item_3  0.533 -0.012 0 1
#> Item_4  0.387 -0.363 0 1
#> Item_5  0.452  0.551 0 1
#> Item_6  0.727 -1.905 0 1
#> Item_7  1.032  0.879 0 1
#> Item_8  0.744 -0.275 0 1
#> Item_9  0.900  0.037 0 1
#> Item_10 0.709 -0.777 0 1
#> Item_11 0.538 -0.190 0 1
#> Item_12 0.915  2.079 0 1
#> Item_13 0.729  0.690 0 1
#> Item_14 1.183  0.722 0 1
#> Item_15 0.812 -0.717 0 1
#> Item_16 0.582  0.843 0 1
#> Item_17 0.791 -0.953 0 1
#> Item_18 0.657 -0.290 0 1
#> Item_19 0.498  1.222 0 1
#> Item_20 0.468  0.304 0 1
#> 
#> $means
#> F1 
#>  0 
#> 
#> $cov
#>    F1
#> F1  1
#> 
#> $class_proportion
#>     pi
#>  0.349
#> 
#> 
#> $MIXTURE_2
#> $items
#>            a1      d g u
#> Item_1  1.118  0.710 0 1
#> Item_2  1.216  1.405 0 1
#> Item_3  1.244 -0.565 0 1
#> Item_4  1.684 -1.826 0 1
#> Item_5  1.669 -1.800 0 1
#> Item_6  1.473  2.151 0 1
#> Item_7  1.143 -0.510 0 1
#> Item_8  1.244  0.574 0 1
#> Item_9  1.272  0.507 0 1
#> Item_10 1.188 -0.183 0 1
#> Item_11 1.465  0.980 0 1
#> Item_12 1.403  2.208 0 1
#> Item_13 1.388  2.110 0 1
#> Item_14 1.062  1.599 0 1
#> Item_15 1.311  0.112 0 1
#> Item_16 1.191  0.410 0 1
#> Item_17 1.381 -0.387 0 1
#> Item_18 1.500 -1.798 0 1
#> Item_19 1.624  1.955 0 1
#> Item_20 1.353 -0.060 0 1
#> 
#> $means
#> F1 
#>  0 
#> 
#> $cov
#>    F1
#> F1  1
#> 
#> $class_proportion
#>     pi
#>  0.651
#> 
#> 
itemfit(mod_mix2)
#>       item   S_X2 df.S_X2 RMSEA.S_X2 p.S_X2
#> 1   Item_1 21.271      12      0.023  0.047
#> 2   Item_2 44.619      13      0.040  0.000
#> 3   Item_3 14.259      12      0.011  0.284
#> 4   Item_4  6.550      11      0.000  0.834
#> 5   Item_5 20.639      12      0.022  0.056
#> 6   Item_6 27.956      13      0.028  0.009
#> 7   Item_7  8.628      12      0.000  0.734
#> 8   Item_8 16.261      12      0.015  0.180
#> 9   Item_9 21.304      12      0.023  0.046
#> 10 Item_10 11.460      12      0.000  0.490
#> 11 Item_11  7.091      12      0.000  0.852
#> 12 Item_12 13.838      12      0.010  0.311
#> 13 Item_13 10.444      12      0.000  0.577
#> 14 Item_14 15.704      13      0.012  0.265
#> 15 Item_15  9.439      12      0.000  0.665
#> 16 Item_16 10.128      12      0.000  0.605
#> 17 Item_17 17.474      12      0.017  0.133
#> 18 Item_18 11.833      11      0.007  0.376
#> 19 Item_19  8.071      11      0.000  0.707
#> 20 Item_20 14.542      12      0.012  0.267

# Compare to single group
mod <- mirt(dat)
#> 
Iteration: 1, Log-Lik: -17656.266, Max-Change: 0.24251
Iteration: 2, Log-Lik: -17609.278, Max-Change: 0.08416
Iteration: 3, Log-Lik: -17601.999, Max-Change: 0.04309
Iteration: 4, Log-Lik: -17599.747, Max-Change: 0.02348
Iteration: 5, Log-Lik: -17598.900, Max-Change: 0.01470
Iteration: 6, Log-Lik: -17598.571, Max-Change: 0.00864
Iteration: 7, Log-Lik: -17598.398, Max-Change: 0.00338
Iteration: 8, Log-Lik: -17598.373, Max-Change: 0.00213
Iteration: 9, Log-Lik: -17598.362, Max-Change: 0.00150
Iteration: 10, Log-Lik: -17598.353, Max-Change: 0.00028
Iteration: 11, Log-Lik: -17598.353, Max-Change: 0.00017
Iteration: 12, Log-Lik: -17598.353, Max-Change: 0.00013
Iteration: 13, Log-Lik: -17598.352, Max-Change: 0.00008
anova(mod, mod_mix2)
#>               AIC    SABIC       HQ      BIC    logLik      X2 df p
#> mod      35276.70 35362.16 35355.88 35489.23 -17598.35             
#> mod_mix2 34655.23 34828.29 34815.56 35085.60 -17246.62 703.474 41 0

########################################
# Zero-inflated 2PL IRT model (Wall, Park, and Moustaki, 2015)

n <- 1000
nitems <- 20

a <- rep(2, nitems)
d <- rep(c(-2,-1,0,1,2), each=nitems/5)
zi_p <- 0.2 # Proportion of people in zero class

theta <- rnorm(n, 0, 1)
zeros <- matrix(0, n*zi_p, nitems)
nonzeros <- simdata(a, d, n*(1-zi_p), itemtype = '2PL',
                   Theta = as.matrix(theta[1:(n*(1-zi_p))]))
data <- rbind(nonzeros, zeros)

# define class with extreme theta but fixed item parameters
zi2PL <- "F = 1-20
          START [MIXTURE_1] = (GROUP, MEAN_1, -100), (GROUP, COV_11, .00001),
                              (1-20, a1, 1.0), (1-20, d, 0)
          FIXED [MIXTURE_1] = (GROUP, MEAN_1), (GROUP, COV_11),
                              (1-20, a1), (1-20, d)"

# define custom Theta integration grid that contains extreme theta + normal grid
technical <- list(customTheta = matrix(c(-100, seq(-6,6,length.out=61))))

# fit ZIM-IRT
zi2PL.fit <- multipleGroup(data, zi2PL, dentype = 'mixture-2', technical=technical)
#> 
Iteration: 1, Log-Lik: -8539.526, Max-Change: 0.82292
Iteration: 2, Log-Lik: -8136.091, Max-Change: 0.23545
Iteration: 3, Log-Lik: -8063.577, Max-Change: 0.16467
Iteration: 4, Log-Lik: -8027.427, Max-Change: 0.12979
Iteration: 5, Log-Lik: -8007.641, Max-Change: 0.08230
Iteration: 6, Log-Lik: -7995.219, Max-Change: 0.06600
Iteration: 7, Log-Lik: -7987.696, Max-Change: 0.05406
Iteration: 8, Log-Lik: -7982.201, Max-Change: 0.04014
Iteration: 9, Log-Lik: -7978.459, Max-Change: 0.03132
Iteration: 10, Log-Lik: -7969.333, Max-Change: 0.01633
Iteration: 11, Log-Lik: -7968.910, Max-Change: 0.01468
Iteration: 12, Log-Lik: -7968.570, Max-Change: 0.01311
Iteration: 13, Log-Lik: -7967.177, Max-Change: 0.01063
Iteration: 14, Log-Lik: -7967.078, Max-Change: 0.00641
Iteration: 15, Log-Lik: -7966.999, Max-Change: 0.00602
Iteration: 16, Log-Lik: -7966.673, Max-Change: 0.00716
Iteration: 17, Log-Lik: -7966.647, Max-Change: 0.00314
Iteration: 18, Log-Lik: -7966.629, Max-Change: 0.00304
Iteration: 19, Log-Lik: -7966.557, Max-Change: 0.00327
Iteration: 20, Log-Lik: -7966.550, Max-Change: 0.00189
Iteration: 21, Log-Lik: -7966.546, Max-Change: 0.00139
Iteration: 22, Log-Lik: -7966.530, Max-Change: 0.00196
Iteration: 23, Log-Lik: -7966.528, Max-Change: 0.00089
Iteration: 24, Log-Lik: -7966.527, Max-Change: 0.00075
Iteration: 25, Log-Lik: -7966.523, Max-Change: 0.00084
Iteration: 26, Log-Lik: -7966.523, Max-Change: 0.00048
Iteration: 27, Log-Lik: -7966.522, Max-Change: 0.00043
Iteration: 28, Log-Lik: -7966.521, Max-Change: 0.00038
Iteration: 29, Log-Lik: -7966.521, Max-Change: 0.00024
Iteration: 30, Log-Lik: -7966.520, Max-Change: 0.00022
Iteration: 31, Log-Lik: -7966.520, Max-Change: 0.00021
Iteration: 32, Log-Lik: -7966.520, Max-Change: 0.00013
Iteration: 33, Log-Lik: -7966.520, Max-Change: 0.00012
Iteration: 34, Log-Lik: -7966.520, Max-Change: 0.00009
coef(zi2PL.fit, simplify=TRUE)
#> $MIXTURE_1
#> $items
#>         a1 d g u
#> Item_1   1 0 0 1
#> Item_2   1 0 0 1
#> Item_3   1 0 0 1
#> Item_4   1 0 0 1
#> Item_5   1 0 0 1
#> Item_6   1 0 0 1
#> Item_7   1 0 0 1
#> Item_8   1 0 0 1
#> Item_9   1 0 0 1
#> Item_10  1 0 0 1
#> Item_11  1 0 0 1
#> Item_12  1 0 0 1
#> Item_13  1 0 0 1
#> Item_14  1 0 0 1
#> Item_15  1 0 0 1
#> Item_16  1 0 0 1
#> Item_17  1 0 0 1
#> Item_18  1 0 0 1
#> Item_19  1 0 0 1
#> Item_20  1 0 0 1
#> 
#> $means
#>    F 
#> -100 
#> 
#> $cov
#>   F
#> F 0
#> 
#> $class_proportion
#>     pi
#>  0.209
#> 
#> 
#> $MIXTURE_2
#> $items
#>            a1      d g u
#> Item_1  1.867 -2.089 0 1
#> Item_2  1.998 -1.979 0 1
#> Item_3  1.954 -1.932 0 1
#> Item_4  1.595 -1.841 0 1
#> Item_5  1.922 -0.986 0 1
#> Item_6  1.924 -0.926 0 1
#> Item_7  2.045 -1.209 0 1
#> Item_8  2.069 -1.005 0 1
#> Item_9  1.782  0.101 0 1
#> Item_10 1.942  0.195 0 1
#> Item_11 2.080  0.039 0 1
#> Item_12 1.956  0.039 0 1
#> Item_13 1.540  0.835 0 1
#> Item_14 2.047  1.092 0 1
#> Item_15 1.956  0.973 0 1
#> Item_16 1.807  1.026 0 1
#> Item_17 2.084  2.069 0 1
#> Item_18 1.917  2.153 0 1
#> Item_19 1.464  1.735 0 1
#> Item_20 1.739  1.920 0 1
#> 
#> $means
#> F 
#> 0 
#> 
#> $cov
#>   F
#> F 1
#> 
#> $class_proportion
#>     pi
#>  0.791
#> 
#> 

# classification estimates
pi_hat <- fscores(zi2PL.fit, method = 'classify')
head(pi_hat)
#>            CLASS_1 CLASS_2
#> [1,] 8.544142e-180       1
#> [2,]  2.267724e-14       1
#> [3,] 2.122840e-178       1
#> [4,] 4.509158e-210       1
#> [5,]  1.130538e-13       1
#> [6,] 9.974115e-149       1
tail(pi_hat)
#>           CLASS_1    CLASS_2
#>  [995,] 0.9243758 0.07562418
#>  [996,] 0.9243758 0.07562418
#>  [997,] 0.9243758 0.07562418
#>  [998,] 0.9243758 0.07562418
#>  [999,] 0.9243758 0.07562418
#> [1000,] 0.9243758 0.07562418

# EAP estimates (not useful for zip class)
fs <- fscores(zi2PL.fit)
head(fs)
#>           Class_1
#> [1,]  0.262140462
#> [2,] -1.762463343
#> [3,]  0.285984614
#> [4,]  0.562650718
#> [5,] -1.669323391
#> [6,]  0.005541674
tail(fs)
#>           Class_1
#>  [995,] -92.59647
#>  [996,] -92.59647
#>  [997,] -92.59647
#>  [998,] -92.59647
#>  [999,] -92.59647
#> [1000,] -92.59647

########################################
# Zero-inflated graded response model (Magnus and Garnier-Villarreal, 2022)

n <- 1000
nitems <- 20

a <- matrix(rlnorm(20,.2,.3))

# for the graded model, ensure that there is enough space between the intercepts,
# otherwise closer categories will not be selected often (minimum distance of 0.3 here)
diffs <- t(apply(matrix(runif(20*4, .3, 1), 20), 1, cumsum))
diffs <- -(diffs - rowMeans(diffs))
d <- diffs + rnorm(20)

zi_p <- 0.2 # Proportion of people in zero/lowest category class

theta <- rnorm(n, 0, 1)
zeros <- matrix(0, n*zi_p, nitems)
nonzeros <- simdata(a, d, n*(1-zi_p), itemtype = 'graded',
                    Theta = as.matrix(theta[1:(n*(1-zi_p))]))
data <- rbind(nonzeros, zeros)

# intercepts will be labelled as d1 through d4
apply(data, 2, table)
#>   Item_1 Item_2 Item_3 Item_4 Item_5 Item_6 Item_7 Item_8 Item_9 Item_10
#> 0    474    276    431    384    763    354    420    379    342     610
#> 1    128     61    107     26     69     99    140    137    116     114
#> 2     62    105    112     54     45     58    120    136    165      98
#> 3     89    135    159     87     37    135    118     70     68      34
#> 4    247    423    191    449     86    354    202    278    309     144
#>   Item_11 Item_12 Item_13 Item_14 Item_15 Item_16 Item_17 Item_18 Item_19
#> 0     393     756     668     605     463     321     683     664     406
#> 1     115     114      75     104      74      55      65      46      99
#> 2      54      62      55     113     119     123      58      46      66
#> 3     134      33      66      81      89     130      42      57      67
#> 4     304      35     136      97     255     371     152     187     362
#>   Item_20
#> 0     588
#> 1     103
#> 2      85
#> 3      50
#> 4     174

# ignoring zero inflation (bad idea)
modGRM <- mirt(data)
#> 
Iteration: 1, Log-Lik: -21731.412, Max-Change: 1.12735
Iteration: 2, Log-Lik: -21287.581, Max-Change: 0.65207
Iteration: 3, Log-Lik: -21009.010, Max-Change: 0.34612
Iteration: 4, Log-Lik: -20925.644, Max-Change: 0.25260
Iteration: 5, Log-Lik: -20872.458, Max-Change: 0.20459
Iteration: 6, Log-Lik: -20840.365, Max-Change: 0.24792
Iteration: 7, Log-Lik: -20818.687, Max-Change: 0.15104
Iteration: 8, Log-Lik: -20798.155, Max-Change: 0.12387
Iteration: 9, Log-Lik: -20786.740, Max-Change: 0.11341
Iteration: 10, Log-Lik: -20779.477, Max-Change: 0.09258
Iteration: 11, Log-Lik: -20773.892, Max-Change: 0.08368
Iteration: 12, Log-Lik: -20769.740, Max-Change: 0.07189
Iteration: 13, Log-Lik: -20761.554, Max-Change: 0.11159
Iteration: 14, Log-Lik: -20759.132, Max-Change: 0.03976
Iteration: 15, Log-Lik: -20757.786, Max-Change: 0.03170
Iteration: 16, Log-Lik: -20757.050, Max-Change: 0.05471
Iteration: 17, Log-Lik: -20756.501, Max-Change: 0.02871
Iteration: 18, Log-Lik: -20756.062, Max-Change: 0.02018
Iteration: 19, Log-Lik: -20755.685, Max-Change: 0.02663
Iteration: 20, Log-Lik: -20755.533, Max-Change: 0.01141
Iteration: 21, Log-Lik: -20755.387, Max-Change: 0.01722
Iteration: 22, Log-Lik: -20755.190, Max-Change: 0.01406
Iteration: 23, Log-Lik: -20755.116, Max-Change: 0.00651
Iteration: 24, Log-Lik: -20755.059, Max-Change: 0.00782
Iteration: 25, Log-Lik: -20754.809, Max-Change: 0.00324
Iteration: 26, Log-Lik: -20754.788, Max-Change: 0.00307
Iteration: 27, Log-Lik: -20754.774, Max-Change: 0.00273
Iteration: 28, Log-Lik: -20754.745, Max-Change: 0.00380
Iteration: 29, Log-Lik: -20754.709, Max-Change: 0.00183
Iteration: 30, Log-Lik: -20754.700, Max-Change: 0.00163
Iteration: 31, Log-Lik: -20754.657, Max-Change: 0.00217
Iteration: 32, Log-Lik: -20754.647, Max-Change: 0.00111
Iteration: 33, Log-Lik: -20754.642, Max-Change: 0.00264
Iteration: 34, Log-Lik: -20754.633, Max-Change: 0.00169
Iteration: 35, Log-Lik: -20754.627, Max-Change: 0.00099
Iteration: 36, Log-Lik: -20754.623, Max-Change: 0.00113
Iteration: 37, Log-Lik: -20754.611, Max-Change: 0.00248
Iteration: 38, Log-Lik: -20754.601, Max-Change: 0.00100
Iteration: 39, Log-Lik: -20754.597, Max-Change: 0.00100
Iteration: 40, Log-Lik: -20754.589, Max-Change: 0.00160
Iteration: 41, Log-Lik: -20754.585, Max-Change: 0.00196
Iteration: 42, Log-Lik: -20754.580, Max-Change: 0.00094
Iteration: 43, Log-Lik: -20754.578, Max-Change: 0.00082
Iteration: 44, Log-Lik: -20754.576, Max-Change: 0.00167
Iteration: 45, Log-Lik: -20754.573, Max-Change: 0.00119
Iteration: 46, Log-Lik: -20754.569, Max-Change: 0.00091
Iteration: 47, Log-Lik: -20754.567, Max-Change: 0.00086
Iteration: 48, Log-Lik: -20754.566, Max-Change: 0.00125
Iteration: 49, Log-Lik: -20754.563, Max-Change: 0.00097
Iteration: 50, Log-Lik: -20754.560, Max-Change: 0.00152
Iteration: 51, Log-Lik: -20754.557, Max-Change: 0.00052
Iteration: 52, Log-Lik: -20754.557, Max-Change: 0.00033
Iteration: 53, Log-Lik: -20754.557, Max-Change: 0.00044
Iteration: 54, Log-Lik: -20754.556, Max-Change: 0.00043
Iteration: 55, Log-Lik: -20754.556, Max-Change: 0.00035
Iteration: 56, Log-Lik: -20754.556, Max-Change: 0.00033
Iteration: 57, Log-Lik: -20754.556, Max-Change: 0.00053
Iteration: 58, Log-Lik: -20754.555, Max-Change: 0.00032
Iteration: 59, Log-Lik: -20754.555, Max-Change: 0.00052
Iteration: 60, Log-Lik: -20754.555, Max-Change: 0.00054
Iteration: 61, Log-Lik: -20754.555, Max-Change: 0.00042
Iteration: 62, Log-Lik: -20754.555, Max-Change: 0.00041
Iteration: 63, Log-Lik: -20754.554, Max-Change: 0.00064
Iteration: 64, Log-Lik: -20754.554, Max-Change: 0.00031
Iteration: 65, Log-Lik: -20754.554, Max-Change: 0.00051
Iteration: 66, Log-Lik: -20754.554, Max-Change: 0.00053
Iteration: 67, Log-Lik: -20754.554, Max-Change: 0.00041
Iteration: 68, Log-Lik: -20754.553, Max-Change: 0.00041
Iteration: 69, Log-Lik: -20754.553, Max-Change: 0.00062
Iteration: 70, Log-Lik: -20754.553, Max-Change: 0.00031
Iteration: 71, Log-Lik: -20754.553, Max-Change: 0.00050
Iteration: 72, Log-Lik: -20754.552, Max-Change: 0.00052
Iteration: 73, Log-Lik: -20754.552, Max-Change: 0.00040
Iteration: 74, Log-Lik: -20754.552, Max-Change: 0.00040
Iteration: 75, Log-Lik: -20754.552, Max-Change: 0.00061
Iteration: 76, Log-Lik: -20754.552, Max-Change: 0.00030
Iteration: 77, Log-Lik: -20754.551, Max-Change: 0.00049
Iteration: 78, Log-Lik: -20754.551, Max-Change: 0.00051
Iteration: 79, Log-Lik: -20754.551, Max-Change: 0.00039
Iteration: 80, Log-Lik: -20754.551, Max-Change: 0.00039
Iteration: 81, Log-Lik: -20754.551, Max-Change: 0.00060
Iteration: 82, Log-Lik: -20754.551, Max-Change: 0.00029
Iteration: 83, Log-Lik: -20754.550, Max-Change: 0.00048
Iteration: 84, Log-Lik: -20754.550, Max-Change: 0.00050
Iteration: 85, Log-Lik: -20754.550, Max-Change: 0.00039
Iteration: 86, Log-Lik: -20754.550, Max-Change: 0.00038
Iteration: 87, Log-Lik: -20754.550, Max-Change: 0.00059
Iteration: 88, Log-Lik: -20754.549, Max-Change: 0.00029
Iteration: 89, Log-Lik: -20754.549, Max-Change: 0.00047
Iteration: 90, Log-Lik: -20754.549, Max-Change: 0.00049
Iteration: 91, Log-Lik: -20754.549, Max-Change: 0.00038
Iteration: 92, Log-Lik: -20754.549, Max-Change: 0.00037
Iteration: 93, Log-Lik: -20754.549, Max-Change: 0.00058
Iteration: 94, Log-Lik: -20754.548, Max-Change: 0.00028
Iteration: 95, Log-Lik: -20754.548, Max-Change: 0.00046
Iteration: 96, Log-Lik: -20754.548, Max-Change: 0.00048
Iteration: 97, Log-Lik: -20754.548, Max-Change: 0.00037
Iteration: 98, Log-Lik: -20754.548, Max-Change: 0.00037
Iteration: 99, Log-Lik: -20754.547, Max-Change: 0.00057
Iteration: 100, Log-Lik: -20754.547, Max-Change: 0.00028
Iteration: 101, Log-Lik: -20754.547, Max-Change: 0.00045
Iteration: 102, Log-Lik: -20754.547, Max-Change: 0.00047
Iteration: 103, Log-Lik: -20754.547, Max-Change: 0.00037
Iteration: 104, Log-Lik: -20754.547, Max-Change: 0.00036
Iteration: 105, Log-Lik: -20754.546, Max-Change: 0.00056
Iteration: 106, Log-Lik: -20754.546, Max-Change: 0.00027
Iteration: 107, Log-Lik: -20754.546, Max-Change: 0.00045
Iteration: 108, Log-Lik: -20754.546, Max-Change: 0.00046
Iteration: 109, Log-Lik: -20754.546, Max-Change: 0.00036
Iteration: 110, Log-Lik: -20754.546, Max-Change: 0.00036
Iteration: 111, Log-Lik: -20754.545, Max-Change: 0.00055
Iteration: 112, Log-Lik: -20754.545, Max-Change: 0.00027
Iteration: 113, Log-Lik: -20754.545, Max-Change: 0.00044
Iteration: 114, Log-Lik: -20754.545, Max-Change: 0.00046
Iteration: 115, Log-Lik: -20754.545, Max-Change: 0.00035
Iteration: 116, Log-Lik: -20754.545, Max-Change: 0.00035
Iteration: 117, Log-Lik: -20754.545, Max-Change: 0.00054
Iteration: 118, Log-Lik: -20754.544, Max-Change: 0.00026
Iteration: 119, Log-Lik: -20754.544, Max-Change: 0.00043
Iteration: 120, Log-Lik: -20754.544, Max-Change: 0.00045
Iteration: 121, Log-Lik: -20754.544, Max-Change: 0.00035
Iteration: 122, Log-Lik: -20754.544, Max-Change: 0.00034
Iteration: 123, Log-Lik: -20754.544, Max-Change: 0.00053
Iteration: 124, Log-Lik: -20754.544, Max-Change: 0.00026
Iteration: 125, Log-Lik: -20754.543, Max-Change: 0.00042
Iteration: 126, Log-Lik: -20754.543, Max-Change: 0.00044
Iteration: 127, Log-Lik: -20754.543, Max-Change: 0.00034
Iteration: 128, Log-Lik: -20754.543, Max-Change: 0.00034
Iteration: 129, Log-Lik: -20754.543, Max-Change: 0.00052
Iteration: 130, Log-Lik: -20754.543, Max-Change: 0.00026
Iteration: 131, Log-Lik: -20754.542, Max-Change: 0.00042
Iteration: 132, Log-Lik: -20754.542, Max-Change: 0.00044
Iteration: 133, Log-Lik: -20754.542, Max-Change: 0.00034
Iteration: 134, Log-Lik: -20754.542, Max-Change: 0.00033
Iteration: 135, Log-Lik: -20754.542, Max-Change: 0.00051
Iteration: 136, Log-Lik: -20754.542, Max-Change: 0.00025
Iteration: 137, Log-Lik: -20754.542, Max-Change: 0.00041
Iteration: 138, Log-Lik: -20754.542, Max-Change: 0.00043
Iteration: 139, Log-Lik: -20754.541, Max-Change: 0.00033
Iteration: 140, Log-Lik: -20754.541, Max-Change: 0.00033
Iteration: 141, Log-Lik: -20754.541, Max-Change: 0.00050
Iteration: 142, Log-Lik: -20754.541, Max-Change: 0.00025
Iteration: 143, Log-Lik: -20754.541, Max-Change: 0.00040
Iteration: 144, Log-Lik: -20754.541, Max-Change: 0.00042
Iteration: 145, Log-Lik: -20754.541, Max-Change: 0.00033
Iteration: 146, Log-Lik: -20754.540, Max-Change: 0.00032
Iteration: 147, Log-Lik: -20754.540, Max-Change: 0.00050
Iteration: 148, Log-Lik: -20754.540, Max-Change: 0.00025
Iteration: 149, Log-Lik: -20754.540, Max-Change: 0.00040
Iteration: 150, Log-Lik: -20754.540, Max-Change: 0.00042
Iteration: 151, Log-Lik: -20754.540, Max-Change: 0.00032
Iteration: 152, Log-Lik: -20754.540, Max-Change: 0.00032
Iteration: 153, Log-Lik: -20754.540, Max-Change: 0.00049
Iteration: 154, Log-Lik: -20754.539, Max-Change: 0.00024
Iteration: 155, Log-Lik: -20754.539, Max-Change: 0.00039
Iteration: 156, Log-Lik: -20754.539, Max-Change: 0.00041
Iteration: 157, Log-Lik: -20754.539, Max-Change: 0.00032
Iteration: 158, Log-Lik: -20754.539, Max-Change: 0.00031
Iteration: 159, Log-Lik: -20754.539, Max-Change: 0.00048
Iteration: 160, Log-Lik: -20754.539, Max-Change: 0.00024
Iteration: 161, Log-Lik: -20754.539, Max-Change: 0.00039
Iteration: 162, Log-Lik: -20754.538, Max-Change: 0.00040
Iteration: 163, Log-Lik: -20754.538, Max-Change: 0.00031
Iteration: 164, Log-Lik: -20754.538, Max-Change: 0.00031
Iteration: 165, Log-Lik: -20754.538, Max-Change: 0.00047
Iteration: 166, Log-Lik: -20754.538, Max-Change: 0.00023
Iteration: 167, Log-Lik: -20754.538, Max-Change: 0.00038
Iteration: 168, Log-Lik: -20754.538, Max-Change: 0.00040
Iteration: 169, Log-Lik: -20754.538, Max-Change: 0.00031
Iteration: 170, Log-Lik: -20754.537, Max-Change: 0.00030
Iteration: 171, Log-Lik: -20754.537, Max-Change: 0.00047
Iteration: 172, Log-Lik: -20754.537, Max-Change: 0.00023
Iteration: 173, Log-Lik: -20754.537, Max-Change: 0.00037
Iteration: 174, Log-Lik: -20754.537, Max-Change: 0.00039
Iteration: 175, Log-Lik: -20754.537, Max-Change: 0.00030
Iteration: 176, Log-Lik: -20754.537, Max-Change: 0.00030
Iteration: 177, Log-Lik: -20754.537, Max-Change: 0.00046
Iteration: 178, Log-Lik: -20754.537, Max-Change: 0.00023
Iteration: 179, Log-Lik: -20754.536, Max-Change: 0.00037
Iteration: 180, Log-Lik: -20754.536, Max-Change: 0.00039
Iteration: 181, Log-Lik: -20754.536, Max-Change: 0.00030
Iteration: 182, Log-Lik: -20754.536, Max-Change: 0.00030
Iteration: 183, Log-Lik: -20754.536, Max-Change: 0.00045
Iteration: 184, Log-Lik: -20754.536, Max-Change: 0.00022
Iteration: 185, Log-Lik: -20754.536, Max-Change: 0.00036
Iteration: 186, Log-Lik: -20754.536, Max-Change: 0.00038
Iteration: 187, Log-Lik: -20754.536, Max-Change: 0.00029
Iteration: 188, Log-Lik: -20754.535, Max-Change: 0.00029
Iteration: 189, Log-Lik: -20754.535, Max-Change: 0.00045
Iteration: 190, Log-Lik: -20754.535, Max-Change: 0.00022
Iteration: 191, Log-Lik: -20754.535, Max-Change: 0.00036
Iteration: 192, Log-Lik: -20754.535, Max-Change: 0.00038
Iteration: 193, Log-Lik: -20754.535, Max-Change: 0.00029
Iteration: 194, Log-Lik: -20754.535, Max-Change: 0.00029
Iteration: 195, Log-Lik: -20754.535, Max-Change: 0.00044
Iteration: 196, Log-Lik: -20754.535, Max-Change: 0.00022
Iteration: 197, Log-Lik: -20754.534, Max-Change: 0.00035
Iteration: 198, Log-Lik: -20754.534, Max-Change: 0.00037
Iteration: 199, Log-Lik: -20754.534, Max-Change: 0.00028
Iteration: 200, Log-Lik: -20754.534, Max-Change: 0.00028
Iteration: 201, Log-Lik: -20754.534, Max-Change: 0.00043
Iteration: 202, Log-Lik: -20754.534, Max-Change: 0.00022
Iteration: 203, Log-Lik: -20754.534, Max-Change: 0.00035
Iteration: 204, Log-Lik: -20754.534, Max-Change: 0.00036
Iteration: 205, Log-Lik: -20754.534, Max-Change: 0.00028
Iteration: 206, Log-Lik: -20754.534, Max-Change: 0.00028
Iteration: 207, Log-Lik: -20754.533, Max-Change: 0.00043
Iteration: 208, Log-Lik: -20754.533, Max-Change: 0.00021
Iteration: 209, Log-Lik: -20754.533, Max-Change: 0.00034
Iteration: 210, Log-Lik: -20754.533, Max-Change: 0.00036
Iteration: 211, Log-Lik: -20754.533, Max-Change: 0.00028
Iteration: 212, Log-Lik: -20754.533, Max-Change: 0.00028
Iteration: 213, Log-Lik: -20754.533, Max-Change: 0.00042
Iteration: 214, Log-Lik: -20754.533, Max-Change: 0.00021
Iteration: 215, Log-Lik: -20754.533, Max-Change: 0.00034
Iteration: 216, Log-Lik: -20754.533, Max-Change: 0.00035
Iteration: 217, Log-Lik: -20754.533, Max-Change: 0.00027
Iteration: 218, Log-Lik: -20754.532, Max-Change: 0.00027
Iteration: 219, Log-Lik: -20754.532, Max-Change: 0.00042
Iteration: 220, Log-Lik: -20754.532, Max-Change: 0.00021
Iteration: 221, Log-Lik: -20754.532, Max-Change: 0.00033
Iteration: 222, Log-Lik: -20754.532, Max-Change: 0.00035
Iteration: 223, Log-Lik: -20754.532, Max-Change: 0.00027
Iteration: 224, Log-Lik: -20754.532, Max-Change: 0.00027
Iteration: 225, Log-Lik: -20754.532, Max-Change: 0.00041
Iteration: 226, Log-Lik: -20754.532, Max-Change: 0.00020
Iteration: 227, Log-Lik: -20754.532, Max-Change: 0.00033
Iteration: 228, Log-Lik: -20754.532, Max-Change: 0.00035
Iteration: 229, Log-Lik: -20754.531, Max-Change: 0.00026
Iteration: 230, Log-Lik: -20754.531, Max-Change: 0.00026
Iteration: 231, Log-Lik: -20754.531, Max-Change: 0.00040
Iteration: 232, Log-Lik: -20754.531, Max-Change: 0.00020
Iteration: 233, Log-Lik: -20754.531, Max-Change: 0.00032
Iteration: 234, Log-Lik: -20754.531, Max-Change: 0.00034
Iteration: 235, Log-Lik: -20754.531, Max-Change: 0.00026
Iteration: 236, Log-Lik: -20754.531, Max-Change: 0.00026
Iteration: 237, Log-Lik: -20754.531, Max-Change: 0.00040
Iteration: 238, Log-Lik: -20754.531, Max-Change: 0.00020
Iteration: 239, Log-Lik: -20754.531, Max-Change: 0.00032
Iteration: 240, Log-Lik: -20754.531, Max-Change: 0.00034
Iteration: 241, Log-Lik: -20754.530, Max-Change: 0.00026
Iteration: 242, Log-Lik: -20754.530, Max-Change: 0.00026
Iteration: 243, Log-Lik: -20754.530, Max-Change: 0.00039
Iteration: 244, Log-Lik: -20754.530, Max-Change: 0.00020
Iteration: 245, Log-Lik: -20754.530, Max-Change: 0.00031
Iteration: 246, Log-Lik: -20754.530, Max-Change: 0.00033
Iteration: 247, Log-Lik: -20754.530, Max-Change: 0.00025
Iteration: 248, Log-Lik: -20754.530, Max-Change: 0.00025
Iteration: 249, Log-Lik: -20754.530, Max-Change: 0.00039
Iteration: 250, Log-Lik: -20754.530, Max-Change: 0.00019
Iteration: 251, Log-Lik: -20754.530, Max-Change: 0.00031
Iteration: 252, Log-Lik: -20754.530, Max-Change: 0.00033
Iteration: 253, Log-Lik: -20754.529, Max-Change: 0.00025
Iteration: 254, Log-Lik: -20754.529, Max-Change: 0.00025
Iteration: 255, Log-Lik: -20754.529, Max-Change: 0.00038
Iteration: 256, Log-Lik: -20754.529, Max-Change: 0.00019
Iteration: 257, Log-Lik: -20754.529, Max-Change: 0.00031
Iteration: 258, Log-Lik: -20754.529, Max-Change: 0.00032
Iteration: 259, Log-Lik: -20754.529, Max-Change: 0.00025
Iteration: 260, Log-Lik: -20754.529, Max-Change: 0.00025
Iteration: 261, Log-Lik: -20754.529, Max-Change: 0.00038
Iteration: 262, Log-Lik: -20754.529, Max-Change: 0.00019
Iteration: 263, Log-Lik: -20754.529, Max-Change: 0.00030
Iteration: 264, Log-Lik: -20754.529, Max-Change: 0.00032
Iteration: 265, Log-Lik: -20754.529, Max-Change: 0.00024
Iteration: 266, Log-Lik: -20754.528, Max-Change: 0.00024
Iteration: 267, Log-Lik: -20754.528, Max-Change: 0.00037
Iteration: 268, Log-Lik: -20754.528, Max-Change: 0.00019
Iteration: 269, Log-Lik: -20754.528, Max-Change: 0.00030
Iteration: 270, Log-Lik: -20754.528, Max-Change: 0.00031
Iteration: 271, Log-Lik: -20754.528, Max-Change: 0.00024
Iteration: 272, Log-Lik: -20754.528, Max-Change: 0.00024
Iteration: 273, Log-Lik: -20754.528, Max-Change: 0.00037
Iteration: 274, Log-Lik: -20754.528, Max-Change: 0.00018
Iteration: 275, Log-Lik: -20754.528, Max-Change: 0.00029
Iteration: 276, Log-Lik: -20754.528, Max-Change: 0.00031
Iteration: 277, Log-Lik: -20754.528, Max-Change: 0.00024
Iteration: 278, Log-Lik: -20754.528, Max-Change: 0.00024
Iteration: 279, Log-Lik: -20754.527, Max-Change: 0.00036
Iteration: 280, Log-Lik: -20754.527, Max-Change: 0.00018
Iteration: 281, Log-Lik: -20754.527, Max-Change: 0.00029
Iteration: 282, Log-Lik: -20754.527, Max-Change: 0.00031
Iteration: 283, Log-Lik: -20754.527, Max-Change: 0.00023
Iteration: 284, Log-Lik: -20754.527, Max-Change: 0.00023
Iteration: 285, Log-Lik: -20754.527, Max-Change: 0.00036
Iteration: 286, Log-Lik: -20754.527, Max-Change: 0.00018
Iteration: 287, Log-Lik: -20754.527, Max-Change: 0.00029
Iteration: 288, Log-Lik: -20754.527, Max-Change: 0.00030
Iteration: 289, Log-Lik: -20754.527, Max-Change: 0.00023
Iteration: 290, Log-Lik: -20754.527, Max-Change: 0.00023
Iteration: 291, Log-Lik: -20754.527, Max-Change: 0.00035
Iteration: 292, Log-Lik: -20754.527, Max-Change: 0.00018
Iteration: 293, Log-Lik: -20754.527, Max-Change: 0.00028
Iteration: 294, Log-Lik: -20754.526, Max-Change: 0.00030
Iteration: 295, Log-Lik: -20754.526, Max-Change: 0.00023
Iteration: 296, Log-Lik: -20754.526, Max-Change: 0.00023
Iteration: 297, Log-Lik: -20754.526, Max-Change: 0.00035
Iteration: 298, Log-Lik: -20754.526, Max-Change: 0.00017
Iteration: 299, Log-Lik: -20754.526, Max-Change: 0.00028
Iteration: 300, Log-Lik: -20754.526, Max-Change: 0.00029
Iteration: 301, Log-Lik: -20754.526, Max-Change: 0.00022
Iteration: 302, Log-Lik: -20754.526, Max-Change: 0.00023
Iteration: 303, Log-Lik: -20754.526, Max-Change: 0.00034
Iteration: 304, Log-Lik: -20754.526, Max-Change: 0.00017
Iteration: 305, Log-Lik: -20754.526, Max-Change: 0.00027
Iteration: 306, Log-Lik: -20754.526, Max-Change: 0.00029
Iteration: 307, Log-Lik: -20754.526, Max-Change: 0.00022
Iteration: 308, Log-Lik: -20754.526, Max-Change: 0.00022
Iteration: 309, Log-Lik: -20754.526, Max-Change: 0.00034
Iteration: 310, Log-Lik: -20754.525, Max-Change: 0.00017
Iteration: 311, Log-Lik: -20754.525, Max-Change: 0.00027
Iteration: 312, Log-Lik: -20754.525, Max-Change: 0.00029
Iteration: 313, Log-Lik: -20754.525, Max-Change: 0.00022
Iteration: 314, Log-Lik: -20754.525, Max-Change: 0.00022
Iteration: 315, Log-Lik: -20754.525, Max-Change: 0.00033
Iteration: 316, Log-Lik: -20754.525, Max-Change: 0.00017
Iteration: 317, Log-Lik: -20754.525, Max-Change: 0.00027
Iteration: 318, Log-Lik: -20754.525, Max-Change: 0.00028
Iteration: 319, Log-Lik: -20754.525, Max-Change: 0.00022
Iteration: 320, Log-Lik: -20754.525, Max-Change: 0.00022
Iteration: 321, Log-Lik: -20754.525, Max-Change: 0.00033
Iteration: 322, Log-Lik: -20754.525, Max-Change: 0.00017
Iteration: 323, Log-Lik: -20754.525, Max-Change: 0.00026
Iteration: 324, Log-Lik: -20754.525, Max-Change: 0.00028
Iteration: 325, Log-Lik: -20754.525, Max-Change: 0.00021
Iteration: 326, Log-Lik: -20754.524, Max-Change: 0.00021
Iteration: 327, Log-Lik: -20754.524, Max-Change: 0.00033
Iteration: 328, Log-Lik: -20754.524, Max-Change: 0.00016
Iteration: 329, Log-Lik: -20754.524, Max-Change: 0.00026
Iteration: 330, Log-Lik: -20754.524, Max-Change: 0.00028
Iteration: 331, Log-Lik: -20754.524, Max-Change: 0.00021
Iteration: 332, Log-Lik: -20754.524, Max-Change: 0.00021
Iteration: 333, Log-Lik: -20754.524, Max-Change: 0.00032
Iteration: 334, Log-Lik: -20754.524, Max-Change: 0.00016
Iteration: 335, Log-Lik: -20754.524, Max-Change: 0.00026
Iteration: 336, Log-Lik: -20754.524, Max-Change: 0.00027
Iteration: 337, Log-Lik: -20754.524, Max-Change: 0.00021
Iteration: 338, Log-Lik: -20754.524, Max-Change: 0.00021
Iteration: 339, Log-Lik: -20754.524, Max-Change: 0.00032
Iteration: 340, Log-Lik: -20754.524, Max-Change: 0.00016
Iteration: 341, Log-Lik: -20754.524, Max-Change: 0.00025
Iteration: 342, Log-Lik: -20754.524, Max-Change: 0.00027
Iteration: 343, Log-Lik: -20754.524, Max-Change: 0.00020
Iteration: 344, Log-Lik: -20754.524, Max-Change: 0.00021
Iteration: 345, Log-Lik: -20754.523, Max-Change: 0.00031
Iteration: 346, Log-Lik: -20754.523, Max-Change: 0.00016
Iteration: 347, Log-Lik: -20754.523, Max-Change: 0.00025
Iteration: 348, Log-Lik: -20754.523, Max-Change: 0.00026
Iteration: 349, Log-Lik: -20754.523, Max-Change: 0.00020
Iteration: 350, Log-Lik: -20754.523, Max-Change: 0.00020
Iteration: 351, Log-Lik: -20754.523, Max-Change: 0.00031
Iteration: 352, Log-Lik: -20754.523, Max-Change: 0.00016
Iteration: 353, Log-Lik: -20754.523, Max-Change: 0.00025
Iteration: 354, Log-Lik: -20754.523, Max-Change: 0.00026
Iteration: 355, Log-Lik: -20754.523, Max-Change: 0.00020
Iteration: 356, Log-Lik: -20754.523, Max-Change: 0.00020
Iteration: 357, Log-Lik: -20754.523, Max-Change: 0.00030
Iteration: 358, Log-Lik: -20754.523, Max-Change: 0.00015
Iteration: 359, Log-Lik: -20754.523, Max-Change: 0.00024
Iteration: 360, Log-Lik: -20754.523, Max-Change: 0.00026
Iteration: 361, Log-Lik: -20754.523, Max-Change: 0.00020
Iteration: 362, Log-Lik: -20754.523, Max-Change: 0.00020
Iteration: 363, Log-Lik: -20754.523, Max-Change: 0.00030
Iteration: 364, Log-Lik: -20754.522, Max-Change: 0.00015
Iteration: 365, Log-Lik: -20754.522, Max-Change: 0.00024
Iteration: 366, Log-Lik: -20754.522, Max-Change: 0.00025
Iteration: 367, Log-Lik: -20754.522, Max-Change: 0.00019
Iteration: 368, Log-Lik: -20754.522, Max-Change: 0.00020
Iteration: 369, Log-Lik: -20754.522, Max-Change: 0.00030
Iteration: 370, Log-Lik: -20754.522, Max-Change: 0.00015
Iteration: 371, Log-Lik: -20754.522, Max-Change: 0.00024
Iteration: 372, Log-Lik: -20754.522, Max-Change: 0.00025
Iteration: 373, Log-Lik: -20754.522, Max-Change: 0.00019
Iteration: 374, Log-Lik: -20754.522, Max-Change: 0.00019
Iteration: 375, Log-Lik: -20754.522, Max-Change: 0.00029
Iteration: 376, Log-Lik: -20754.522, Max-Change: 0.00015
Iteration: 377, Log-Lik: -20754.522, Max-Change: 0.00023
Iteration: 378, Log-Lik: -20754.522, Max-Change: 0.00025
Iteration: 379, Log-Lik: -20754.522, Max-Change: 0.00019
Iteration: 380, Log-Lik: -20754.522, Max-Change: 0.00019
Iteration: 381, Log-Lik: -20754.522, Max-Change: 0.00029
Iteration: 382, Log-Lik: -20754.522, Max-Change: 0.00015
Iteration: 383, Log-Lik: -20754.522, Max-Change: 0.00023
Iteration: 384, Log-Lik: -20754.522, Max-Change: 0.00024
Iteration: 385, Log-Lik: -20754.522, Max-Change: 0.00019
Iteration: 386, Log-Lik: -20754.521, Max-Change: 0.00019
Iteration: 387, Log-Lik: -20754.521, Max-Change: 0.00028
Iteration: 388, Log-Lik: -20754.521, Max-Change: 0.00014
Iteration: 389, Log-Lik: -20754.521, Max-Change: 0.00023
Iteration: 390, Log-Lik: -20754.521, Max-Change: 0.00024
Iteration: 391, Log-Lik: -20754.521, Max-Change: 0.00018
Iteration: 392, Log-Lik: -20754.521, Max-Change: 0.00019
Iteration: 393, Log-Lik: -20754.521, Max-Change: 0.00028
Iteration: 394, Log-Lik: -20754.521, Max-Change: 0.00014
Iteration: 395, Log-Lik: -20754.521, Max-Change: 0.00023
Iteration: 396, Log-Lik: -20754.521, Max-Change: 0.00024
Iteration: 397, Log-Lik: -20754.521, Max-Change: 0.00018
Iteration: 398, Log-Lik: -20754.521, Max-Change: 0.00018
Iteration: 399, Log-Lik: -20754.521, Max-Change: 0.00028
Iteration: 400, Log-Lik: -20754.521, Max-Change: 0.00014
Iteration: 401, Log-Lik: -20754.521, Max-Change: 0.00022
Iteration: 402, Log-Lik: -20754.521, Max-Change: 0.00024
Iteration: 403, Log-Lik: -20754.521, Max-Change: 0.00018
Iteration: 404, Log-Lik: -20754.521, Max-Change: 0.00018
Iteration: 405, Log-Lik: -20754.521, Max-Change: 0.00027
Iteration: 406, Log-Lik: -20754.521, Max-Change: 0.00014
Iteration: 407, Log-Lik: -20754.521, Max-Change: 0.00022
Iteration: 408, Log-Lik: -20754.521, Max-Change: 0.00023
Iteration: 409, Log-Lik: -20754.521, Max-Change: 0.00018
Iteration: 410, Log-Lik: -20754.520, Max-Change: 0.00018
Iteration: 411, Log-Lik: -20754.520, Max-Change: 0.00027
Iteration: 412, Log-Lik: -20754.520, Max-Change: 0.00014
Iteration: 413, Log-Lik: -20754.520, Max-Change: 0.00022
Iteration: 414, Log-Lik: -20754.520, Max-Change: 0.00023
Iteration: 415, Log-Lik: -20754.520, Max-Change: 0.00017
Iteration: 416, Log-Lik: -20754.520, Max-Change: 0.00018
Iteration: 417, Log-Lik: -20754.520, Max-Change: 0.00027
Iteration: 418, Log-Lik: -20754.520, Max-Change: 0.00013
Iteration: 419, Log-Lik: -20754.520, Max-Change: 0.00021
Iteration: 420, Log-Lik: -20754.520, Max-Change: 0.00023
Iteration: 421, Log-Lik: -20754.520, Max-Change: 0.00017
Iteration: 422, Log-Lik: -20754.520, Max-Change: 0.00017
Iteration: 423, Log-Lik: -20754.520, Max-Change: 0.00026
Iteration: 424, Log-Lik: -20754.520, Max-Change: 0.00013
Iteration: 425, Log-Lik: -20754.520, Max-Change: 0.00021
Iteration: 426, Log-Lik: -20754.520, Max-Change: 0.00022
Iteration: 427, Log-Lik: -20754.520, Max-Change: 0.00017
Iteration: 428, Log-Lik: -20754.520, Max-Change: 0.00017
Iteration: 429, Log-Lik: -20754.520, Max-Change: 0.00026
Iteration: 430, Log-Lik: -20754.520, Max-Change: 0.00013
Iteration: 431, Log-Lik: -20754.520, Max-Change: 0.00021
Iteration: 432, Log-Lik: -20754.520, Max-Change: 0.00022
Iteration: 433, Log-Lik: -20754.520, Max-Change: 0.00017
Iteration: 434, Log-Lik: -20754.520, Max-Change: 0.00017
Iteration: 435, Log-Lik: -20754.520, Max-Change: 0.00026
Iteration: 436, Log-Lik: -20754.520, Max-Change: 0.00013
Iteration: 437, Log-Lik: -20754.519, Max-Change: 0.00021
Iteration: 438, Log-Lik: -20754.519, Max-Change: 0.00022
Iteration: 439, Log-Lik: -20754.519, Max-Change: 0.00017
Iteration: 440, Log-Lik: -20754.519, Max-Change: 0.00017
Iteration: 441, Log-Lik: -20754.519, Max-Change: 0.00025
Iteration: 442, Log-Lik: -20754.519, Max-Change: 0.00013
Iteration: 443, Log-Lik: -20754.519, Max-Change: 0.00020
Iteration: 444, Log-Lik: -20754.519, Max-Change: 0.00022
Iteration: 445, Log-Lik: -20754.519, Max-Change: 0.00016
Iteration: 446, Log-Lik: -20754.519, Max-Change: 0.00017
Iteration: 447, Log-Lik: -20754.519, Max-Change: 0.00025
Iteration: 448, Log-Lik: -20754.519, Max-Change: 0.00013
Iteration: 449, Log-Lik: -20754.519, Max-Change: 0.00020
Iteration: 450, Log-Lik: -20754.519, Max-Change: 0.00021
Iteration: 451, Log-Lik: -20754.519, Max-Change: 0.00016
Iteration: 452, Log-Lik: -20754.519, Max-Change: 0.00016
Iteration: 453, Log-Lik: -20754.519, Max-Change: 0.00025
Iteration: 454, Log-Lik: -20754.519, Max-Change: 0.00012
Iteration: 455, Log-Lik: -20754.519, Max-Change: 0.00020
Iteration: 456, Log-Lik: -20754.519, Max-Change: 0.00021
Iteration: 457, Log-Lik: -20754.519, Max-Change: 0.00016
Iteration: 458, Log-Lik: -20754.519, Max-Change: 0.00016
Iteration: 459, Log-Lik: -20754.519, Max-Change: 0.00024
Iteration: 460, Log-Lik: -20754.519, Max-Change: 0.00012
Iteration: 461, Log-Lik: -20754.519, Max-Change: 0.00019
Iteration: 462, Log-Lik: -20754.519, Max-Change: 0.00021
Iteration: 463, Log-Lik: -20754.519, Max-Change: 0.00016
Iteration: 464, Log-Lik: -20754.519, Max-Change: 0.00016
Iteration: 465, Log-Lik: -20754.519, Max-Change: 0.00024
Iteration: 466, Log-Lik: -20754.519, Max-Change: 0.00012
Iteration: 467, Log-Lik: -20754.518, Max-Change: 0.00019
Iteration: 468, Log-Lik: -20754.518, Max-Change: 0.00020
Iteration: 469, Log-Lik: -20754.518, Max-Change: 0.00015
Iteration: 470, Log-Lik: -20754.518, Max-Change: 0.00016
Iteration: 471, Log-Lik: -20754.518, Max-Change: 0.00024
Iteration: 472, Log-Lik: -20754.518, Max-Change: 0.00012
Iteration: 473, Log-Lik: -20754.518, Max-Change: 0.00019
Iteration: 474, Log-Lik: -20754.518, Max-Change: 0.00020
Iteration: 475, Log-Lik: -20754.518, Max-Change: 0.00015
Iteration: 476, Log-Lik: -20754.518, Max-Change: 0.00015
Iteration: 477, Log-Lik: -20754.518, Max-Change: 0.00023
Iteration: 478, Log-Lik: -20754.518, Max-Change: 0.00012
Iteration: 479, Log-Lik: -20754.518, Max-Change: 0.00019
Iteration: 480, Log-Lik: -20754.518, Max-Change: 0.00020
Iteration: 481, Log-Lik: -20754.518, Max-Change: 0.00015
Iteration: 482, Log-Lik: -20754.518, Max-Change: 0.00015
Iteration: 483, Log-Lik: -20754.518, Max-Change: 0.00023
Iteration: 484, Log-Lik: -20754.518, Max-Change: 0.00012
Iteration: 485, Log-Lik: -20754.518, Max-Change: 0.00018
Iteration: 486, Log-Lik: -20754.518, Max-Change: 0.00020
Iteration: 487, Log-Lik: -20754.518, Max-Change: 0.00015
Iteration: 488, Log-Lik: -20754.518, Max-Change: 0.00015
Iteration: 489, Log-Lik: -20754.518, Max-Change: 0.00023
Iteration: 490, Log-Lik: -20754.518, Max-Change: 0.00012
Iteration: 491, Log-Lik: -20754.518, Max-Change: 0.00018
Iteration: 492, Log-Lik: -20754.518, Max-Change: 0.00019
Iteration: 493, Log-Lik: -20754.518, Max-Change: 0.00015
Iteration: 494, Log-Lik: -20754.518, Max-Change: 0.00015
Iteration: 495, Log-Lik: -20754.518, Max-Change: 0.00022
Iteration: 496, Log-Lik: -20754.518, Max-Change: 0.00011
Iteration: 497, Log-Lik: -20754.518, Max-Change: 0.00018
Iteration: 498, Log-Lik: -20754.518, Max-Change: 0.00019
Iteration: 499, Log-Lik: -20754.518, Max-Change: 0.00014
Iteration: 500, Log-Lik: -20754.518, Max-Change: 0.00015
#> Warning: EM cycles terminated after 500 iterations.
coef(modGRM, simplify=TRUE)
#> $items
#>            a1     d1     d2     d3     d4
#> Item_1  2.540 -0.223 -1.106 -1.527 -2.166
#> Item_2  2.284  1.418  0.791 -0.010 -0.848
#> Item_3  1.771  0.167 -0.479 -1.108 -2.132
#> Item_4  3.367  0.392  0.141 -0.330 -1.021
#> Item_5  3.450 -2.806 -3.524 -4.105 -4.691
#> Item_6  2.003  0.715  0.013 -0.347 -1.145
#> Item_7  2.375  0.182 -0.781 -1.545 -2.405
#> Item_8  2.286  0.515 -0.466 -1.336 -1.795
#> Item_9  2.768  0.837 -0.152 -1.319 -1.801
#> Item_10 2.910 -1.290 -2.154 -3.034 -3.397
#> Item_11 2.681  0.382 -0.484 -0.858 -1.792
#> Item_12 1.734 -1.721 -2.648 -3.462 -4.224
#> Item_13 2.042 -1.307 -1.802 -2.209 -2.804
#> Item_14 1.914 -0.871 -1.516 -2.346 -3.185
#> Item_15 4.247 -0.504 -1.187 -2.250 -3.114
#> Item_16 2.628  1.020  0.501 -0.428 -1.305
#> Item_17 2.522 -1.628 -2.114 -2.605 -3.007
#> Item_18 2.547 -1.508 -1.835 -2.189 -2.675
#> Item_19 1.906  0.340 -0.291 -0.677 -1.065
#> Item_20 2.287 -0.906 -1.572 -2.181 -2.606
#> 
#> $means
#> F1 
#>  0 
#> 
#> $cov
#>    F1
#> F1  1
#> 

# Define class with extreme theta but fixed item parameters
#   For GRM in zero-inflated class the intercept values are arbitrary
#   as the model forces the responses all into the first category (hence,
#   spacing arbitrarily set to 1)
ziGRM <- "F = 1-20
          START [MIXTURE_1] = (GROUP, MEAN_1, -100), (GROUP, COV_11, .00001),
                              (1-20, a1, 1.0),
                              (1-20, d1, 2), (1-20, d2, 1), (1-20, d3, 0), (1-20, d4, -1)
          FIXED [MIXTURE_1] = (GROUP, MEAN_1), (GROUP, COV_11),
                              (1-20, a1),
                              (1-20, d1), (1-20, d2), (1-20, d3), (1-20, d4)"

# define custom Theta integration grid that contains extreme theta + normal grid
technical <- list(customTheta = matrix(c(-100, seq(-6,6,length.out=61))))

# fit zero-inflated GRM
ziGRM.fit <- multipleGroup(data, ziGRM, dentype = 'mixture-2', technical=technical)
#> 
Iteration: 1, Log-Lik: -20970.290, Max-Change: 0.98751
Iteration: 2, Log-Lik: -20629.526, Max-Change: 0.49091
Iteration: 3, Log-Lik: -20531.707, Max-Change: 0.21120
Iteration: 4, Log-Lik: -20477.586, Max-Change: 0.14044
Iteration: 5, Log-Lik: -20463.807, Max-Change: 0.06148
Iteration: 6, Log-Lik: -20453.153, Max-Change: 0.05487
Iteration: 7, Log-Lik: -20446.253, Max-Change: 0.05275
Iteration: 8, Log-Lik: -20441.028, Max-Change: 0.04673
Iteration: 9, Log-Lik: -20436.828, Max-Change: 0.04434
Iteration: 10, Log-Lik: -20424.235, Max-Change: 0.06147
Iteration: 11, Log-Lik: -20421.893, Max-Change: 0.02939
Iteration: 12, Log-Lik: -20420.911, Max-Change: 0.02962
Iteration: 13, Log-Lik: -20419.171, Max-Change: 0.03014
Iteration: 14, Log-Lik: -20418.609, Max-Change: 0.02163
Iteration: 15, Log-Lik: -20418.188, Max-Change: 0.01561
Iteration: 16, Log-Lik: -20417.664, Max-Change: 0.01537
Iteration: 17, Log-Lik: -20417.499, Max-Change: 0.01043
Iteration: 18, Log-Lik: -20417.382, Max-Change: 0.00951
Iteration: 19, Log-Lik: -20417.088, Max-Change: 0.00689
Iteration: 20, Log-Lik: -20417.060, Max-Change: 0.00664
Iteration: 21, Log-Lik: -20417.033, Max-Change: 0.00420
Iteration: 22, Log-Lik: -20417.003, Max-Change: 0.00432
Iteration: 23, Log-Lik: -20416.988, Max-Change: 0.00326
Iteration: 24, Log-Lik: -20416.982, Max-Change: 0.00297
Iteration: 25, Log-Lik: -20416.970, Max-Change: 0.00181
Iteration: 26, Log-Lik: -20416.965, Max-Change: 0.00145
Iteration: 27, Log-Lik: -20416.962, Max-Change: 0.00251
Iteration: 28, Log-Lik: -20416.962, Max-Change: 0.00294
Iteration: 29, Log-Lik: -20416.951, Max-Change: 0.00090
Iteration: 30, Log-Lik: -20416.951, Max-Change: 0.00152
Iteration: 31, Log-Lik: -20416.948, Max-Change: 0.00041
Iteration: 32, Log-Lik: -20416.948, Max-Change: 0.00052
Iteration: 33, Log-Lik: -20416.948, Max-Change: 0.00079
Iteration: 34, Log-Lik: -20416.948, Max-Change: 0.00036
Iteration: 35, Log-Lik: -20416.947, Max-Change: 0.00057
Iteration: 36, Log-Lik: -20416.947, Max-Change: 0.00071
Iteration: 37, Log-Lik: -20416.947, Max-Change: 0.00042
Iteration: 38, Log-Lik: -20416.947, Max-Change: 0.00051
Iteration: 39, Log-Lik: -20416.947, Max-Change: 0.00077
Iteration: 40, Log-Lik: -20416.947, Max-Change: 0.00036
Iteration: 41, Log-Lik: -20416.947, Max-Change: 0.00056
Iteration: 42, Log-Lik: -20416.947, Max-Change: 0.00071
Iteration: 43, Log-Lik: -20416.946, Max-Change: 0.00041
Iteration: 44, Log-Lik: -20416.946, Max-Change: 0.00050
Iteration: 45, Log-Lik: -20416.946, Max-Change: 0.00075
Iteration: 46, Log-Lik: -20416.946, Max-Change: 0.00035
Iteration: 47, Log-Lik: -20416.946, Max-Change: 0.00054
Iteration: 48, Log-Lik: -20416.946, Max-Change: 0.00069
Iteration: 49, Log-Lik: -20416.946, Max-Change: 0.00040
Iteration: 50, Log-Lik: -20416.946, Max-Change: 0.00048
Iteration: 51, Log-Lik: -20416.946, Max-Change: 0.00072
Iteration: 52, Log-Lik: -20416.945, Max-Change: 0.00034
Iteration: 53, Log-Lik: -20416.945, Max-Change: 0.00052
Iteration: 54, Log-Lik: -20416.945, Max-Change: 0.00066
Iteration: 55, Log-Lik: -20416.945, Max-Change: 0.00038
Iteration: 56, Log-Lik: -20416.945, Max-Change: 0.00046
Iteration: 57, Log-Lik: -20416.945, Max-Change: 0.00069
Iteration: 58, Log-Lik: -20416.945, Max-Change: 0.00032
Iteration: 59, Log-Lik: -20416.945, Max-Change: 0.00050
Iteration: 60, Log-Lik: -20416.945, Max-Change: 0.00063
Iteration: 61, Log-Lik: -20416.945, Max-Change: 0.00036
Iteration: 62, Log-Lik: -20416.945, Max-Change: 0.00044
Iteration: 63, Log-Lik: -20416.944, Max-Change: 0.00067
Iteration: 64, Log-Lik: -20416.944, Max-Change: 0.00031
Iteration: 65, Log-Lik: -20416.944, Max-Change: 0.00048
Iteration: 66, Log-Lik: -20416.944, Max-Change: 0.00061
Iteration: 67, Log-Lik: -20416.944, Max-Change: 0.00035
Iteration: 68, Log-Lik: -20416.944, Max-Change: 0.00043
Iteration: 69, Log-Lik: -20416.944, Max-Change: 0.00064
Iteration: 70, Log-Lik: -20416.944, Max-Change: 0.00030
Iteration: 71, Log-Lik: -20416.944, Max-Change: 0.00046
Iteration: 72, Log-Lik: -20416.944, Max-Change: 0.00058
Iteration: 73, Log-Lik: -20416.944, Max-Change: 0.00033
Iteration: 74, Log-Lik: -20416.944, Max-Change: 0.00041
Iteration: 75, Log-Lik: -20416.944, Max-Change: 0.00061
Iteration: 76, Log-Lik: -20416.943, Max-Change: 0.00029
Iteration: 77, Log-Lik: -20416.943, Max-Change: 0.00044
Iteration: 78, Log-Lik: -20416.943, Max-Change: 0.00056
Iteration: 79, Log-Lik: -20416.943, Max-Change: 0.00032
Iteration: 80, Log-Lik: -20416.943, Max-Change: 0.00039
Iteration: 81, Log-Lik: -20416.943, Max-Change: 0.00059
Iteration: 82, Log-Lik: -20416.943, Max-Change: 0.00027
Iteration: 83, Log-Lik: -20416.943, Max-Change: 0.00042
Iteration: 84, Log-Lik: -20416.943, Max-Change: 0.00054
Iteration: 85, Log-Lik: -20416.943, Max-Change: 0.00031
Iteration: 86, Log-Lik: -20416.943, Max-Change: 0.00038
Iteration: 87, Log-Lik: -20416.943, Max-Change: 0.00056
Iteration: 88, Log-Lik: -20416.943, Max-Change: 0.00026
Iteration: 89, Log-Lik: -20416.943, Max-Change: 0.00041
Iteration: 90, Log-Lik: -20416.943, Max-Change: 0.00051
Iteration: 91, Log-Lik: -20416.942, Max-Change: 0.00029
Iteration: 92, Log-Lik: -20416.942, Max-Change: 0.00036
Iteration: 93, Log-Lik: -20416.942, Max-Change: 0.00054
Iteration: 94, Log-Lik: -20416.942, Max-Change: 0.00025
Iteration: 95, Log-Lik: -20416.942, Max-Change: 0.00039
Iteration: 96, Log-Lik: -20416.942, Max-Change: 0.00049
Iteration: 97, Log-Lik: -20416.942, Max-Change: 0.00028
Iteration: 98, Log-Lik: -20416.942, Max-Change: 0.00035
Iteration: 99, Log-Lik: -20416.942, Max-Change: 0.00052
Iteration: 100, Log-Lik: -20416.942, Max-Change: 0.00024
Iteration: 101, Log-Lik: -20416.942, Max-Change: 0.00037
Iteration: 102, Log-Lik: -20416.942, Max-Change: 0.00047
Iteration: 103, Log-Lik: -20416.942, Max-Change: 0.00027
Iteration: 104, Log-Lik: -20416.942, Max-Change: 0.00033
Iteration: 105, Log-Lik: -20416.942, Max-Change: 0.00050
Iteration: 106, Log-Lik: -20416.942, Max-Change: 0.00023
Iteration: 107, Log-Lik: -20416.942, Max-Change: 0.00036
Iteration: 108, Log-Lik: -20416.942, Max-Change: 0.00045
Iteration: 109, Log-Lik: -20416.941, Max-Change: 0.00026
Iteration: 110, Log-Lik: -20416.941, Max-Change: 0.00032
Iteration: 111, Log-Lik: -20416.941, Max-Change: 0.00048
Iteration: 112, Log-Lik: -20416.941, Max-Change: 0.00022
Iteration: 113, Log-Lik: -20416.941, Max-Change: 0.00034
Iteration: 114, Log-Lik: -20416.941, Max-Change: 0.00043
Iteration: 115, Log-Lik: -20416.941, Max-Change: 0.00025
Iteration: 116, Log-Lik: -20416.941, Max-Change: 0.00031
Iteration: 117, Log-Lik: -20416.941, Max-Change: 0.00046
Iteration: 118, Log-Lik: -20416.941, Max-Change: 0.00021
Iteration: 119, Log-Lik: -20416.941, Max-Change: 0.00033
Iteration: 120, Log-Lik: -20416.941, Max-Change: 0.00042
Iteration: 121, Log-Lik: -20416.941, Max-Change: 0.00024
Iteration: 122, Log-Lik: -20416.941, Max-Change: 0.00029
Iteration: 123, Log-Lik: -20416.941, Max-Change: 0.00044
Iteration: 124, Log-Lik: -20416.941, Max-Change: 0.00021
Iteration: 125, Log-Lik: -20416.941, Max-Change: 0.00032
Iteration: 126, Log-Lik: -20416.941, Max-Change: 0.00040
Iteration: 127, Log-Lik: -20416.941, Max-Change: 0.00023
Iteration: 128, Log-Lik: -20416.941, Max-Change: 0.00028
Iteration: 129, Log-Lik: -20416.941, Max-Change: 0.00042
Iteration: 130, Log-Lik: -20416.941, Max-Change: 0.00020
Iteration: 131, Log-Lik: -20416.941, Max-Change: 0.00030
Iteration: 132, Log-Lik: -20416.941, Max-Change: 0.00038
Iteration: 133, Log-Lik: -20416.941, Max-Change: 0.00022
Iteration: 134, Log-Lik: -20416.941, Max-Change: 0.00027
Iteration: 135, Log-Lik: -20416.941, Max-Change: 0.00040
Iteration: 136, Log-Lik: -20416.940, Max-Change: 0.00019
Iteration: 137, Log-Lik: -20416.940, Max-Change: 0.00029
Iteration: 138, Log-Lik: -20416.940, Max-Change: 0.00037
Iteration: 139, Log-Lik: -20416.940, Max-Change: 0.00021
Iteration: 140, Log-Lik: -20416.940, Max-Change: 0.00026
Iteration: 141, Log-Lik: -20416.940, Max-Change: 0.00039
Iteration: 142, Log-Lik: -20416.940, Max-Change: 0.00018
Iteration: 143, Log-Lik: -20416.940, Max-Change: 0.00028
Iteration: 144, Log-Lik: -20416.940, Max-Change: 0.00035
Iteration: 145, Log-Lik: -20416.940, Max-Change: 0.00020
Iteration: 146, Log-Lik: -20416.940, Max-Change: 0.00025
Iteration: 147, Log-Lik: -20416.940, Max-Change: 0.00037
Iteration: 148, Log-Lik: -20416.940, Max-Change: 0.00017
Iteration: 149, Log-Lik: -20416.940, Max-Change: 0.00027
Iteration: 150, Log-Lik: -20416.940, Max-Change: 0.00034
Iteration: 151, Log-Lik: -20416.940, Max-Change: 0.00019
Iteration: 152, Log-Lik: -20416.940, Max-Change: 0.00024
Iteration: 153, Log-Lik: -20416.940, Max-Change: 0.00036
Iteration: 154, Log-Lik: -20416.940, Max-Change: 0.00017
Iteration: 155, Log-Lik: -20416.940, Max-Change: 0.00026
Iteration: 156, Log-Lik: -20416.940, Max-Change: 0.00033
Iteration: 157, Log-Lik: -20416.940, Max-Change: 0.00019
Iteration: 158, Log-Lik: -20416.940, Max-Change: 0.00023
Iteration: 159, Log-Lik: -20416.940, Max-Change: 0.00034
Iteration: 160, Log-Lik: -20416.940, Max-Change: 0.00016
Iteration: 161, Log-Lik: -20416.940, Max-Change: 0.00025
Iteration: 162, Log-Lik: -20416.940, Max-Change: 0.00031
Iteration: 163, Log-Lik: -20416.940, Max-Change: 0.00018
Iteration: 164, Log-Lik: -20416.940, Max-Change: 0.00022
Iteration: 165, Log-Lik: -20416.940, Max-Change: 0.00033
Iteration: 166, Log-Lik: -20416.940, Max-Change: 0.00015
Iteration: 167, Log-Lik: -20416.940, Max-Change: 0.00024
Iteration: 168, Log-Lik: -20416.940, Max-Change: 0.00030
Iteration: 169, Log-Lik: -20416.940, Max-Change: 0.00017
Iteration: 170, Log-Lik: -20416.940, Max-Change: 0.00021
Iteration: 171, Log-Lik: -20416.940, Max-Change: 0.00031
Iteration: 172, Log-Lik: -20416.940, Max-Change: 0.00015
Iteration: 173, Log-Lik: -20416.940, Max-Change: 0.00023
Iteration: 174, Log-Lik: -20416.940, Max-Change: 0.00029
Iteration: 175, Log-Lik: -20416.940, Max-Change: 0.00016
Iteration: 176, Log-Lik: -20416.939, Max-Change: 0.00020
Iteration: 177, Log-Lik: -20416.939, Max-Change: 0.00030
Iteration: 178, Log-Lik: -20416.939, Max-Change: 0.00014
Iteration: 179, Log-Lik: -20416.939, Max-Change: 0.00022
Iteration: 180, Log-Lik: -20416.939, Max-Change: 0.00028
Iteration: 181, Log-Lik: -20416.939, Max-Change: 0.00016
Iteration: 182, Log-Lik: -20416.939, Max-Change: 0.00019
Iteration: 183, Log-Lik: -20416.939, Max-Change: 0.00029
Iteration: 184, Log-Lik: -20416.939, Max-Change: 0.00014
Iteration: 185, Log-Lik: -20416.939, Max-Change: 0.00021
Iteration: 186, Log-Lik: -20416.939, Max-Change: 0.00026
Iteration: 187, Log-Lik: -20416.939, Max-Change: 0.00015
Iteration: 188, Log-Lik: -20416.939, Max-Change: 0.00019
Iteration: 189, Log-Lik: -20416.939, Max-Change: 0.00028
Iteration: 190, Log-Lik: -20416.939, Max-Change: 0.00013
Iteration: 191, Log-Lik: -20416.939, Max-Change: 0.00020
Iteration: 192, Log-Lik: -20416.939, Max-Change: 0.00025
Iteration: 193, Log-Lik: -20416.939, Max-Change: 0.00015
Iteration: 194, Log-Lik: -20416.939, Max-Change: 0.00018
Iteration: 195, Log-Lik: -20416.939, Max-Change: 0.00027
Iteration: 196, Log-Lik: -20416.939, Max-Change: 0.00012
Iteration: 197, Log-Lik: -20416.939, Max-Change: 0.00019
Iteration: 198, Log-Lik: -20416.939, Max-Change: 0.00024
Iteration: 199, Log-Lik: -20416.939, Max-Change: 0.00014
Iteration: 200, Log-Lik: -20416.939, Max-Change: 0.00017
Iteration: 201, Log-Lik: -20416.939, Max-Change: 0.00026
Iteration: 202, Log-Lik: -20416.939, Max-Change: 0.00012
Iteration: 203, Log-Lik: -20416.939, Max-Change: 0.00018
Iteration: 204, Log-Lik: -20416.939, Max-Change: 0.00023
Iteration: 205, Log-Lik: -20416.939, Max-Change: 0.00013
Iteration: 206, Log-Lik: -20416.939, Max-Change: 0.00016
Iteration: 207, Log-Lik: -20416.939, Max-Change: 0.00025
Iteration: 208, Log-Lik: -20416.939, Max-Change: 0.00011
Iteration: 209, Log-Lik: -20416.939, Max-Change: 0.00018
Iteration: 210, Log-Lik: -20416.939, Max-Change: 0.00022
Iteration: 211, Log-Lik: -20416.939, Max-Change: 0.00013
Iteration: 212, Log-Lik: -20416.939, Max-Change: 0.00016
Iteration: 213, Log-Lik: -20416.939, Max-Change: 0.00024
Iteration: 214, Log-Lik: -20416.939, Max-Change: 0.00011
Iteration: 215, Log-Lik: -20416.939, Max-Change: 0.00017
Iteration: 216, Log-Lik: -20416.939, Max-Change: 0.00022
Iteration: 217, Log-Lik: -20416.939, Max-Change: 0.00012
Iteration: 218, Log-Lik: -20416.939, Max-Change: 0.00015
Iteration: 219, Log-Lik: -20416.939, Max-Change: 0.00023
Iteration: 220, Log-Lik: -20416.939, Max-Change: 0.00011
Iteration: 221, Log-Lik: -20416.939, Max-Change: 0.00016
Iteration: 222, Log-Lik: -20416.939, Max-Change: 0.00021
Iteration: 223, Log-Lik: -20416.939, Max-Change: 0.00012
Iteration: 224, Log-Lik: -20416.939, Max-Change: 0.00015
Iteration: 225, Log-Lik: -20416.939, Max-Change: 0.00022
Iteration: 226, Log-Lik: -20416.939, Max-Change: 0.00010
Iteration: 227, Log-Lik: -20416.939, Max-Change: 0.00016
Iteration: 228, Log-Lik: -20416.939, Max-Change: 0.00020
Iteration: 229, Log-Lik: -20416.939, Max-Change: 0.00011
Iteration: 230, Log-Lik: -20416.939, Max-Change: 0.00014
Iteration: 231, Log-Lik: -20416.939, Max-Change: 0.00021
Iteration: 232, Log-Lik: -20416.939, Max-Change: 0.00010
coef(ziGRM.fit, simplify=TRUE)
#> $MIXTURE_1
#> $items
#>         a1 d1 d2 d3 d4
#> Item_1   1  2  1  0 -1
#> Item_2   1  2  1  0 -1
#> Item_3   1  2  1  0 -1
#> Item_4   1  2  1  0 -1
#> Item_5   1  2  1  0 -1
#> Item_6   1  2  1  0 -1
#> Item_7   1  2  1  0 -1
#> Item_8   1  2  1  0 -1
#> Item_9   1  2  1  0 -1
#> Item_10  1  2  1  0 -1
#> Item_11  1  2  1  0 -1
#> Item_12  1  2  1  0 -1
#> Item_13  1  2  1  0 -1
#> Item_14  1  2  1  0 -1
#> Item_15  1  2  1  0 -1
#> Item_16  1  2  1  0 -1
#> Item_17  1  2  1  0 -1
#> Item_18  1  2  1  0 -1
#> Item_19  1  2  1  0 -1
#> Item_20  1  2  1  0 -1
#> 
#> $means
#>    F 
#> -100 
#> 
#> $cov
#>   F
#> F 0
#> 
#> $class_proportion
#>   pi
#>  0.2
#> 
#> 
#> $MIXTURE_2
#> $items
#>            a1     d1     d2     d3     d4
#> Item_1  1.287  0.857 -0.022 -0.438 -1.068
#> Item_2  0.764  2.477  1.751  0.932  0.124
#> Item_3  0.695  0.975  0.325 -0.293 -1.284
#> Item_4  1.711  1.782  1.532  1.064  0.381
#> Item_5  1.928 -1.382 -2.106 -2.689 -3.276
#> Item_6  0.751  1.601  0.875  0.518 -0.255
#> Item_7  1.137  1.198  0.242 -0.506 -1.343
#> Item_8  1.030  1.498  0.515 -0.332 -0.778
#> Item_9  1.307  1.994  0.998 -0.138 -0.604
#> Item_10 1.583 -0.062 -0.930 -1.809 -2.171
#> Item_11 1.308  1.508  0.644  0.276 -0.636
#> Item_12 0.886 -0.954 -1.873 -2.677 -3.431
#> Item_13 1.048 -0.420 -0.912 -1.315 -1.903
#> Item_14 0.946 -0.030 -0.668 -1.485 -2.310
#> Item_15 2.338  1.299  0.604 -0.475 -1.353
#> Item_16 1.154  2.119  1.582  0.664 -0.180
#> Item_17 1.363 -0.559 -1.046 -1.536 -1.937
#> Item_18 1.359 -0.428 -0.755 -1.108 -1.591
#> Item_19 0.725  1.173  0.539  0.161 -0.216
#> Item_20 1.179  0.077 -0.586 -1.190 -1.609
#> 
#> $means
#> F 
#> 0 
#> 
#> $cov
#>   F
#> F 1
#> 
#> $class_proportion
#>   pi
#>  0.8
#> 
#> 

# classification estimates
pi_hat <- fscores(ziGRM.fit, method = 'classify')
head(pi_hat)
#>            CLASS_1 CLASS_2
#> [1,] 7.494632e-176       1
#> [2,] 9.061522e-303       1
#> [3,] 8.797229e-303       1
#> [4,] 8.991331e-293       1
#> [5,] 2.992170e-231       1
#> [6,]  1.967057e-82       1
tail(pi_hat)
#>           CLASS_1     CLASS_2
#>  [995,] 0.9982456 0.001754398
#>  [996,] 0.9982456 0.001754398
#>  [997,] 0.9982456 0.001754398
#>  [998,] 0.9982456 0.001754398
#>  [999,] 0.9982456 0.001754398
#> [1000,] 0.9982456 0.001754398

# EAP estimates (not useful for zip class)
fs <- fscores(ziGRM.fit)
head(fs)
#>         Class_1
#> [1,] -0.5412082
#> [2,]  0.8572726
#> [3,]  1.5055426
#> [4,]  1.1937282
#> [5,]  0.2213623
#> [6,] -1.4092123
tail(fs)
#>           Class_1
#>  [995,] -99.82944
#>  [996,] -99.82944
#>  [997,] -99.82944
#>  [998,] -99.82944
#>  [999,] -99.82944
#> [1000,] -99.82944

# }