Blogroll

halo
Searching...
Sabtu, 11 Februari 2017

[R] Analisis Regresi Berganda dengan Seleksi Variabel

11.55



Dalam analisis regresi berganda, ada suatu proses seleksi terhadap variabel bebas, untuk dimasukkan ke dalam model. Variabel bebas yang signifikan (dalam taraf tertentu) saja yang bisa masuk ke model. Sehingga bisa dihasilkan model regresi yang akurat dalam memprediksi dengan tidak terlalu banyak variabel bebas yang digunakan. Hal itu juga berefek pada efisien-nya dalam pengumpulan data yang dibutuhkan pada model.

Ada tiga metode seleksi yang biasa digunakan, yaitu :

·         Backward
Membuat model dengan memasukkan semua variabel kemudian dikeluarkan satu persatu, berdasarkan tingkat signifikansi kombinasi variabel bebas.

·         Forward
pembangunan model untuk menemukan kombinasi variabel yang “terbaik” dari suatu kumpulan variabel bebas. Dalam Prosedur Forward selection, sekalinya variable masuk kedalam persamaan maka tidak bisa dihilangkan.

·         Stepwise

Melibatkan proses Backward dan Forward dalam proses seleksi variabel bebas.


Melanjutkan postingan Analisis Regresi Berganda dengan R, variabel bebas yang digunakan untuk memprediksi Penjualan (Sales) ditambah, yaitu variabel jumlah pegawai, V4, V5, V6, V7.




















Nah, mari kita buat model regresi berganda yang efektif dan efisien dengan metode seleksi variabel.


Pertama, kita buat model Regresi Berganda dengan cara biasa.

 ## Membuat model Regresi Berganda  
 modelreg <- lm(Sales..juta.Rupiah. ~ . - Daerah, data = mydata)  
 summary(modelreg)  


Dari script di atas, maka akan dihasilkan model seperti di bawah ini.

 Coefficients:  
            Estimate Std. Error t value Pr(>|t|)    
 (Intercept)      436.7588  292.4310  1.494 0.17894    
 Promosi..juta.Rupiah.  1.9644   0.4991  3.936 0.00563 **  
 Outlet..m2.       0.5613   0.1291  4.348 0.00336 **  
 Jumlah.Pegawai     -7.6614   6.7390 -1.137 0.29301    
 V4           -2.3564   9.7439 -0.242 0.81584    
 V5           -4.4901   8.2316 -0.545 0.60237    
 V6           -8.2112   7.0710 -1.161 0.28360    
 V7           0.8162   6.5348  0.125 0.90412    
 ---  
 Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1  
 Residual standard error: 10.61 on 7 degrees of freedom  
 Multiple R-squared: 0.9667,     Adjusted R-squared: 0.9334   
 F-statistic: 29.02 on 7 and 7 DF, p-value: 0.0001177  

Terlihat bahwa, model terlalu banyak memiliki variabel bebas, yang sebenarnya tidak semua memiliki signifikansi tinggi.

Oleh karena itu, mari kita seleksi model “modelreg” dengan memanfaatkan fungsi step().


 ## Seleksi Variabel pada Model Regresi  
 modelregseleksi <- step(modelreg,direction="backward") ## use backward method, others : forward, both (stepwise) 
 summary(modelregseleksi)  

Untuk menentukan jenis metode seleksinya, digunakan “direction”. Fungsi diatas menggunakan metode backward. Selain itu dapat digunakan forward, atau both (stepwise).

Dari itu, didapat model baru “modelregseleksi” yang sudah diseleksi, dengan hasil seperti dibawah ini.

 Coefficients:  
            Estimate Std. Error t value Pr(>|t|)    
 (Intercept)      379.6732  164.3485  2.310 0.043495 *   
 Promosi..juta.Rupiah.  2.0637   0.3981  5.183 0.000411 ***  
 Outlet..m2.       0.5879   0.0981  5.993 0.000133 ***  
 Jumlah.Pegawai     -6.4082   4.6059 -1.391 0.194303    
 V6           -7.4543   5.4713 -1.362 0.202955    
 ---  
 Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1  


Terlihat bahwa, variabel yang tersisa tinggal 4 dari 7 variabel yang ada.

Script singkat dalam membuat model terseleksi dapat dilihat di bawah ini.

 modelregseleksi <- step(lm(Sales..juta.Rupiah. ~ . - Daerah, data = mydata))  



File terkait untuk postingan ini dapat diunduh pada link di bawah.


Semoga bermanfaat..



0 komentar: