Learn R Programming

sirt (version 1.9-0)

likelihood.adjustment: Adjustment and Approximation of Individual Likelihood Functions

Description

Approximates individual likelihood functions $L(\bold{X}_p | \theta)$ by normal distributions (see Mislevy, 1990). Extreme response patterns are handled by adding pseudo-observations of items with extreme item difficulties (see argument extreme.item. The individual standard deviations of the likelihood, used in the normal approximation, can be modified by individual adjustment factors which are specified in adjfac. In addition, a reliability of the adjusted likelihood can be specified in target.EAP.rel.

Usage

likelihood.adjustment(likelihood, theta = NULL, prob.theta = NULL, 
     adjfac = rep(1, nrow(likelihood)), extreme.item = 5, target.EAP.rel = NULL, 
     min_tuning = 0.2, max_tuning = 3, maxiter = 100, conv = 1e-04, 
     trait.normal = TRUE)

Arguments

likelihood
A matrix containing the individual likelihood $L(\bold{X}_p | \theta)$ or an object of class IRT.likelihood.
theta
Optional vector of (unidimensional) $\theta$ values
prob.theta
Optional vector of probabilities of $\theta$ trait distribution
adjfac
Vector with individual adjustment factors of the standard deviations of the likelihood
extreme.item
Item difficulties of two extreme pseudo items which are added as additional observed data to the likelihood. A large number (e.g. extreme.item=15) leaves the likelihood almost unaffected. See also Mislevy (1990).
target.EAP.rel
Target EAP reliability. An additional tuning parameter is estimated which adjusts the likelihood to obtain a pre-specified reliability.
min_tuning
Minimum value of tuning parameter (if ! is.null(target.EAP.rel))
max_tuning
Maximum value of tuning parameter (if ! is.null(target.EAP.rel))
maxiter
Maximum number of iterations (if ! is.null(target.EAP.rel))
conv
Convergence criterion (if ! is.null(target.EAP.rel))
trait.normal
Optional logical indicating whether the trait distribution should be normally distributed (if ! is.null(target.EAP.rel)).

Value

  • Object of class IRT.likelihood.

References

Mislevy, R. (1990). Scaling procedures. In E. Johnson & R. Zwick (Eds.), Focusing the new design: The NAEP 1988 technical report (ETS RR 19-20). Princeton, NJ: Educational Testing Service.

See Also

CDM::IRT.likelihood, TAM::tam.latreg

Examples

Run this code
#############################################################################
# EXAMPLE 1: Adjustment of the likelihood | data.read
#############################################################################	

library(TAM)
data(data.read)
dat <- data.read

# define theta grid
theta.k <- seq(-6,6,len=41)

#*** Model 1: fit Rasch model in TAM
mod1 <- TAM::tam.mml( dat , control=list( nodes=theta.k) )
summary(mod1)

#*** Model 2: fit Rasch copula model
testlets <- substring( colnames(dat) , 1 , 1 )
mod2 <- rasch.copula2( dat , itemcluster=testlets , theta.k=theta.k)
summary(mod2)

# model comparison
IRT.compareModels( mod1 , mod2 )

# extract EAP reliabilities
rel1 <- mod1$EAP.rel
rel2 <- mod2$EAP.Rel
# variance inflation factor
vif <- (1-rel2) / (1-rel1)
  ##  > vif
  ##  [1] 1.211644

# extract individual likelihood
like1 <- IRT.likelihood( mod1 )
# adjust likelihood from Model 1 to obtain a target EAP reliability of .599
like1b <- likelihood.adjustment( like1 , target.EAP.rel = .599 )

# compare estimated latent regressions
lmod1a <- TAM::tam.latreg( like1 , Y = NULL )
lmod1b <- TAM::tam.latreg( like1b , Y = NULL )
summary(lmod1a)
summary(lmod1b)

Run the code above in your browser using DataLab