• Tidak ada hasil yang ditemukan

RESAMPLING BOOTSTRAP PADA R

N/A
N/A
Protected

Academic year: 2021

Membagikan "RESAMPLING BOOTSTRAP PADA R"

Copied!
8
0
0

Teks penuh

(1)

Joko Sungkono*

Abstrak:Pada tulisan ini, algoritma resampling bootstrap akan disajikan secara detail dalam bahasa pemrograman software R untuk beberapa contoh kasus. Resampling bootstrap pada R diberikan dalam suatu fungsi yang disusun mengikuti algoritma resampling bootstrap pada kasus yang diambil.

Untuk melihat keakuratan metode bootstrap pada masing-masing kasus diberikan suatu simulasi monte carlo dengan membangkitkan data dari variabel random berdistribusi normal.

Kata kunci: bootstrap, resampling, software R, simulasi.

PENDAHULUAN

Bootstrap adalah suatu metode yang dapat bekerja tanpa membutuhkan asumsi distribusi karena sampel asli digunakan sebagai populasi. Dalam Sahinler dan Topuz [4], Efron menyatakan bahwa bootstrap adalah teknik resampling nonparametrik yang bertujuan untuk menentukan estimasi standar eror dan interval konfidensi dari parameter populasi seperti mean, rasio, median, proporsi, koefisien korelasi atau koefisien regresi tanpa menggunakan asumsi distribusi. Bootstrap dapat digunakan untuk mengatasi permasalahan dalam statistika baik masalah data yang sedikit, data yang menyimpang dari asumsinya maupun data yang tidak memiliki asumsi dalam distribusinya. Bootstrap adalah suatu metode yang berbasis komputer yang sangat potensial untuk dipergunakan pada masalah keakurasian, [3].

Bootstrap diperkenalkan pertama kali oleh Efron tahun 1979. Bootstrap adalah metode yang didasarkan pada simulasi data untuk keperluan inferensi statistik, [3]. Metode bootstrap digunakan untuk mencari distribusi sampling dari suatu estimator

dengan prosedur resampling dengan pengembalian dari data asli. Metode bootstrap dilakukan dengan mengambil sampel dari sampel asli dengan ukuran sama dengan ukuran sampel asli dan dilakukan dengan pengembalian. Kedudukan sampel asli dalam metode bootstrap dipandang sebagai populasi. Metode peyampelan ini biasa disebut dengan resampling bootstrap. Bootstrap juga sering digunakan untuk mengestimasi standar eror estimator dan interval konfidensi dari suatu parameter populasi yang tidak diketahui. Pada dasarnya teknik estimasi dengan metode resampling bootstrap menggunakan semua kemungkinan sampel yaitu nn. Akan tetapi hal ini

sangat sulit untuk dilakukan untuk n>7. Untuk keperluan perhitungan biasanya digunakan pendekatan simulasi, sehingga disebut simulasi bootstrap. Misalkan dimiliki sampel random berukuran n yaitu yang diambil dari suatu populasi dan statistik adalah estimasi untuk parameter berdasar sampel asli. Berdasarkan uraian metode resampling bootstrap menurut Efron dan Tibshirani [3], prosedur resampling bootstrap dapat dituliskan sebagai :

(2)

1. Mengkonstruksi distribusi empiris dari suatu sampel dengan memberikan probabilitas 1/n pada setiap dimana i = 1, 2,..., n

2. Mengambil sampel bootstrap berukuran n secara random dengan pengembalian dari distribusi 1. empiris , sebut sebagai sampel bootstrap pertama

3. Menghitung 1.statistik yang diinginkan dari sampel bootstrap , sebut sebagai

4. Mengulangi langkah 2 dan 3 hingga B kali, 1. diperoleh

5. Mengkontruksi suatu distribusi probabilitas dari dengan memberikan probabilitas 1/B pada setiap . Distribusi tersebut merupakan estimator bootstrap untuk distribusi sampling dan dinotasikan dengan . 6. Pendekatan estimasi bootstrap untuk adalah

mean dari 1. distribusi yaitu

Pendekatan bootstrap jika diulang lebih dari satu kali akan memberikan hasil yang berbeda, hal ini karena yang dilakukan adalah suatu simulasi. Jika dapat dilakukan menggunakan semua kemungkinan sampel yaitu nn maka hasilnya akan sama.

Secara teori, menurut Shao dan Tu [5], sifat asimtotis distribusi bootstrap mendekati distribusi sebenarnya. Pada penggunaannya, metode bootstrap harus dilakukan dengan bantuan komputer karena melibatkan perhitungan yang sangat banyak. Software – software statistik belum ada yang memberikan paket resampling bootstrap secara langsung, sehingga metode ini masih jarang digunakan oleh peneliti.

Tulisan ini memberikan paket resampling bootstrap secara detail dalam bahasa R yang disusun berdasarkan algoritma resampling bootstrap pada kasus estimasi rata-rata dan estimasi parameter regresi linear.

ESTIMASI BOOTSTRAP UNTUK RATA-RATA

Pada bagian ini akan dibahas resampling bootstrap untuk estimasi rata-rata populasi. Misalkan dimiliki sampel berukuran n yaitu

yang diambil dari suatu populasi dan adalah estimasi untuk parameter berdasar sampel asli. Berdasarkan uraian metode resampling bootstrap menurut Efron dan Tibshirani [3], prosedur resampling bootstrap untuk estimasi rata-rata dapat dituliskan sebagai berikut

1. Mengkonstruksi distribusi empiris dari suatu sampel dengan memberikan probabilitas 1/n pada setiap dimana i = 1, 2,..., n

2. Mengambil sampel bootstrap berukuran n secara random dengan pengembalian dari distribusi empiris , sebut sebagai sampel bootstrap pertama

3. Menghitung statistik yang diinginkan dari sampel bootstrap , sebut sebagai

4. Mengulangi langkah 2 dan 3 hingga B kali, diperoleh

5. Mengkontruksi suatu distribusi probabilitas dari dengan memberikan probabilitas 1/B pada setiap . Distribusi tersebut merupakan estimator bootstrap untuk distribusi sampling dan dinotasikan dengan .

(3)

6. Pendekatan estimasi bootstrap untuk adalah mean dari distribusi yaitu

Menurut Bickel dan Freedman [2], sifat asimtotis distribusi bootstrap untuk kuantitas pivot mendekati distribusi normal dengan rata-rata nol dan variansi .

Estimasi interval konfidensi bootstrap untuk rata-rata diberikan dalam interval pendekatan normal dan interval persentil. Interval konfidensi bootstrap dengan pendekatan normal sebenarnya analog dengan interval konfidensi standar. Menurut Bennett [1], pemanfaatan metode bootstrap dalam mengkonstruksi interval ini adalah untuk menentukan standar eror dari estimator. Berdasarkan sampel bootstrap dengan replikasi B kali diperoleh . Variansi estimator bootstrap diberikan oleh

Standar eror bootstrap diperoleh dari akar variansi. Interval konfidensi bootstrap pendekatan normal (1- )x 100% untuk diberikan oleh

Interval konfidensi bootstrap persentil didasarkan pada distribusi estimator bootstrap. Dibentuk distribusi empiris untuk

misalkan . Dari distribusi ini dapat dihitung nilai persentil yang merupakan ide dasar konstruksi interval konfidensi bootstrap persentil. Interval konfidensi

bootstrap persentil (1- )x 100% untuk diberikan oleh

dengan adalah persentil ke 100x( ) dan merupakan persentil ke 100x( ) dari distribusi

Algoritma resampling bootstrap pada kasus estimasi rata-rata dibuat dalam bahasa pemrograman R dengan nama fungsi “boot” dan diberikan sebagai berikut.

> fix(boot)

Kemudian pada fungsinya diisikan sebagai berikut. function(x,B,a)

{

n<-length(x)

y <- matrix(0, nrow = B, ncol = n) xbar <- seq(1:B)

for(i in 1:B) {

y[i, ] <- sample(x, n, replace = T) xbar[i] <- mean(y[i, ]) } xbartot <- mean(xbar) bb<-mean(x)+qnorm(a/2)*sqrt(var(x)/n) ba<-mean(x)+qnorm(1-a/2)*sqrt(var(x)/n) int<-cbind(bb,ba) bb1<-quantile(xbar,a/2) ba1<-quantile(xbar,1-(a/2))

(4)

int1<-cbind(bb1,ba1)

list(est.bootstrap=xbartot,int.normal=int,int.pct=int1) }

Untuk menjalankan program resampling bootstrap di R ini diberikan simulasi dengan membangkitkan data. Misalkan populasi terdiri dari 20.000 data dari distribusi normal

> x<-rnorm(20000,33,4) > mean(x)

[1] 33.03872

Dari populasi kita dapat mengetahui rata-rata populasi yang yang akan kita estimasi adalah 33,03872. Diambil sampel secara random berukuran 500 dari populasi. Sampel ini selanjutnya disebut sampel asli.

> y<-sample(x,500,replace=F)

Selanjutnya untuk mengestimasi rata-rata populasi menggunakan resampling bootstrap berdasarkan sampel asli dengan replikasi B=1000 dan tingkat kepercayaan interval 95% diberikan oleh > boot(y,1000,0.05) $est.bootstrap [1] 33.02407 $int.normal bb ba [1,] 32.66326 33.37283 $int.pct bb1 ba1 2.5% 32.66392 33.3865

Berdasarkan output R yang diperoleh terlihat bahwa rata-rata populasi 33,02407 yang sangat dekat dengan rata-rata populasi yaitu 33,03872. Sedangkan estimasi interval konfidensi baik interval bootstrap pendekatan normal maupun interval bootstrap persentil memberikan hasil yang hampir sama dan keduanya memuat parameter populasi dengan range yang cukup sempit.

ESTIMASI BOOTSTRAP UNTUK PARAMETER REGRESI LINEAR

Pada bagian ini akan dibahas resampling bootstrap untuk estimasi parameter regresi linear. Tanpa mengurangi keumuman pembahasan diambil regresi linear dengan satu variabel dependen dan dua variabel independen. Model regresi linear populasinya . Metode bootstrap yang diberikan pada regresi ini adalah resampling residual. Misalkan dimiliki sampel berpasangan antara variabel dependen dan independen yang dituliskan dalam bentuk matrik Y dan X dengan ukuran sampel n. Selanjutnya sampel ini disebut sampel asli. Menurut Sahinler dan Topuz [4], prosedur bootstrap resampling residual untuk estimasi parameter regresi dapat dituliskan sebagai berikut :

1. Menentukan fit model berdasarkan sampel asli dengan menggunakan metode kuadrat terkecil, diperoleh

2. Menghitung nilai residual , diperoleh

3. Mengambil sampel bootstrap berukuran n dari secara random dengan pengembalian, diperoleh sampel bootstrap pertama

(5)

4. Menghitung nilai bootstrap untuk dengan menambahkan pada fit model, sehingga diperoleh

5. Menghitung koefisien regresi untuk sampel bootstrap yang pertama dengan , diperoleh

6. Mengulangi proses diatas sebanyak B kali, diperoleh

7. Pendekatan estimasi bootstrap untuk parameter regresi adalah mean dari distribusi

yaitu

Pada kasus ini karena terdapat dua variabel

independen maka matrik ,

dan .

Estimasi interval konfidensi bootstrap untuk parameter regresi diberikan dalam interval pendekatan normal dan interval persentil. Interval konfidensi bootstrap dengan pendekatan normal sebenarnya analog dengan interval konfidensi standar. Menurut Bennett [1], pemanfaatan metode bootstrap dalam mengkonstruksi interval ini adalah untuk menentukan standar eror dari estimator. Berdasarkan sampel bootstrap dengan replikasi B kali diperoleh

. Variansi estimator bootstrap untuk k=0,1,2 diberikan oleh

Standar eror bootstrap diperoleh dari akar variansi. Interval konfidensi bootstrap pendekatan normal (1- )x 100% untuk diberikan oleh

Interval konfidensi bootstrap persentil didasarkan pada distribusi estimator bootstrap. Untuk setiap k, dibentuk distribusi empiris untuk misalkan . Dari distribusi ini dapat dihitung nilai persentil yang merupakan ide dasar konstruksi interval konfidensi bootstrap persentil. Interval konfidensi bootstrap persentil

(1-)x 100% untuk diberikan oleh

dengan adalah persentil ke 100x( ) dan merupakan persentil ke 100x( ) dari distribusi

Algoritma resampling bootstrap pada kasus estimasi parameter regresi dibuat dalam bahasa pemrograman R dengan nama fungsi “reg” dan diberikan sebagai berikut.

> fix(reg)

Kemudian pada fungsinya diisikan sebagai berikut. function(y, x1, x2,B,a) { n<-length(y) b0 <- matrix(coef(lm(y ~ x1 + x2)), nrow = 1, ncol = 3) yfit <- b0[, 1] + b0[, 2] * x1 + b0[, 3] * x2

(6)

e <- seq(1:n) for(i in 1:n) {

e[i] <- y[i] - yfit[i] }

estar <- matrix(0, nrow = B, ncol = n) ystar <- matrix(0, nrow = B, ncol = n) b <- matrix(0, nrow = B, ncol = 3) for(i in 1:B) {

estar[i, ] <- sample(e, n, replace = T)

ystar[i, ] <- b0[, 1] + b0[, 2] * x1 + b0[, 3] * x2 + estar[i, ]

b[i, ] <- coef(lm(ystar[i, ] ~ x1 + x2)) }

bboot <- apply(b, 2, mean)

lo0<- b0[, 1] + qnorm(a/2) * sqrt(var(b[,1])) lo1<- b0[, 2] + qnorm(a/2) * sqrt(var(b[,2])) lo2 <- b0[, 3] + qnorm(a/2) * sqrt(var(b[,3])) up0 <- b0[, 1] + qnorm(1-a/2) * sqrt(var(b[,1])) up1 <- b0[, 2] + qnorm(1-a/2) * sqrt(var(b[,2])) up2 <- b0[, 3] + qnorm(1-a/2) * sqrt(var(b[,3])) int1 <- matrix(c(lo0, up0, lo1, up1, lo2, up2), nrow = 3, byrow = T)

lop0 <- quantile(b[,1], a/2) lop1 <- quantile(b[,2], a/2) lop2 <- quantile(b[,3], a/2) upp0 <- quantile(b[,1], 1-a/2) upp1 <- quantile(b[,2], 1-a/2) upp2 <- quantile(b[,3], 1-a/2)

int2 <- matrix(c(lop0, upp0, lop1, upp1, lop2, upp2), nrow = 3, byrow= T)

list(est.boot=bboot,int.normal=int1,int.pct=int2) }

Untuk menjalankan program resampling bootstrap di R ini diberikan simulasi dengan membangkitkan data. Misalkan populasi terdiri dari 30 data dari untuk y, x1 dan x2 masing-masing sebagai berikut.

> x1<-rnorm(30,4,1.5) > x2<-rnorm(30,5,1.5) > e<-rnorm(30) > y<-3+7*x1+x2+e

Berdasarkan data ini kita sudah mengetahui nilai parameter populasinya , , berturut-tur ut 3, 7 dan 1. S elanjutnya untuk melihat keakuratan metode bootstrap akan dilakukan est imasi berda sa rkan dat a sa mpel. Est imasi par a met er regresi menggunaka n resampli ng bootstrap dengan replikasi B=1000 dan tingkat kepercayaan interval 95% diberikan oleh

> reg(y,x1,x2,1000,0.05) $est.boot [1] 2.813375 6.895319 1.075275 $int.normal [,1] [,2] [1,] 1.2532716 4.343726 [2,] 6.6799812 7.120587 [3,] 0.7967511 1.343550

(7)

$int.pct

[,1] [,2] [1,] 1.2339186 4.118422 [2,] 6.6603225 7.091760 [3,] 0.8117778 1.354883

Berdasarkan output R yang diperoleh terlihat dapat diringkas dalam Tabel 1.

Tabel 1. Ringkasan Hasil

Parameter Estimasi Int. Pendekatan Normal Int. Persentil BB BA BB BA 0

1

2

2,813375 6,895319 1,075275 1.2532716 6.6799812 0.7967511 4.343726 7.120587 1.343550 1.2339186 6.6603225 0.8117778 4.118422 7.091760 1.354883

Berdasarkan Tabel 1, estimasi bootstrap untuk parameter regresi , , masing-masing 2,813, 6,895 dan 1,07 cukup dekat dengan parameter populasinya yaitu 3, 7 dan 1. Sedangkan estimasi interval konfidensi baik interval bootstrap pendekatan normal maupun interval bootstrap persentil memberikan hasil yang hampir sama dan keduanya memuat parameter populasi dengan range yang cukup sempit.

KESIMPULAN

Berdasarkan uraian di atas terdapat beberapa hal penting yang dapat disimpulkan. Metode resampling bootstrap dapat dilakukan dengan bantuan software R. Program resampling bootstrap menggunakan R disusun berdasarkan algoritma bootstrap pada masing-masing kasus. Berdasarkan studi simulasi, metode bootstrap dapat digunakan sebagai metode alternatif yang memberikan hasil estimasi yang sangat dekat dengan parameter populasi. Estimasi interval juga memberikan interval konfidensi yang memuat parameter populasi dan dengan range interval yang cukup sempit. Hal ini menunjukkan bahwa metode bootstrap memiliki keakuratan yang tinggi.

(8)

DAFTAR PUSTAKA

Bennett, P. J., 2009, Introduction to the Bootstrap and Robust Statistics. Winter Term, PSY711/712. Bickel, P. J. and Freedman, D. A., 1981, Some

Asymtotic Theory for the Bootstrap, Ann. Statist., no. 6, 9, 1196–1217.

Efron, B. and Tibshirani, R. J., 1993, An Introduction to the Bootstrap, Chapman and Hall, New York.

Sahinler, S. and Topuz, D., 2007, Bootstrap and Jackknife Resampling Algorithms for Estimation of Regression Parameters, JAQM, no. 2, 2, 188-199.

Shao, J. and Tu, D., 1995, The jacknife and bootstrap, Springer Verlag Inc., New York.

Gambar

Tabel 1. Ringkasan Hasil

Referensi

Dokumen terkait

Penelitian ini bertujuan untuk melakukan pemakaian teknik membran cair fasa ruah dalam mentranspor Zn(II) dengan menggunakan ditizon sebagai zat pembawa dan

komponen utama tidak berbeda signifikan dengan hasil estimasi rataan dan interval kepercayaan bootstrap, dimana rataan bootstrap berada dalam interval kepercayaan

Tulisan ini bertujuan untuk menunjukkan bahwa interval selisih rata-rata pada sampel berdistribusi normal yang dihasilkan oleh metode bootstrap persentil akan lebih baik

Sedangkan menurut Sugiyono, (2010) menyatakan bahwa teknik untuk menentukan sampel penelitian dengan beberapa pertimbangan tertentu yang bertujuan agar data yang

Sedangkan dalam ma- kalah ini metode bootstrap dalam estimasi fungsi regresi wavelet thresholding dengan melakukan resampling koefisien wavelet dari residual seperti