eq {lazy.tools} | R Documentation |
This performs the observed score equating of the test score 1 to the test score 2.
eq( score1, freq1, cdf1 = NULL, score2, freq2, cdf2 = NULL, lim1 = NULL, lim2 = NULL, smooth1 = 0, bandwid1 = 3, smooth2 = 0, bandwid2 = 3, method = 2, title = "", nolow = 0, round = 1, print = 1, plot = 1 )
score1 |
a vector consisting of the score of test1 |
freq1 |
a vector consisting of the frequency counts at score1 |
cdf1 |
a vector consisting of the cumulative frequencies at score1 |
score2 |
a vector consisting of the score of test2 |
freq2 |
a vector consisting of the frequency counts at score2 |
cdf2 |
a vector consisting of the cumulative frequencies at score2 |
lim1 |
min and max score of test1 |
lim2 |
min and max score of test2 |
smooth1 |
# of times to smooth cdf1 |
bandwid1 |
bandwidth for running average smooth of cdf1 |
smooth2 |
# of times to smooth cdf2 |
bandwid2 |
bandwidth for running average smooth of cdf2 |
method |
= 1 to use linear equating |
title |
title string |
nolow |
= 1 to avoid lowering scores |
round |
= 0 not to round the result to integer. (not yet available) |
print |
= 1 to print the result |
plot |
= 1 to plot the conversion table |
Equipercentile equating is essentially the same as qqplot.
Therefore, the following two codes produce similar results:
eq( score1=score1, freq1=freq1, score2=score2, freq2=freq2 )
qqplot( expand_freqdist( score1, freq1 )
, expand_freqdist( score2, freq2 ), type="l" )
Note that, since native qqplot cannot handle case weight,
expand_freqdist is used to recover the raw data from frequency table.
a list of the following:
ctable: the conversion table consisting of (score, score21, freq1)
mands: the summary stat of the converted score dist: (score21,freq1)
newfreq: the frequency distribution of the converted score (score21, freq21)
sdist1 and sdist2: input and smoothed score distributions
cntr: a list of control parameters used.
seed <- 1701 set.seed(seed) scoredist1 <- gen_test_score( 500, 0,10, beta=c(2,4), plot=1 ) scoredist2 <- gen_test_score( 1000, 0,15, beta=c(4,2), plot=1 ) reseq <- eq( score1=scoredist1[,1], freq1=scoredist1[,2] , score2=scoredist2[,1], freq2=scoredist2[,2] , smooth1=3, smooth2=3, method=2, plot=3 )