MCMC Estimation of the Hierarchical IRT Model for Criterion-Referenced Measurement
This function estimates the hierarchical IRT model for criterion-referenced measurement which is based on a two-parameter normal ogive response function (Janssen, Tuerlinckx, Meulders & de Boeck, 2000).
mcmc.2pnoh(dat, itemgroups, prob.mastery=c(.5,.8), weights=NULL, burnin=500, iter=1000, N.sampvalues=1000, progress.iter=50, prior.variance=c(1,1), save.theta=FALSE)
dat |
Data frame with dichotomous item responses |
itemgroups |
Vector with characters or integers which define the criterion to which an item is associated. |
prob.mastery |
Probability levels which define nonmastery, transition and mastery stage (see Details) |
weights |
An optional vector with student sample weights |
burnin |
Number of burnin iterations |
iter |
Total number of iterations |
N.sampvalues |
Maximum number of sampled values to save |
progress.iter |
Display progress every |
prior.variance |
Scale parameter of the inverse gamma distribution for the σ^2 and ν^2 item variance parameters |
save.theta |
Should theta values be saved? |
The hierarchical IRT model for criterion-referenced measurement (Janssen et al., 2000) assumes that every item i intends to measure a criterion k. The item response function is defined as
P(X_{pik}=1 | θ_p )= Φ [ α_{ik} ( θ_p - β_{ik} ) ] \quad, \quad θ_p \sim N(0,1)
Item parameters (α_{ik},β_{ik}) are hierarchically modeled, i.e.
β_{ik} \sim N( ξ_k, σ^2 ) \quad \mbox{and} \quad α_{ik} \sim N( ω_k, ν^2 )
In the mcmc.list
output object, also the derived parameters
d_{ik}=α_{ik} β_{ik} and τ_k=ξ_k ω_k are
calculated.
Mastery and nonmastery probabilities are based on a reference item Y_{k}
of criterion k and a response function
P(Y_{pk}=1 | θ_p )= Φ [ ω_{k} ( θ_p - ξ_{k} ) ] \quad, \quad θ_p \sim N(0,1)
With known item parameters and person parameters, response probabilities of
criterion k are calculated. If a response probability of criterion k
is larger than prob.mastery[2]
, then a student is defined as a
master. If this probability is smaller than prob.mastery[1]
, then
a student is a nonmaster. In all other cases, students are in a transition
stage.
In the mcmcobj
output object, the parameters d[i]
are defined by
d_{ik}=α_{ik} \cdot β_{ik} while tau[k]
are defined by
τ_k=ξ_k \cdot ω_k .
A list of class mcmc.sirt
with following entries:
mcmcobj |
Object of class |
summary.mcmcobj |
Summary of the |
burnin |
Number of burnin iterations |
iter |
Total number of iterations |
alpha.chain |
Sampled values of α_{ik} parameters |
beta.chain |
Sampled values of β_{ik} parameters |
xi.chain |
Sampled values of ξ_{k} parameters |
omega.chain |
Sampled values of ω_{k} parameters |
sigma.chain |
Sampled values of σ parameter |
nu.chain |
Sampled values of ν parameter |
theta.chain |
Sampled values of θ_p parameters |
deviance.chain |
Sampled values of Deviance values |
EAP.rel |
EAP reliability |
person |
Data frame with EAP person parameter estimates for θ_p and their corresponding posterior standard deviations |
dat |
Used data frame |
weights |
Used student weights |
... |
Further values |
Janssen, R., Tuerlinckx, F., Meulders, M., & De Boeck, P. (2000). A hierarchical IRT model for criterion-referenced measurement. Journal of Educational and Behavioral Statistics, 25, 285-306.
S3 methods: summary.mcmc.sirt
, plot.mcmc.sirt
The two-parameter normal ogive model can be estimated with
mcmc.2pno
.
## Not run: ############################################################################# # EXAMPLE 1: Simulated data according to Janssen et al. (2000, Table 2) ############################################################################# N <- 1000 Ik <- c(4,6,8,5,9,6,8,6,5) xi.k <- c( -.89, -1.13, -1.23, .06, -1.41, -.66, -1.09, .57, -2.44) omega.k <- c(.98, .91, .76, .74, .71, .80, .79, .82, .54) # select 4 attributes K <- 4 Ik <- Ik[1:K] ; xi.k <- xi.k[1:K] ; omega.k <- omega.k[1:K] sig2 <- 3.02 nu2 <- .09 I <- sum(Ik) b <- rep( xi.k, Ik ) + stats::rnorm(I, sd=sqrt(sig2) ) a <- rep( omega.k, Ik ) + stats::rnorm(I, sd=sqrt(nu2) ) theta1 <- stats::rnorm(N) t1 <- rep(1,N) p1 <- stats::pnorm( outer(t1,a) * ( theta1 - outer(t1,b) ) ) dat <- 1 * ( p1 > stats::runif(N*I) ) itemgroups <- rep( paste0("A", 1:K ), Ik ) # estimate model mod <- sirt::mcmc.2pnoh(dat, itemgroups, burnin=200, iter=1000 ) # summary summary(mod) # plot plot(mod$mcmcobj, ask=TRUE) # write coda files mcmclist2coda( mod$mcmcobj, name="simul_2pnoh" ) ## End(Not run)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.