TUTORIAL ANALISIS RASCH MENGGUNAKAN PROGRAM R

A.    Library ltm: Latent Trait Models under IRT 1PL (Rasch Model)

Analisis data multivariat dikotomi dan politomous menggunakan model sifat laten di bawah pendekatan Teori Respons Item. Ini termasuk model Rasch, Logistik Dua Parameter, Tiga Parameter Birnbaum, Respons Yang Dinilai, dan Model Kredit Parsial Umum.

IRT atau Item Response Theory, dalam bahasa Indonesia dikenal dengan teori respon butir melupakan suatu statistik untuk melakukan analisis butir modern. IRT memiliki beberapa jenis yg mempertimbangkan parameter yang diestimasi. 1PL (mempertimbangkan indeks kesulitan), 2PL (mempertimbangkan indeks kesulitan dan daya beda), dan 3PL (mempertimbangkan indeks kesulitan, daya beda, dan psuedo guessing).

Statistik analisis untuk IRT memang rumit sehingga dibutuhkan alat bantu berupa aplikasi untuk melakukan perhitungan. Sayangnya, banyak aplikasi yang berbayar sedangkan kondisi kita di Indonesia kurang memungkinkan untuk menggunakan software berbayar.

Bahasa pemrograman R menjadi solusi karena free. Walaupun kekurangannya memang perintah menggunakan bahasa R yang mungkin tidak familiar untuk beberapa kalangan. Dengan demikian saya mencoba untuk membuat tutorial agar bisa lebih mudah dipahami.

Langkah analisis:

  1. Pastikan sudah install program R
  2. Running program R dengan tampilan frontpage seperti berikut:
  3. Pastikan library ltm (Latent Trait Models) dan foreign (library untuk membaca data dengan format lain)

Pada editor R ketika command:

install.packages(“ltm“) dan
install.packages(“foreign“)

  1. Buatlah skrip R untuk urutan analisis ltm yang akan dilakukan, disimpan dalam ekstensi file .R. Beri nama file “rasch-ltm.R”.
  2. Kemudian klik button “Open script” dan pilih file “rasch-ltm.R” sehingga terbuka skripnya dalam notepad.
  3. Untuk mengekseskusi tiap baris maka klik button “Run line or selection” atau jika ingin dijalankan sekaligus maka pilih “Run all” dari menu utama “EDIT”.
  4. Perhatikan hasilnya langkah demi langkah eksekusi.

 

B. Untuk analisis ltm 2PL hampir sama dengan 1PL tetapi berbeda dalam perintah analisisnya, yaitu mengganti command “rasch” dengan “ltm” pada perintah berikut:

hasilX <- rasch(dataX) diganti menjadi hasilX <- ltm(dataX~z1)

Perintah lainnya sama.

 

C. Untuk analisis ltm 3PL hampir sama dengan 1PL dan 2PL tetapi berbeda dalam perintah analisisnya, yaitu mengganti command “rasch” atau  “ltm” dengan “tpm” pada perintah berikut:

hasilX <- rasch(dataX) diganti menjadi hasilX <- tpm(dataX,start.val=”random”)

Perintah lainnya sama.

 

D. Untuk analisis data POLITOMI 1PL masih menggunakan library ltm, tetapi menggunakan perintah berikut:

hasilX <- rasch(dataX) diganti menjadi hasilX <- grm(dataX, constrained=T)

 

E. Untuk analisis data POLITOMI 2PL masih menggunakan library ltm, tetapi menggunakan perintah berikut:

hasilX <- rasch(dataX) diganti menjadi hasilX <- grm(dataX)

 

Semua data dan skrip R sudah tersimpan di link https://s.id/rasch, silahkan didownload jika memerlukannya.

Skrip Analisis Rasch Menggunakan Program R

# Membuat file “rasch-ltm.R”
# Memasang library yang dibutuhkan
# install.packages(“ltm”) -> memasang library ltm
# install.packages(“foreign”) -> memasang libray foreign

# Memanggil library yang akan digunakan
library(ltm)
library(foreign)

# Mengatur lokasi file data tersimpan
setwd(“C:/Users/lenovo/Desktop/TUTORIAL RASCH/soal-rasch”)

# Membaca data pada file input data DIKOTOMI
# dataX <- read.csv( “HasilUjiCoba.csv”) -> jika file csv
# dataX <- read.table(“HasilUjiCoba.txt”, header=T)
dataX <- read.table(file=“HasilUjiCoba.txt”)
dataX

# Analisis Rasch 1PL untuk dataX
# Untuk analisis 2PL gunakan command: hasilX <- ltm(dataX~z1)
hasilX <- rasch(dataX)
hasilX

# Melihat koefisien hasil analisis Rasch hasilX
coef.rasch(hasilX)

# Membuat kurva karakteristik ability vs probability
plot(hasilX)

# Item fit
item.fit(rasch(dataX), FUN=mean)

# Faktor sckor
factor.scores(hasilX)

# Melihat informasi
information(hasilX, c(-3,3), items=c(1,6))

# Ploting
plot((hasilX, type=”IIC”, items=1:3, legend=T, lwd=2, cx=”topright”)
plot((hasilX, type=”IIC”, items=0, legend=T, lwd=2, cex.iab=1.1”)

# Menghitung Standard Error
SEM1PL <- plot(hasilX, type=”IIC”, items=0, plot=FALSE)
plot(SEM1PL[,”z”],1/sqrt(SEM1PL[,”info”]), lwd=2,xlab=”Ability”, ylab=”SE”, main=”Harga Standar Error”)

# Membaca data beberapa kolom, lalu lanjutkan dengan command seperti di atas
dataX1_5 <- dataX[ ,1:5]
dataX1_5
dataX6_10 <- dataX[ ,6:10]
dataX6_10
dataX11_15 <- dataX[ ,11:15]
dataX11_15

Leave a Reply

Your email address will not be published. Required fields are marked *