kequate: Test Equating Using the Kernel Method

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/kernel.R

Description

A function to conduct an equating between two parallel tests using kernel equating. Designs available are equivalent groups (EG), single group (SG), counterbalanced (CB), non-equivalent groups with anchor test using either chain equating (NEAT CE) or post-stratification equating (NEAT PSE) and non-equivalent groups using covariates (NEC).

Usage

1
kequate(design, ...)

Arguments

design

A character vector indicating which design to use. Possible designs are: EG, SG, CB, NEAT_CE, NEAT_PSE or NEC.

...

Further arguments which partly depend on the design chosen. (See section Details for further information.)

Details

Besides the above argument, additional arguments must be provided for the different equating designs.

EG design


‘x’ A vector of possible score values on the test X to be equated, ordered from the lowest to the highest score.

‘y’ A vector of possible score values on the test Y to be equated, ordered from the lowest to the highest score.

‘r’,‘s’ Numeric vectors containing the estimated or observed score probabilities for tests X and Y respectively. Alternatively objects of class ‘glm’.

‘DMP’, ‘DMQ’ The design matrices from the log-linear models for the estimated score probabilities for X and Y. Not needed if arguments r and s are of class ‘glm’.

‘N’, ‘M’ The sample sizes of the groups taking tests X and Y, respectively. Not needed if arguments r and s are of class ‘glm’.

‘hx’, ‘hy’ Optional arguments to specify the continuization parameters manually. (If linear=TRUE, then these arguments have no effect.)

‘hxlin’, ‘hylin’ Optional arguments to specify the continuization parameters manually in the linear case.

‘KPEN’ The constant used in deciding the optimal continuization parameter. Default is 0.

‘wpen’ An argument denoting at which point the derivatives in the second part of the penalty function should be evaluated. Default is 1/4.

‘linear’ Logical denoting if only a linear equating is to be performed. Default is FALSE.

‘irtx’, ‘irty’ Optional arguments to provide matrices of probabilities to answer correctly to the questions on the parallel tests X and Y, as estimated in an Item Response Theory (IRT) model.

‘smoothed’ A logical argument denoting if the data provided are pre-smoothed or not. Default is TRUE.

‘kernel’ A character vector indicating which kernel to use, either "gaussian", "logistic", "stdgaussian" or "uniform". Default is "gaussian".

‘slog’ The parameter used in defining the logistic kernel. Default is 1.

‘bunif’ The parameter used in defining the uniform kernel. Default is 0.5.

‘altopt’ Logical which sets the bandwidth parameter equal to a variant of Silverman's rule of thumb. Default is FALSE.

‘DS’ Logical which enables bandwidth selection with the double smoothing method.

SG design


‘x’ A vector of possible score values on the test X to be equated, ordered from the lowest to the highest score.

‘y’ A vector of possible score values on the test Y to be equated, ordered from the lowest to the highest score.

‘P’ The estimated or observed probability matrix for scores on tests X and Y, where the columns denote scores on test Y and the rows denote scores on test X. Alternatively a vector of score probabilities or an object of class ‘glm’, where the entries are ordered first by the Y-scores and then by the X-scores.

‘DM’ The design matrix used in the log-linear model. Not needed if the argument P is of class ‘glm’.

‘N’ The sample size. Not needed if the argument P is of class ‘glm’.

‘hx’, ‘hy’ Optional arguments to specify the continuization parameter manually. (If linear=TRUE, then these arguments have no effect.)

‘hxlin’, ‘hylin’ Optional arguments to specify the continuization parameters manually in the linear case.

‘KPEN’ The constant used in deciding the optimal continuization parameter. Default is 0.

‘wpen’ An argument denoting at which point the derivatives in the second part of the penalty function should be evaluated. Default is 1/4.

‘linear’ Logical denoting if only a linear equating is to be performed. Default is FALSE.

‘irtx’, ‘irty’ Optional arguments to provide matrices of probabilities to answer correctly to the questions on the parallel tests X and Y, as estimated in an Item Response Theory (IRT) model.

‘smoothed’ A logical argument denoting if the data provided are pre-smoothed or not. Default is TRUE.

‘kernel’ A character vector indicating which kernel to use, either "gaussian", "logistic", "stdgaussian" or "uniform". Default is "gaussian".

‘slog’ The parameter used in defining the logistic kernel. Default is 1.

‘bunif’ The parameter used in defining the uniform kernel. Default is 0.5.

‘DS’ Logical which enables bandwidth selection with the double smoothing method.

CB design


‘x’ A vector of possible score values on the test X to be equated, ordered from the lowest to the highest score.

‘y’ A vector of possible score values on the test Y to be equated, ordered from the lowest to the highest score.

‘P12’, ‘P21’ The estimated or observed probability matrices for scores on first taking test X and then taking test Y, and first taking test Y and then taking test X respectively, where the rows denote scores on tests X and the columns denote scores on test Y. Alternatively numeric vectors or objects of class ‘glm’, where the entries are ordered first by the Y-scores and then by the X-scores.

‘DM12’, ‘DM21’ The design matrices from the log-linear models for the estimated score probabilities for the two test groups. Not needed if arguments P12 and P21 are of class ‘glm’.

‘N’, ‘M’ The sample sizes for the tests X and A and the tests Y and A, respectively. Not needed if arguments P12 and P21 are of class ‘glm’.

‘hx’, ‘hy’ Optional arguments to specify the continuization parameters manually. (If linear=TRUE, then these arguments have no effect)

‘hxlin’, ‘hylin’ Optional arguments to specify the continuization parameters manually in the linear case. (Applies both when linear=FALSE and when linear=TRUE.)

‘wcb’ The weighting of the two groups. Default is 0.5.

‘KPEN’ Optional argument to specify the constant used in deciding the optimal continuization parameter. Default is 0.

‘wpen’ An argument denoting at which point the derivatives in the second part of the penalty function should be evaluated. Default is 1/4.

‘linear’ Optional logical argument denoting if only a linear equating is to be performed. Default is FALSE.

‘irtx’, ‘irty’ Optional arguments to provide matrices of probabilities to answer correctly to the questions on the parallel tests X and Y, as estimated in an Item Response Theory (IRT) model.

‘smoothed’ A logical argument denoting if the data provided are pre-smoothed or not. Default is TRUE.

‘kernel’ A character vector indicating which kernel to use, either "gaussian", "logistic", "stdgaussian" or "uniform". Default is "gaussian".

‘slog’ The parameter used in defining the logistic kernel. Default is 1.

‘bunif’ The parameter used in defining the uniform kernel. Default is 0.5.

‘altopt’ Logical which sets the bandwidth parameter equal to a variant of Silverman's rule of thumb. Default is FALSE.

‘DS’ Logical which enables bandwidth selection with the double smoothing method.

NEAT PSE or NEC design


‘x’ A vector of possible score values on the test X to be equated, ordered from the lowest to the highest score.

‘y’ A vector of possible score values on the test Y to be equated, ordered from the lowest to the highest score.

‘P’, ‘Q’ The estimated or observed probability matrices for scores on tests X and A and tests Y and A respectively, where the rows denote scores on tests X or Y and the columns denote scores on test A. Alternatively numeric vectors or objects of class ‘glm’, where the entries are ordered first by the X-scores/Y-scores and then by the A-scores.

‘DMP’, ‘DMQ’ The design matrices from the log-linear models for the estimated score probabilities for X and A and Y and A. Not needed if arguments P and Q are of class ‘glm’.

‘N’, ‘M’ The sample sizes for the tests X and A and the tests Y and A, respectively. Not needed if arguments P and Q are of class ‘glm’.

‘w’ The weighting of the synthetic population. Default is 0.5.

‘hx’, ‘hy’ Optional arguments to specify the continuization parameters manually. (If linear=TRUE, then these arguments have no effect)

‘hxlin’, ‘hylin’ Optional arguments to specify the continuization parameters manually in the linear case. (Applies both when linear=FALSE and when linear=TRUE.)

‘KPEN’ Optional argument to specify the constant used in deciding the optimal continuization parameter. Default is 0.

‘wpen’ An argument denoting at which point the derivatives in the second part of the penalty function should be evaluated. Default is 1/4.

‘linear’ Optional logical argument denoting if only a linear equating is to be performed. Default is FALSE.

‘irtx’, ‘irty’ Optional arguments to provide matrices of probabilities to answer correctly to the questions on the parallel tests X and Y, as estimated in an Item Response Theory (IRT) model.

‘smoothed’ A logical argument denoting if the data provided are pre-smoothed or not. Default is TRUE.

‘kernel’ A character vector indicating which kernel to use, either "gaussian", "logistic", "stdgaussian" or "uniform". Default is "gaussian".

‘slog’ The parameter used in defining the logistic kernel. Default is 1.

‘bunif’ The parameter used in defining the uniform kernel. Default is 0.5.

‘altopt’ Logical which sets the bandwidth parameter equal to a variant of Silverman's rule of thumb. Default is FALSE.

‘DS’ Logical which enables bandwidth selection with the double smoothing method.

NEAT CE design


‘x’ A vector of possible score values on the test X to be equated, ordered from the lowest to the highest score.

‘y’ A vector of possible score values on the test Y to be equated, ordered from the lowest to the highest score.

‘a’ A vector containing the possible score values on the anchor test, ordered from the lowest score to the highest.

‘P’, ‘Q’ The estimated or observed probability matrices for scores on tests X and A and tests Y and A respectively, where the rows denote scores on test X or Y and the columns denote scores on test A. Alternatively numeric vectors or objects of class ‘glm’, where the entries are ordered first by the X-scores/Y-scores and then by the A-scores.

‘DMP’, ‘DMQ’ The design matrices from the log-linear models for the estimated score probabilities for X and A and Y and A, respectively. Not needed if arguments P and Q are of class ‘glm’.

‘N’, ‘M’ The sample sizes for the tests X and A and the tests Y and A, respectively. Not needed if arguments P and Q are of class ‘glm’.

‘hxP’, ‘hyQ’, ‘haP’, ‘haQ’ Optional arguments to specify the continuization parameters manually. (If linear=TRUE, then these arguments have no effect.)

‘hxPlin’, ‘hyQlin’, ‘haPlin’, ‘haQlin’ Optional arguments to specify the continuization parameters manually in the linear case. (Applies both when linear=FALSE and when linear=TRUE.)

‘KPEN’ Optional argument to specify the constant used in deciding the optimal continuization parameter. Default is 0.

‘wpen’ An argument denoting at which point the derivatives in the second part of the penalty function should be evaluated. Default is 1/4.

‘linear’ Optional logical argument denoting if only a linear equating is to be performed. Default is FALSE.

‘irtx’, ‘irty’ Optional arguments to provide matrices of probabilities to answer correctly to the questions on the parallel tests X and Y, as estimated in an Item Response Theory (IRT) model.

‘smoothed’ A logical argument denoting if the data provided are pre-smoothed or not. Default is TRUE.

‘kernel’ A character vector indicating which kernel to use, either "gaussian", "logistic", "stdgaussian" or "uniform". Default is "gaussian".

‘slog’ The parameter used in defining the logistic kernel. Default is 1.

‘bunif’ The parameter used in defining the uniform kernel. Default is 0.5.

‘altopt’ Logical which sets the bandwidth parameter equal to a variant of Silverman's rule of thumb. Default is FALSE.

‘DS’ Logical which enables bandwidth selection with the double smoothing method.

Value

Kequate returns an S4 object of class 'keout' which includes the following slots (accessed by using the get functions):

Cr

The C-matrix from the log-linear model of test X on population P. (EG design only)

Cs

The C-matrix from the log-linear model of test Y on population Q. (EG design only)

Cp

The C-matrix from the log-linear model of tests X and Y or X and A on population P. (SG/NEAT CE/NEAT PSE/NEC designs only)

Cq

The C-matrix from the log-linear model of tests X and Y or X and A on population Q. (NEAT CE/NEAT PSE/NEC designs only)

SEEvect

An object of class SEEvect consisting of matrices containing the standard error vectors for the equatings. If linear=TRUE, then only the standard error vectors for the linear case are included.

Pest

The estimated probability matrix over population P.

Pobs

The observed probability matrix over population P.

Qest

The estimated probability matrix over population Q.

Qobs

The observed probability matrix over population Q.

scores

A list containing the score vectors for the tests to be equated and, in a NEAT CE design, the score vector of the anchor test. Also included are the estimated score probabilities and the continuized cumulative distribution functions for the respective tests.

linear

A logical vector. TRUE if linear=TRUE was specified, otherwise FALSE.

PRE

A data frame containing the percent relative error in the ten first moments between the equated scores and the reference distribution. (For chain equating, the PRE is calculated for the linking from X to A and the linking from A to Y.)

h

A data frame containing the continuization parameters used in the equating.

kernel

A character vector denoting the kernel used.

type

A character vector describing the design used.

equating

A data frame containing the equated values from X to Y and the associated standard errors (for either an equipercentile or a linear equating), as well as the SEED between the equipercentile and linear equating functions and the equated values and the associated standard errors in the linear case (if an equipercentile equating is conducted).

Author(s)

[email protected]
[email protected]
[email protected]

References

Andersson, B., Branberg, K., Wiberg, M. (2013). Performing the Kernel Method of Test Equating with the Package kequate. Journal of Statistical Software, 55(6), 1–25. URL http://www.jstatsoft.org/v55/i06/

von Davier, A.A., Holland, P.W., Thayer, D.T. (2004). The Kernel Method of Test Equating. Springer-Verlag New York.

See Also

glm,kefreq

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#EG toy example with different kernels
P<-c(5, 20, 35, 25, 15)
Q<-c(10, 30, 30, 20, 10)
x<-0:4
glmx<-glm(P~I(x)+I(x^2), family="poisson", x=TRUE)
glmy<-glm(Q~I(x)+I(x^2), family="poisson", x=TRUE)
keEG<-kequate("EG", 0:4, 0:4, glmx, glmy)
keEGlog<-kequate("EG", 0:4, 0:4, glmx, glmy, kernel="logistic", slog=sqrt(3)/pi)
keEGuni<-kequate("EG", 0:4, 0:4, glmx, glmy, kernel="uniform", bunif=sqrt(3))
plot(keEG)

## Not run: 
#NEAT example using simulated data
data(simeq)
freq1 <- kefreq(simeq$bivar1$X, 0:20, simeq$bivar1$A, 0:10)
freq2 <- kefreq(simeq$bivar2$Y, 0:20, simeq$bivar2$A, 0:10)
glm1<-glm(frequency~I(X)+I(X^2)+I(X^3)+I(X^4)+I(X^5)+I(A)+I(A^2)+I(A^3)+I(A^4)+
I(A):I(X)+I(A):I(X^2)+I(A^2):I(X)+I(A^2):I(X^2), family="poisson", data=freq1, x=TRUE)
glm2<-glm(frequency~I(X)+I(X^2)+I(A)+I(A^2)+I(A^3)+I(A^4)+I(A):I(X)+I(A):I(X^2)+
I(A^2):I(X)+I(A^2):I(X^2), family="poisson", data=freq2, x=TRUE)
keNEATPSE <- kequate("NEAT_PSE", 0:20, 0:20, glm1, glm2)
keNEATCE <- kequate("NEAT_CE", 0:20, 0:20, 0:10, glm1, glm2)
summary(keNEATPSE)
summary(keNEATCE)

#IRT observed-score equating
keNEATCEirt <- kequate("NEAT_CE", 0:20, 0:20, 0:10, glm1, glm2, irtx=simeq$irtNEATx, 
irty=simeq$irtNEATy)
getEquating(keNEATCEirt)

## End(Not run)

Example output

Loading required package: ltm
Loading required package: MASS
Loading required package: msm
Loading required package: polycor
There were 50 or more warnings (use warnings() to see the first 50)
There were 50 or more warnings (use warnings() to see the first 50)
There were 50 or more warnings (use warnings() to see the first 50)
There were 50 or more warnings (use warnings() to see the first 50)
There were 50 or more warnings (use warnings() to see the first 50)
 Design: NEAT/NEC PSE equipercentile 

 Kernel: gaussian 

 Sample Sizes: 
   Test X: 1000 
   Test Y: 1000 

 Score Ranges: 
   Test X: 
       Min = 0 Max = 20
   Test Y: 
       Min = 0 Max = 20

 Bandwidths Used: 
         hx        hy    hxlin    hylin
1 0.5565053 0.5965961 4174.636 3893.065

 Equating Function and Standard Errors: 
   Score        eqYx     SEEYx
1      0  0.09205267 0.1942508
2      1  1.00529645 0.2936029
3      2  1.71066891 0.3000528
4      3  2.40382589 0.2784434
5      4  3.16821121 0.2484674
6      5  4.02457825 0.2170684
7      6  4.95676093 0.1879431
8      7  5.93318006 0.1647129
9      8  6.92349257 0.1493227
10     9  7.90577157 0.1410529
11    10  8.86675782 0.1379823
12    11  9.80020972 0.1391913
13    12 10.70586832 0.1455432
14    13 11.58932920 0.1582699
15    14 12.46220166 0.1769702
16    15 13.34185600 0.1999657
17    16 14.25090458 0.2274527
18    17 15.21769249 0.2642756
19    18 16.28082472 0.3155014
20    19 17.50960906 0.3654119
21    20 19.06346406 0.3116302

 Comparing the Moments: 
          PREYx
1  -0.001950536
2  -0.030409760
3  -0.104246293
4  -0.242662612
5  -0.471510494
6  -0.814146401
7  -1.287688412
8  -1.902551048
9  -2.663207928
10 -3.569341359
 Design: NEAT CE equipercentile 

 Kernel: gaussian 

 Sample Sizes: 
   Test X: 1000 
   Test Y: 1000 

 Score Ranges: 
   Test X: 
       Min = 0 Max = 20
   Test Y: 
       Min = 0 Max = 20
   Test A: 
       Min = 0 Max = 10

 Bandwidths Used: 
        hxP      hyQ       haP       haQ   hxPlin  hyQlin   haPlin   haQlin
1 0.5579276 0.596834 0.5046575 0.4507951 4031.951 4001.41 2623.711 2847.425

 Equating Function and Standard Errors: 
   Score       eqYx     SEEYx
1      0  0.1100457 0.2294875
2      1  1.2277468 0.3676074
3      2  2.0628071 0.3615702
4      3  2.7819205 0.3171615
5      4  3.4647028 0.2746960
6      5  4.1760246 0.2296436
7      6  4.9314681 0.1999259
8      7  5.7456113 0.1823737
9      8  6.6307683 0.1699153
10     9  7.5687204 0.1615615
11    10  8.5117850 0.1588724
12    11  9.4396914 0.1576657
13    12 10.3466525 0.1614870
14    13 11.1944896 0.1708708
15    14 11.9901690 0.1778667
16    15 12.7709939 0.1957521
17    16 13.5627158 0.2352724
18    17 14.4601710 0.2896104
19    18 15.6035127 0.3764483
20    19 17.0949235 0.4409568
21    20 19.0084245 0.3656365

 Comparing the Moments: 
           PREAx       PREYa
1  -0.0008495887  -0.2150341
2  -0.0332785870  -0.9258954
3  -0.0658307915  -2.2755727
4   0.0299163577  -4.5233861
5   0.2634956050  -7.7417750
6   0.6504948141 -11.8931237
7   1.2007882269 -16.8532524
8   1.9211873491 -22.4411125
9   2.8166369753 -28.4502227
10  3.8911246302 -34.6748038
There were 50 or more warnings (use warnings() to see the first 50)
         eqYx    eqYxIRT     SEEYx  SEEYxIRT     SEEDYx    eqYxLIN  SEEYxLIN
1   0.1100457 -0.1828203 0.2294875 2.4684913 0.26260216 -0.6171984 0.3024207
2   1.2277468  0.7755590 0.3676074 1.1983068 0.30532809  0.2972549 0.2794771
3   2.0628071  1.7385634 0.3615702 0.6653366 0.27395511  1.2117082 0.2569971
4   2.7819205  2.7013446 0.3171615 0.4279782 0.22273853  2.1261616 0.2351135
5   3.4647028  3.6603822 0.2746960 0.3133420 0.17479377  3.0406149 0.2140094
6   4.1760246  4.6118620 0.2296436 0.2548961 0.12504084  3.9550683 0.1939394
7   4.9314681  5.5520153 0.1999259 0.2241513 0.09107683  4.8695216 0.1752593
8   5.7456113  6.4799643 0.1823737 0.2069534 0.08320548  5.7839748 0.1584612
9   6.6307683  7.4024675 0.1699153 0.1950876 0.08737170  6.6984283 0.1442044
10  7.5687204  8.3343193 0.1615615 0.1838228 0.09002282  7.6128816 0.1333068
11  8.5117850  9.2881106 0.1588724 0.1717702 0.09285470  8.5273350 0.1266384
12  9.4396914 10.2633224 0.1576657 0.1605681 0.09429168  9.4417883 0.1248788
13 10.3466525 11.2498930 0.1614870 0.1529187 0.09526459 10.3562420 0.1282302
14 11.1944896 12.2393382 0.1708708 0.1508950 0.09366542 11.2706950 0.1363160
15 11.9901690 13.2298089 0.1778667 0.1562256 0.08985708 12.1851485 0.1483642
16 12.7709939 14.2244736 0.1957521 0.1717227 0.10038596 13.0996017 0.1635013
17 13.5627158 15.2281732 0.2352724 0.2034794 0.13636221 14.0140551 0.1809536
18 14.4601710 16.2453765 0.2896104 0.2654160 0.19020081 14.9285084 0.2001164
19 15.6035127 17.2800595 0.3764483 0.3912361 0.27581022 15.8429618 0.2205442
20 17.0949235 18.3372260 0.4409568 0.6701206 0.35384251 16.7574151 0.2419168
21 19.0084245 19.4268079 0.3656365 1.3538441 0.31441001 17.6718684 0.2640049

kequate documentation built on May 29, 2017, 11:32 p.m.