Slide Regresi Dengan R Untuk Bootstrapping
Slide Regresi Dengan R Untuk Bootstrapping
• tolucadata.txt
• bloodpressure.csv
Bootstrapping Regression : random (case
resampling)
• Asumsikan ingin mengepaskan model regresi dengan variabel respon
Y dan variabel prediktor X 1 , X 2 ,..., X p 1
• Misal diketahui suatu sampel dengan n pengamatan, Zi' Yi , X i1 , X i 2 ,..., X i , p 1
• Pilih R sampel bootstrap dari Zi' Yi , X i1 , X i 2 ,..., X i , p 1
• Lakukan pengepasan model dan simpan koefisien dari masing-masing
sampel bootstrap
• Case resampling ini merupakan default fungsi Boot di paket car
Bootstrapping Regression : fixed-x (residual
resampling)
• Duga koefisien regresi 0 , 1 ,..., p 1 untuk sampel original, dan hitung
nilai dugaan dan residual untuk masing-masing pengamatan:
Yi 0 1 X i1 ... p 1 X i , p 1
ei Yi Yi
t
• Pilih sampel bootstrap dari residual e e , e ,..., e lalu hitung nilai Y
*
b
*
b1
*
b2
*
bn
bootstrap, Yb* Yb*1 , Yb*2 ,..., Ybn* t dengan Y Yi ebi*
*
bi
• Regresikan nilai Y bootstrap pada nilai X tetap untuk memperolah koefisien
regresi bootstrap. Misal jika koefisien diestimasi dengan kuadrat terkecil
bb X X X t yb*
1
(OLS) maka * t untuk b = 1,…,r
t
• Lalu bb ˆb 0 , ˆb1 ,..., ˆb, p 1
* * * *
dapat digunakan untuk memperoleh
bootstrap standard error dan interval kepercayaan bagi koefisien regresi
Contoh
• Toluca Company
• Perusahaan manufaktur Toluca Company ingin mengetahui hubungan antara
ukuran lot (lotsize) dan waktu yang diperlukan untuk memproduksi lot (workhrs).
• toluca.data <- read.table(file =
"C:/data/tolucadata.txt", header=TRUE)
• attach(toluca.data)
• head(toluca.data)
• toluca.reg <- lm(workhrs ~ lotsize)
• plot(lotsize,workhrs)
• abline(toluca.reg)
• summary(toluca.reg)
• confint(toluca.reg)
Bootstrapping regression: case resampling
• set.seed(2018)
• library(car)
• mod.boot.case <- Boot(mod.reg, R=1000,
method="case")
• summary(mod.boot.case)
• confint(mod.boot.case, level=.95, type="bca")
#bca: bias-corrected accelerated
Bootstrapping regression: residual resampling
• set.seed(2018)
• library(car)
• mod.boot.res <- Boot(mod.reg, R=1000,
method="residual")
• summary(mod.boot.res)
• confint(mod.boot.res,type="bca") #bca: bias-
corrected accelerated
Latihan Soal
• Seorang peneliti kesehatan, tertarik untuk mempelajari hubungan
antara tekanan darah diastolik dan usia di antara wanita dewasa yang
sehat berusia 20 hingga 60 tahun, mengumpulkan data dari 54 subjek
(gunakan bloodpressure.csv)