The SL items were removed, together with ill-fitting items. This resulted in 145 items:
| a | b | |
|---|---|---|
| VM_385_Bakgården_1_kaka | 5.0 | -3.3 |
| VM_386_Bakgården_2_gutten | 1.4 | -3.6 |
| VM_388_Bakgården_4_Badebassenget | 1.6 | -3.6 |
| VM_390_Bakgården_6_Verktøykassa | 5.6 | -2.1 |
| VM_392_Bakgården_8_Løvetannen | 1.5 | -2.0 |
| VM_394_Bakgården_10_Det.åpne.vinduet | 1.0 | -3.9 |
| VM_395_Bakgården_11_Statuen | 1.5 | -3.1 |
| VM_396_Bakgården_12_Den.minste.sykkelen | 1.4 | -3.2 |
| VM_397_Bakgården_13_Den.største.sykkelen | 2.3 | -2.9 |
| VM_399_Bakgården_15_Ballen.mellom.barna | 1.2 | -3.3 |
| VM_400_Bakgården_16_Duken | 1.5 | -2.1 |
| VM_401_Bakgården_17_Den.røde.buksa | 1.0 | -3.5 |
| VM_403_Landskap_2_Ekornet | 2.2 | -2.3 |
| VM_404_Landskap_3_reven | 2.4 | -2.3 |
| VM_405_Landskap_4_Pinnsvinet | 2.0 | -2.2 |
| VM_406_Landskap_5_Sola | 1.6 | -2.6 |
| VM_407_Landskap_6_Bilen | 1.9 | -2.6 |
| VM_408_Landskap_8_Toget | 2.1 | -2.6 |
| VM_409_Landskap_7_Flyet | 1.2 | -3.0 |
| VM_410_Landskap_9_Fuglen.i.treet | 1.3 | -2.9 |
| VM_411_Landskap_10_Den.korteste.broa | 1.0 | -3.1 |
| VM_412_Landskap_11_Det.nærmeste.treet | 1.1 | -3.4 |
| VM_413_Landskap_12_båten.under.broa | 1.2 | -2.9 |
| VM_417_Bondegård_1_høna | 2.3 | -1.3 |
| VM_419_Bondegård_3_Lammet | 1.7 | -0.7 |
| VM_420_Bondegård_4_føllet | 1.6 | 0.0 |
| VM_421_Bondegård_5_Kalven | 1.8 | -0.9 |
| VM_422_Bondegård_6_Hustaket | 1.8 | -1.2 |
| VM_423_Bondegård_7_Katten | 1.9 | -2.2 |
| VM_424_Bondegård_8_Traktoren | 2.2 | -2.0 |
| VM_425_Bondegård_9_Bonden | 2.9 | -0.8 |
| VM_426_Bondegård_10_Bilen | 1.3 | -2.6 |
| VM_427_Bondegård_11_Huset | 1.2 | -1.5 |
| VM_429_Bondegård_13_Pipa | 1.7 | -2.3 |
| VM_430_Bondegård_Låven | 2.3 | -0.9 |
| VM_431_Bondegård_15_Det.øverste.vinduet | 2.4 | -1.5 |
| VM_432_Bondegård_16_Den.eldste.personen | 2.0 | -0.8 |
| VM_433_Bondegård_17_Kjolen | 1.3 | -2.4 |
| VM_434_Bondegård_18_Høyet | 3.1 | -0.9 |
| VM_435_Butikk_1_Pengene | 2.7 | -1.9 |
| VM_436_Butikk_2_Tyven | 2.5 | -2.1 |
| VM_437_Butikk_3_Bananene | 4.4 | -1.8 |
| VM_438_Butikk_4_Brødene | 3.2 | -1.9 |
| VM_439_Butikk_5_Brusflaskene | 1.5 | -1.8 |
| VM_440_Butikk_6_Pærene | 3.8 | -1.8 |
| VM_441_Butikk_7_Kaka | 3.0 | -2.0 |
| VM_442_Butikk_8_Politimannen | 3.0 | -1.8 |
| VM_443_Butikk_9_Melonene | 2.9 | -1.7 |
| VM_444_Butikk_10_Avisene | 2.5 | -1.7 |
| VM_445_butikk_11_Barnevogna | 1.9 | -1.8 |
| VM_446_Butikk_12_Kunden | 2.6 | -1.4 |
| VM_447_Butikk_13_Selgeren | 1.3 | -1.3 |
| VM_448_Butikk_14_Hunden | 2.4 | -2.2 |
| VM_449_Butikk_15_Appelsinene | 2.6 | -1.9 |
| VM_450_Butikk_16_Smågodtet | 1.7 | -1.5 |
| VM_451_Butikk_17_Den.yngste.personen | 3.3 | -1.4 |
| VM_452_Butikk_18_Handlekurva | 1.8 | -2.0 |
| VM_453_Klasserom_1_Læreren | 1.5 | -3.4 |
| VM_454_Klasserom_2_Eleven.med.briller | 1.9 | -3.4 |
| VM_455_Klasserom_3_Blyanten | 1.0 | -3.6 |
| VM_457_Klasserom_5_Den.minste.pulten | 1.7 | -2.9 |
| VM_458_Klasserom_Døra | 2.1 | -2.6 |
| VM_460_Klasserom_7_Stiftemaskinen | 1.7 | -1.8 |
| VM_461_Klasserom_8_Bøkene | 1.2 | -3.6 |
| VM_462_Klasserom_9_Skolesekken | 1.4 | -3.1 |
| VM_463_Klasserom_10_Matboksen | 1.1 | -4.1 |
| VM_464_Klasserom_11_Bamsen | 1.4 | -3.6 |
| VM_467_Klasserom_14_Saksa | 1.1 | -3.6 |
| VM_469_Klasserom_16_Tavla | 1.7 | -3.4 |
| VM_470_Klasserom_17_Jakka | 3.4 | -2.3 |
| vok_214 | 1.0 | -1.2 |
| vok_215 | 1.7 | -0.9 |
| vok_216 | 1.5 | -1.0 |
| vok_220 | 1.0 | 0.6 |
| vok_221 | 1.1 | 0.1 |
| vok_222 | 1.2 | 0.1 |
| vok_223 | 1.4 | -0.4 |
| vok_224 | 1.3 | 0.4 |
| vok_229 | 1.4 | -1.3 |
| vok_230 | 0.9 | 0.7 |
| vok_232 | 1.2 | 0.9 |
| vok_233 | 1.2 | -0.7 |
| vok_235 | 1.3 | -0.7 |
| vok_237 | 2.2 | -1.0 |
| vok_238 | 1.8 | -0.9 |
| vok_240 | 2.1 | -0.6 |
| vok_241 | 3.5 | -0.8 |
| vok_242 | 3.7 | -0.9 |
| vok_243 | 2.6 | -0.6 |
| vok_244 | 1.6 | -0.4 |
| vok_245 | 3.8 | -1.0 |
| vok_246 | 1.6 | -0.4 |
| vok_247 | 1.2 | 1.6 |
| vok_248 | 5.2 | -1.0 |
| vok_249 | 2.8 | -1.2 |
| vok_250 | 2.5 | -0.4 |
| vok_251 | 3.7 | -0.9 |
| vok_252 | 1.7 | -1.6 |
| vok_253 | 1.4 | -2.8 |
| vok_254 | 2.3 | -1.8 |
| vok_255 | 1.5 | -1.5 |
| vok_256 | 2.3 | -1.3 |
| vok_260 | 1.3 | -0.5 |
| vok_261 | 1.9 | -1.2 |
| vok_262 | 3.1 | -1.5 |
| vok_267 | 2.9 | -1.3 |
| vok_269 | 2.5 | -1.1 |
| vok_270 | 1.2 | -0.2 |
| vok_271 | 3.1 | -1.2 |
| vok_272 | 2.2 | -1.3 |
| vok_273 | 1.8 | -0.8 |
| vok_274 | 2.2 | -1.0 |
| vok_275 | 2.4 | -1.4 |
| vok_277 | 2.7 | -0.8 |
| vok_278 | 2.0 | -0.7 |
| vok_280 | 2.3 | -1.3 |
| vok_281 | 2.1 | -0.7 |
| vok_282 | 1.9 | -0.1 |
| vok_283 | 2.4 | -0.7 |
| vok_284 | 2.6 | -0.2 |
| vok_285 | 2.2 | -1.3 |
| vok_286 | 2.5 | -0.9 |
| vok_287 | 2.8 | -0.7 |
| vok_288 | 2.0 | -1.0 |
| vok_289 | 1.7 | -0.2 |
| vok_291 | 2.6 | -0.6 |
| vok_292 | 1.0 | -1.0 |
| vok_293 | 2.2 | -2.0 |
| vok_295 | 1.7 | -1.5 |
| vok_296 | 1.4 | -1.0 |
| vok_297 | 1.7 | -1.3 |
| vok_299 | 2.7 | -1.0 |
| vok_301 | 1.1 | 0.0 |
| vok_303 | 1.4 | -0.4 |
| vok_304 | 3.0 | -1.0 |
| vok_305 | 2.4 | -0.8 |
| vok_307 | 2.8 | -0.8 |
| vok_308 | 1.9 | -0.4 |
| vok_309 | 1.4 | 0.0 |
| vok_311 | 3.7 | -0.8 |
| vok_312 | 1.6 | 0.1 |
| vok_313 | 1.0 | 1.0 |
| vok_314 | 2.1 | -0.7 |
| vok_315 | 2.1 | -1.0 |
| vok_316 | 1.1 | 0.9 |
n <- 10^4
truethetas <- seq(-2.2,2.2, length.out=n)
est.df <- data.frame(truetheta=truethetas)
NMAX <- 25
SEMTHR <- .01 # UNATTAINABLE SO LENGTH WILL BE 25 FOR ALL STUDENTS
est.df$NMAX <- NMAX; est.df$SE <- SEMTHR;
stop <- list(rule = c("precision","length"), thr = c(SEMTHR, NMAX))
res <- simulateRespondents(thetas = truethetas,
itemBank = bank,
start=start,
test = list(method = "WL", itemSelect = "MFI"),
stop = stop)
## Simulation process: 0 %
## Simulation process: 10 %
## Simulation process: 20 %
## Simulation process: 30 %
## Simulation process: 40 %
## Simulation process: 50 %
## Simulation process: 60 %
## Simulation process: 70 %
## Simulation process: 80 %
## Simulation process: 90 %
## Simulation process: 100 %
cat(paste("WL, NMAX=", NMAX, "SE=", SEMTHR, "\n"))
## WL, NMAX= 25 SE= 0.01
plot(res)
## The plot was not captured!
cond.df <- data.frame(condTheta=res$condTheta,
condBias=res$condBias,
condRMSE=res$condRMSE,
condnItems=res$condnItems,
condSE=res$condSE,
condMethod = "WL")
res <- simulateRespondents(thetas = truethetas,
itemBank = bank,
start=start,
test = list(method = "BM", itemSelect = "MFI"),
stop = stop)
## Simulation process: 0 %
## Simulation process: 10 %
## Simulation process: 20 %
## Simulation process: 30 %
## Simulation process: 40 %
## Simulation process: 50 %
## Simulation process: 60 %
## Simulation process: 70 %
## Simulation process: 80 %
## Simulation process: 90 %
## Simulation process: 100 %
cat(paste("BM, NMAX=", NMAX, "SE=", SEMTHR, "\n"))
## BM, NMAX= 25 SE= 0.01
plot(res)
## The plot was not captured!
cond.df <- rbind(cond.df,data.frame(condTheta=res$condTheta,
condBias=res$condBias,
condRMSE=res$condRMSE,
condnItems=res$condnItems,
condSE=res$condSE,
condMethod = "BM"))
ggplot(cond.df, aes(condTheta, condnItems, color=condMethod))+geom_line()+xlab("True ability")+ylab("Test length")+ggtitle("Test length")
ggplot(cond.df, aes(condTheta, condBias, color=condMethod))+geom_line()+xlab("True ability")+ylab("Bias")+
ggtitle("BIAS")
ggplot(cond.df, aes(condTheta, condRMSE, color=condMethod))+geom_line()+xlab("True ability")+ylab("RMSE")+
ggtitle("RMSE
")
ggplot(cond.df, aes(condTheta, condSE, color=condMethod))+geom_line()+xlab("True ability")+ylab("SE")+
ggtitle("SE")
library("knitcitations")
Using the Bayes modal or the Warm ability estimator does not make any difference. Performance with fixed test length 25 yields a RMSE consistently below \(0.3\) up to the 70th ability percentile, which is deemed adequate for our purposes. We therefore end up with the following design