Hello,

Below is the code for generating dichotomous data based on IRT 2PL model. I want to generate dichotomous data using IRT 3PL model, how should I incorporate the c parameter in the code. thanks!

twopl.sim <- function( nitem = 20, npers = 100 ) {

i.loc <- rnorm( nitem )

p.loc <- rnorm( npers )

i.slp <- rlnorm( nitem, sdlog = .4 )

temp <- matrix( rep( p.loc, length( i.loc ) ), ncol = length( i.loc ) )

logits <- t( apply( temp , 1, '-', i.loc) )

logits <- t( apply( logits, 1, '*', i.slp) )

probabilities <- 1 / ( 1 + exp( -logits ) )

resp.prob <- matrix( probabilities, ncol = nitem)

obs.resp <- matrix( sapply( c(resp.prob), rbinom, n = 1, size = 1), ncol = length(i.loc) )

output <- list()

output$i.loc <- i.loc

output$i.slp <- i.slp

output$p.loc <- p.loc

output$resp <- obs.resp

output

}