## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>"
)

## ----Specify------------------------------------------------------------------
library(CLCM)
N <- 500
number.timepoints <- 1
item.type <- rep('Ordinal', 5) 
sim.categories.j <- c(4, 2, 2, 2, 4) 
lc.prop <- list('Time_1' = c(0.5, 0.5)) 
Q <- matrix(1, nrow = length(item.type), ncol = 1, 
            dimnames = list(paste0('Item_', 1:length(item.type)), NULL))
Q

## ----Generate_1---------------------------------------------------------------
set.seed(03062021)
sim.dat <- simulate_clcm(N = N, Q = Q, number.timepoints = number.timepoints, 
                         item.type = item.type, 
                         categories.j = sim.categories.j, 
                         lc.prop = lc.prop)
                      

## ----Estimate-----------------------------------------------------------------
mod <- clcm(dat = sim.dat $dat, 
            item.type = sim.dat $item.type, 
            item.names = sim.dat $item.names, 
            max.diff = 0.001, 
            Q = sim.dat$Q)   

## ----Model Fit----------------------------------------------------------------
mod.fit <- C2_clcm(mod) 

## ----Plots--------------------------------------------------------------------
p.mod <- mod.fit$p.mod
p.obs <- mod.fit$p.obs
p.range <- range(p.mod, p.obs)

#
plot(p.mod, ylim = p.range, xlab = paste0(nrow(p.mod), ' model-implied probabilities'), 
     ylab = 'Probability', main = 'Model-Implied Probabilities')
#
plot(p.obs, ylim = p.range, xlab = paste0(nrow(p.obs), ' observed probabilities'), 
     ylab = 'Probability', main = 'Observed Probabilities')
#
plot(x = p.obs, y = p.mod, main = paste0(nrow(p.mod), ' Probabilities'),
     ylim = p.range, xlim = p.range, 
     xlab = 'Observed Probabilities', ylab = 'Model-Implied Probabilities')
abline(a = 0, b = 1)


