CircleArcChainedEquate: Apply chained equating via the circle-arc method

View source: R/CircleArc.R

CircleArcChainedEquateR Documentation

Apply chained equating via the circle-arc method

Description

Chained equating via an anchor test is done by successively applying the CircleArcEquate function between anchors and main tests.

Usage

CircleArcChainedEquate(dx, dy, maxX, maxY, maxA, minX = 0, minY = 0, minA = 0)

Arguments

dx

Data frame with variables "x" and "a" representing scores for individual candidates on form X and on the anchor test.

dy

Data frame with variables "y" and "a" representing scores for individual candidates on form Y and on the anchor test.

maxX

Maximum score on form X (or upper point for circle arc method).

maxY

Maximum score on form Y (or upper point for circle arc method).

maxA

Maximum score on anchor (or upper point for circle arc method).

minX

Minimum score on form X (or lower point for circle arc method). Default of zero.

minY

Minimum score on form Y (or lower point for circle arc method). Default of zero.

minA

Minimum score on anchor (or lower point for circle arc method). Default of zero.

Value

The function returns a list with the following elements:

chainedFunc

A function that translates any vector of scores on form X into equivalent scores on form Y.

EqTable

A data frame showing the equivalent score on form Y for every integer score between minX and maxxX on form X.

Examples

#demonstrate method on a 30 item test with an internal 5 item anchor
#define 30 rasch item difficulties as equally spread
itedifs=rep(seq(-2,2,length=5),6)

#simulate population one item scores (and then form scores)
n1=300
t1=rnorm(n1,0.5,1)
ites1=0+(plogis(t1%*%t(rep(1,30))-rep(1,length(t1))%*%t(itedifs))>matrix(runif(n1*30),nrow=n1))
scoresX1=rowSums(ites1[,1:30])
scoresA1=rowSums(ites1[,26:30])
#simulate parallel tests in population two
n2=3000
t2=rnorm(n2,0,1)
ites2=0+(plogis(t2%*%t(rep(1,30))-rep(1,length(t2))%*%t(itedifs))>matrix(runif(n2*30),nrow=n2))
scoresY2=rowSums(ites2[,1:30])
scoresA2=rowSums(ites2[,26:30])

circ_eq=CircleArcChainedEquate(data.frame(x=scoresX1,a=scoresA1),data.frame(y=scoresY2,a=scoresA2),30,30,5)
circ_eq


CambridgeAssessmentResearch/KernEqWPS documentation built on Feb. 23, 2024, 9:34 p.m.