Learn R Programming

xxIRT (version 1.1.0)

estimate.item.jmle: Item Calibration

Description

estimate.item.jmle calibrates item parameters with knwon thetas using joint maximum likelihood.

estimate.item.mmle calibrates item parameters using marginal maximum likelihood.

estimate.item.bme calibrates item parameters using bayesian maximum likelihood.

Usage

estimate.item.jmle(u, theta, model = "3PL", iteration = 100, delta = 0.01, a.bound = 2, b.bound = 3.5, c.bound = 0.25, diagnose = FALSE)
estimate.item.mmle(u, model = "3PL", iteration = 100, delta = 0.01, a.bound = 2, b.bound = 3.5, c.bound = 0.25, diagnose = FALSE)
estimate.item.bme(u, model = "3PL", a.mu = 0, a.sig = 0.2, b.mu = 0, b.sig = 1, c.alpha = 5, c.beta = 43, iteration = 100, delta = 0.01, a.bound = 2, b.bound = 3.5, c.bound = 0.25, diagnose = FALSE)

Arguments

u
a response matrix
theta
a vector of theta parameters
model
an IRT model used for calibration, taking values of "3PL", "2PL", "1PL", and "Rasch"
iteration
the maximum iterations in Newton-Raphson procedure
delta
the convergence criterion to terminate the Newton-Raphson procedure
a.bound
the maximum value of estimated a parameters
b.bound
the maximum absolute value of estimated b parameters
c.bound
the maximum value of estimated c parameters
diagnose
TRUE to return diangosis information
a.mu
the log mean of the lognormal prior distribution for a pameters
a.sig
the log sd of the lognormal prior distribution of a parmaeters
b.mu
the mean of the normal prior distribution for b pameters
b.sig
the sd of the normal prior distribution of b parmaeters
c.alpha
alpah of the prior beta distribution for c pameters
c.beta
beta of the prior beta distribution of c parmaeters

Value

estimated item parameters and diagnosis information if required

Details

Diagnosis information contains the average changes and values of a-, b-, c-parameters over the Newton-Raphson procedure. For the joint maximum likelihood estimation, refer to Baker and Kim (2004), pp. 46-54.

For the marginal maximum likelihood estimation, refer to Baker and Kim (2004), pp.166-174.

For the Bayesian maximum likelihood estimation, refer to Baker and Kim (2004), pp.183-191.

See Also

Other estimation: estimate.theta.mle

Other estimation: estimate.theta.mle

Other estimation: estimate.theta.mle

Examples

Run this code
## Not run: 
# # JMLE
# x <- gen.rsp(gen.irt(3000, 30, a.sig=.4))
# y <- estimate.item.jmle(x$rsp, x$thetas, model="3PL", diagnose=TRUE)
# plot(x$items$a, y$parameters$a, xlim=c(0, 3), ylim=c(0, 3), pch=16, col=rgb(.8,.2,.2,.5))
# abline(a=0, b=1, lty=2)
# plot(x$items$b, y$parameters$b, xlim=c(-3, 3), ylim=c(-3, 3), pch=16, col=rgb(.8,.2,.2,.5))
# abline(a=0, b=1, lty=2)
# plot(x$items$c, y$parameters$c, xlim=c(0, .5), ylim=c(0, .5), pch=16, col=rgb(.8,.2,.2,.5))
# abline(a=0, b=1, lty=2)
# ## End(Not run)
## Not run: 
# # MMLE
# x <- gen.rsp(gen.irt(3000, 30, a.sig=.4))
# y <- estimate.item.mmle(x$rsp, model="3PL", diagnose=TRUE)
# plot(x$items$a, y$parameters$a, xlim=c(0, 3), ylim=c(0, 3), pch=16, col=rgb(.8,.2,.2,.5),)
# abline(a=0, b=1, lty=2)
# plot(x$items$b, y$parameters$b, xlim=c(-3, 3), ylim=c(-3, 3), pch=16, col=rgb(.8,.2,.2,.5))
# abline(a=0, b=1, lty=2)
# plot(x$items$c, y$parameters$c, xlim=c(0, .5), ylim=c(0, .5), pch=16, col=rgb(.8,.2,.2,.5))
# abline(a=0, b=1, lty=2)
# y$diagnosis$h
# z <- estimate.theta.mle(x$rsp, y$parameters$a, y$parameters$b, y$parameters$c)
# plot(x$thetas, z, xlim=c(-5, 5), ylim=c(-5, 5), pch=16, col=rgb(.8,.2,.2,.5))
# abline(a=0, b=1, lty=2)
# ## End(Not run)
## Not run: 
# # BME
# x <- gen.rsp(gen.irt(3000, 30, a.sig=.4))
# y <- estimate.item.bme(x$rsp, model="3PL", diagnose=TRUE, a.mu=0, a.sig=.4, c.alpha=5, c.beta=30)
# plot(x$items$a, y$parameters$a, xlim=c(0, 3), ylim=c(0, 3), pch=16, col=rgb(.8,.2,.2,.5))
# abline(a=0, b=1, lty=2)
# plot(x$items$b, y$parameters$b, xlim=c(-3, 3), ylim=c(-3, 3), pch=16, col=rgb(.8,.2,.2,.5))
# abline(a=0, b=1, lty=2)
# plot(x$items$c, y$parameters$c, xlim=c(0, .5), ylim=c(0, .5), pch=16, col=rgb(.8,.2,.2,.5))
# abline(a=0, b=1, lty=2)
# y$diagnosis$h
# z <- estimate.theta.mle(x$rsp, y$parameters$a, y$parameters$b, y$parameters$c)
# plot(x$thetas, z, xlim=c(-5, 5), ylim=c(-5, 5), pch=16, col=rgb(.8,.2,.2,.5))
# abline(a=0, b=1, lty=2)
# ## End(Not run)

Run the code above in your browser using DataLab