Halaman ini digunakan untuk menunjukkan aplilasi program yang saya buat dan saya lampirkan dalam artikel berjudul Transformed Item Difficulty.
Bagian Pertama
Pertama, kita perlu me-run program yang telah saya buat tersebut.
### Transformed Item Difficulty
##TID function
tid=function(x,g){
x=as.matrix(x)
p=cbind(colMeans(x[g==0,]),colMeans(x[g==1,]))
z=qnorm(p,13,4)
list(p=p,TID=z,r.TID=cor(z))
}
##Plot function
plot.tid=function(x){
plot(x$TID,xlim=c(min(x$TID)-3,max(x$TID)+3),ylim=c(min(x$TID)-3,max(x$TID)+3),xlab="Delta Score Focal Group",ylab="Delta Score Reference Group")
curve(x^1, from=min(x$TID)-3,to=max(x$TID)+3,add=T)
}
Kemudian meload data yang hendak dianalisis. Dalam contoh kali ini saya membuat sendiri data dengan asumsi tidak ada DIF dan tidak ada perbedaan kemampuan antar kelompok. Data tersebut saya simpan dalam objek bernama d1
##Simulasi data
n=1000
nitem=20
g=rep(c(0,1),each=n/2)
d1=NULL
for(j in 1:nitem){
d1=cbind(d1,rbinom(n,1,runif(1,0.2,0.7)))
}
Ukuran sampel dalam data tersebut sebesar 1000 orang yang mengerjakan 20 item. Dalam data tersebut tidak ada item dengan DIF dan tidak ada perbedaan kemampuan antar kelompok.
Bagian Kedua
Kemudian kita menjalankan program di atas dengan mengetikkan perintah berikut:
hasil=tid(d1,g)
hasil
## $p
## [,1] [,2]
## [1,] 0.300 0.320
## [2,] 0.384 0.416
## [3,] 0.452 0.488
## [4,] 0.254 0.260
## [5,] 0.628 0.620
## [6,] 0.422 0.472
## [7,] 0.394 0.428
## [8,] 0.448 0.442
## [9,] 0.226 0.208
## [10,] 0.626 0.658
## [11,] 0.366 0.356
## [12,] 0.590 0.636
## [13,] 0.192 0.184
## [14,] 0.508 0.540
## [15,] 0.278 0.290
## [16,] 0.394 0.436
## [17,] 0.294 0.274
## [18,] 0.268 0.222
## [19,] 0.672 0.652
## [20,] 0.250 0.178
##
## $TID
## [,1] [,2]
## [1,] 10.902398 11.129205
## [2,] 11.820032 12.151451
## [3,] 12.517560 12.879664
## [4,] 10.352180 10.426618
## [5,] 14.306244 14.221923
## [6,] 12.212882 12.719027
## [7,] 11.924366 12.274127
## [8,] 12.477136 12.416398
## [9,] 9.991660 9.746478
## [10,] 14.285111 14.628044
## [11,] 11.630135 11.523315
## [12,] 13.910180 14.391149
## [13,] 9.517801 9.399096
## [14,] 13.080217 13.401735
## [15,] 10.644827 10.786461
## [16,] 11.924366 12.355526
## [17,] 10.833054 10.596961
## [18,] 10.524508 9.938176
## [19,] 14.781770 14.562903
## [20,] 10.302041 9.307945
##
## $r.TID
## [,1] [,2]
## [1,] 1.0000000 0.9793558
## [2,] 0.9793558 1.0000000
Untuk menampilkan scatter plot kita menuliskan baris perintah berikut:
plot.tid(hasil)