#############################################
# Example 1: Reading data
#############################################
data(data.read)
dat <- data.read
# define item clusters
itemcluster <- rep( 1:3 , each=4 )
# estimate Copula model
mod1 <- rasch.copula2( dat=dat , itemcluster=itemcluster)
# estimate Rasch model
mod2 <- rasch.copula2( dat=dat , itemcluster=itemcluster ,
delta=rep(0,3) , est.delta=rep(0,3 ) )
summary(mod1)
summary(mod2)
############################################################
# Simulated Example 2:
# 11 Items: 2 itemclusters with 2 resp. 3 dependent items
# and 6 independent items
############################################################
set.seed(5698)
I <- 11 # number of items
n <- 1500 # number of persons
b <- seq(-2,2, len=I) # item difficulties
theta <- rnorm( n , sd = 1 ) # person abilities
# itemcluster
itemcluster <- rep(0,I)
itemcluster[ c(3,5 )] <- 1
itemcluster[c(2,4,9)] <- 2
# residual correlations
rho <- c( .7 , .5 )
# simulate data
dat <- sim.rasch.dep( theta , b , itemcluster , rho )
colnames(dat) <- paste("I" , seq(1,ncol(dat)) , sep="")
# estimate Rasch copula model
mod1 <- rasch.copula2( dat , itemcluster = itemcluster )
summary(mod1)
# both itemclusters have Cook-Johnson copula as dependency
mod1c <- rasch.copula2( dat , itemcluster = itemcluster ,
copula.type ="cook.johnson")
summary(mod1c)
# first item boundary mixture and second item Cook-Johnson copula
mod1d <- rasch.copula2( dat , itemcluster = itemcluster ,
copula.type = c( "bound.mixt" , "cook.johnson" ) )
summary(mod1d)
# compare result with Rasch model estimation in rasch.copula2
# delta must be set to zero
mod2 <- rasch.copula2( dat , itemcluster = itemcluster , delta = c(0,0) ,
est.delta = c(0,0) )
summary(mod2)
############################################################
# Simulated Example 3:
# 12 Items: Cluster 1 -> Items 1,...,4
# Cluster 2 -> Items 6,...,9
# Cluster 3 -> Items 10,11,12
############################################################
set.seed(967)
I <- 12 # number of items
n <- 450 # number of persons
b <- seq(-2,2, len=I) # item difficulties
b <- sample(b) # sample item difficulties
theta <- rnorm( n , sd = 1 ) # person abilities
# itemcluster
itemcluster <- rep(0,I)
itemcluster[ 1:4 ] <- 1
itemcluster[ 6:9 ] <- 2
itemcluster[ 10:12 ] <- 3
# residual correlations
rho <- c( .35 , .25 , .30 )
# simulate data
dat <- sim.rasch.dep( theta , b , itemcluster , rho )
colnames(dat) <- paste("I" , seq(1,ncol(dat)) , sep="")
# estimate Rasch copula model
mod1 <- rasch.copula2( dat , itemcluster = itemcluster )
summary(mod1)
# person parameter estimation assuming the Rasch copula model
pmod1 <- person.parameter.rasch.copula(raschcopula.object = mod1 )
# Rasch model estimation
mod2 <- rasch.copula2( dat , itemcluster = itemcluster ,
delta = rep(0,3) , est.delta = rep(0,3) )
summary(mod1)
summary(mod2)
Run the code above in your browser using DataLab