Analisis Regresi (Sesi 11) Komputasi Statistika dengan Software R Analisis Regresi (Sesi 11) Zulhanif
Analisis Regresi Analisis Regresi adalah suatu analisis yang menyatakan hubungan fungsional antara sebuah variabel tak bebas dengan satu atau lebih variabel bebas
Model Regresi Yi = β0 + β1Xi + εi ; i = 1,2, ..., n Yi adalah variabel tak bebas Xi adalah variabel bebas β0 adalah koefisien intersep β1 adalah koefisien slope εi adalah galat
Contoh Data berikut menggambarkan hasil pengamatan mengenai banyak orang yang datang (X) dan banyak orang yang berbelanja (Y) disebuah toko selama 30 hari. (Sudjana, 2002) Asumsi antar pengamatan saling bebas Data dapat diunduh pada e-learning statistika dengan nama file “toko.csv”
Plot Data Plot data untuk model regresi menggunakan diagram pencar (scatterplot) antara variabel bebas (X) pada sumbu horizontal dan variabel tak bebas (Y) pada sumbu vertikal.
Plot Data dalam R Gunakan perintah “plot” > plot(x,y, pch=20) Tambahkan baris berikut untuk membuat garis regresinya > abline(lm(y~x),col="red")
Plot Data
Statistik Deskriptif Beberapa statistik yang diperlukan dalam analisis regresi adalah Jumlah X dan Y Jumlah kuadrat X dan Y Jumlah XY Rata-rata X dan Y
Statistik Deskriptif dalam R > sum(x);sum(y) [1] 1105 [1] 1001 > sum(x^2);sum(y^2) [1] 41029 [1] 33599 > sum(x*y) [1] 37094 > mean(x);mean(y) [1] 36.83333 [1] 33.36667
b1=(sum(X*Y)-(sum(X)*sum(Y)/length(X)))/(sum(X^2)-(sum(X))^2/length(X)) b0=mean(Y)-b1*mean(X)
Taksiran Koefisien Regresi Koefisien Regresi dapat ditaksir menggunakan rumus sehingga diperoleh nilai koefisien intersep dan arah (slope) Nilai taksiran ini dapat digunakan untuk menghitung nilai prediksi bagi Y. Koefisien intersep menyatakan nilai Y pada X = 0 (rata-rata Y) Koefisien arah (slope) menyatakan penambahan (+) atau penurunan (-) nilai Y
Menghitung Taksiran Regresi > lm(y~x, toko) Call: lm(formula = y ~ x, data = toko) Coefficients: (Intercept) x 8.2437 0.6821
Galat Baku Penaksir Galat baku penaksir (standard error) adalah akar kuadrat varians sampling dari penaksir koefisien regresi Galat baku ini digunakan untuk pengujian hipotesis keberartian koefisien regresi
Pengujian Koefisien Regresi Koefisien regresi yang sudah ditaksir perlu diuji keberartiannya Untuk koefisien intersep pengujian memberikan arti apakah garis regresi melewati titik pusat (0,0) Untuk koefisien arah (slope) pengujian untuk melihat apakah variabel bebas mempunyai pengaruh terhadap variabel tak bebas
Hasil Pengujian > fit<-lm(y~x, toko) > summary(fit) Call: lm(formula = y ~ x, data = toko) Residuals: Min 1Q Median 3Q Max -2.7983 -0.7303 0.2017 0.8954 2.4734
Hasil Pengujian Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 8.24368 2.62501 3.140 0.00396 ** x 0.68207 0.07098 9.609 2.30e-10 *** Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 1.286 on 28 degrees of freedom Multiple R-squared: 0.7673, Adjusted R-squared: 0.759 F-statistic: 92.34 on 1 and 28 DF, p
Analisis Varians Digunakan untuk menguji independensi antara variabel bebas (X) dengan Variabel tak bebas (Y) Dari Analisis varians dapat pula dihitung koefisien determinasi yang menyatakan fit tidaknya model yang ditentukan.
Analisis Varians > anova(fit) Analysis of Variance Table Response: y Df Sum Sq Mean Sq F value Pr(>F) x 1 152.670 152.670 92.335 2.304e-10 *** Res 28 46.296 1.653 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Latihan Suatu telaah dilakukan untuk mengevaluasi sejauh mana pengaruh biaya yang dikeluarkan untuk iklan terhadap hasil penjualan, dikumpulkan data biaya iklan dan hasil penjualan (halaman berikut) Jika diasumsikan hubungan antara biaya iklan dengan hasil penjualan dapat dinyatakan sebagai persamaan linier sederhana, dugalah persamaan garis tersebut apakah biaya iklan memberikan pengaruh yang nyata terhadap hasil penjualan
Latihan No Biaya Hasil 1 40 385 7 490 2 20 400 8 420 3 25 395 9 50 560 4 365 10 525 5 30 475 11 480 6 440 12 510
Bubble Sort Metode sorting termudah Diberi nama “Bubble” karena proses pengurutan secara berangsur-angsur bergerak/berpindah ke posisinya yang tepat, seperti gelembung yang keluar dari sebuah gelas bersoda. Bubble Sort mengurutkan data dengan cara membandingkan elemen sekarang dengan elemen berikutnya.
Bubble Sort (2) Pengurutan Ascending :Jika elemen sekarang lebih besar dari elemen berikutnya maka kedua elemen tersebut ditukar. Pengurutan Descending: Jika elemen sekarang lebih kecil dari elemen berikutnya, maka kedua elemen tersebut ditukar. Algoritma ini seolah-olah menggeser satu per satu elemen dari kanan ke kiri atau kiri ke kanan, tergantung jenis pengurutannya, asc atau desc. Ketika satu proses telah selesai, maka bubble sort akan mengulangi proses, demikian seterusnya sampai dengan iterasi sebanyak n-1. Kapan berhentinya? Bubble sort berhenti jika seluruh array telah diperiksa dan tidak ada pertukaran lagi yang bisa dilakukan, serta tercapai perurutan yang telah diinginkan.
Bubble Sort (3)
Bubble Sort (4)
larger = function(pair) { if(pair[1] > pair[2]) return(TRUE) else return(FALSE) } swap_if_larger = function(pair) { if(larger(pair)) { return(rev(pair)) } else { return(pair) swap_pass = function(vec) { for(i in seq(1, length(vec)-1)) { vec[i:(i+1)] = swap_if_larger(vec[i:(i+1)]) return(vec) bubble_sort = function(vec) { new_vec = swap_pass(vec) if(isTRUE(all.equal(vec, new_vec))) { return(new_vec) return(bubble_sort(new_vec))
sel=0 i=0 alpha=0.05 S=1 d=0.1 n0=((qnorm(1-(alpha/2)))*S/d)^2 while (sel>0.01){ n1=(qt(1-(alpha/2),n0-1)*S/d)^2 sel=abs(n1-n0) print(sel) n0=n1 i=i+1 }