1 Functionalities

The equateIRT package computes:

  • Direct equating coefficients (between two forms with common items).
  • Chain equating coefficients (through a chain of forms with common items in pairs).
  • Average (bisector) equating coefficients (between two forms connected through more than one path).
  • Equated scores with true score equating and observed score equating methods.
  • Standard errors of all equating coefficients and equated scores.
  • Test for DIF and tests for drifts.

2 Data preparation

Load the package equateIRT and the data

library("equateIRT")
data("data2pl", package = "equateIRT")

Estimate a two parameter logistic model for 5 data sets with the R package mirt

library("mirt")
m1 <- mirt(data2pl[[1]], SE = TRUE)
m2 <- mirt(data2pl[[2]], SE = TRUE)
m3 <- mirt(data2pl[[3]], SE = TRUE)
m4 <- mirt(data2pl[[4]], SE = TRUE)
m5 <- mirt(data2pl[[5]], SE = TRUE)

Extract the item parameter estimates and the covariance matrices

estm1 <- import.mirt(m1, display = FALSE)
estm2 <- import.mirt(m2, display = FALSE)
estm3 <- import.mirt(m3, display = FALSE)
estm4 <- import.mirt(m4, display = FALSE)
estm5 <- import.mirt(m5, display = FALSE)
estm1$coef[1:3, ]
##        value.d value.a1
## I1 -0.06265505 1.076092
## I2 -0.03147833 1.123453
## I3 -0.07992642 1.091380
estm1$var[1:3, 1:3]
##              [,1]         [,2]         [,3]
## [1,] 0.0012271350 0.0002449221 0.0002378241
## [2,] 0.0002449221 0.0012622821 0.0002484510
## [3,] 0.0002378241 0.0002484510 0.0012394799

Create a list of coefficients and covariance matrices

estc <- list(estm1$coef, estm2$coef, estm3$coef, estm4$coef, estm5$coef)
estv <- list(estm1$var, estm2$var, estm3$var, estm4$var, estm5$var)
test <- paste("test", 1:5, sep = "")

Create an object of class modIRT

mod2pl <- modIRT(coef = estc, var = estv, names = test, display = FALSE)
coef(mod2pl$test1)[1:5]
##    Dffclt.I1    Dffclt.I2    Dffclt.I3    Dffclt.I4    Dffclt.I5 
##  0.058224616  0.028019255  0.073234265  0.415936521 -0.006686047

The linkage plan

lplan<-linkp(coef = estc)
lplan
##      [,1] [,2] [,3] [,4] [,5]
## [1,]   20   10    0    0   10
## [2,]   10   20   10    0    0
## [3,]    0   10   20   10    0
## [4,]    0    0   10   20   10
## [5,]   10    0    0   10   20

A graphic of the linkage plan with package sna

library(sna)
par(mar=c(0, 0, 0, 0))
set.seed(6)
gplot(lplan, displaylabels = TRUE,  vertex.sides = 4, vertex.cex = 5, vertex.rot =45,  usearrows = FALSE, label.pos = 5, label.cex = 1, vertex.col = 0)