Uji Non-Multikolinearitas dengan R

Uji non-multikolinearitas dengan R

Uji asumsi non-multikolinearitas merupakan uji asumsi regresi linier terakhir yang akan kita bahas bersama. Uji asumsi ini merupakan salah satu uji asumsi regresi linier klasik khusus model berganda atau menggunakan variabel independen lebih dari satu. Uji asumsi ini tidak berlaku bagi regresi linier sederhana karena variabel independen yang digunakan di dalamnya hanya satu. Uji asumsi ini pada dasarnya ingin mengetahui apakah terdapat korelasi yang kuat dan signifikan di antara variabel independen di dalam model ataukah tidak.

Ukuran yang biasanya digunakan sebagai pendeteksi asumsi non-multikolinearitas adalah nilai Variation Inflation Factor (VIF) yang merupakan seper sisaan dari kuadrat korelasi kombinasi antar variabel independen. Secara matematis, rumus dari VIF adalah sebagai berikut:

Rumus mendapatkan nilai VIF

Berdasarkan bukunya Om Neter (1989), gangguan asumsi non-multikolinearitas terjadi ketika nilai VIF itu lebih dari 10. Artinya, jika nilai VIF sebuah variabel independen ternyata lebih dari 10, dapat ditengarai ia sebenarnya memiliki korelasi yang kuat dan signifikan dengan variabel independen lainnya di dalam model. Menghadapi kondisi seperti ini, salah satu alternatif yang bisa kita ambil adalah membuang salah satu  variabel yang diduga kuat berkorelasi dengan variabel independen lainnya dengan risiko akan mengurangi kemampuan model dalam menjelaskan proporsi keragaman variabel independennya, atau dengan menggunakan model regresi komponen utama. Yaitu dengan cara melakukan analisis komponen utama untuk untuk mereduksi variabel independennya. Jika X1 berkorelasi kuat dengan X2 maka menjadi X12, kemudian dimodelkan regresi liniernya.

Di R sendiri, uji non-multikolinearitas dapat diterapkan dengan menggunakan bantuan package yang bermana olsrr. Adapun praktik untuk melakukan uji asumsi ini kita jabarkan pada code berikut:

Code:

#Install dan aktifkan package olsrr
install.packages("olsrr")
library(olsrr)

#Mengenerate Dataset
x1 <- c(8, 7, 9, 3, 6, 8, 9, 2, 9, 8, 4, 4, 6, 10)
x2 <- c(6, 7, 5, 7, 2, 4, 5, 6, 3, 6, 8, 7, 3, 9)
y <- c(5, 4, 7, 2, 5, 6, 8, 3, 5, 7, 2, 2, 3, 9)
df <- data.frame(x1, x2, y)

#Melihat sekilas dataset
head(df)

Hasil:

  x1 x2 y
1  8  6 5
2  7  7 4
3  9  5 7
4  3  7 2
5  6  2 5
6  8  4 6

Code:

#Pemodelan Regresi Linier Sederhana
model <- lm(y~x1+x2, data = df)

#Melihat ringkasan pemodelan regresi linier berganda
summary(model)

Hasil:

Call:
lm(formula = y ~ x1 + x2, data = df)
Residuals:
     Min       1Q   Median       3Q      Max
-1.47334 -1.00478  0.07923  1.01220  1.86358
Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  -1.1831     1.4394  -0.822    0.429    
x1            0.8121     0.1350   6.016 8.73e-05 ***
x2            0.1159     0.1685   0.688    0.506    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.214 on 11 degrees of freedom
Multiple R-squared:  0.7674,    Adjusted R-squared:  0.7251
F-statistic: 18.15 on 2 and 11 DF,  p-value: 0.0003284

Code:

#uji Non-multikolinearitas
ols_vif_tol(model)

Hasil:

 Variables Tolerance      VIF
1        x1 0.9720732 1.028729
2        x2 0.9720732 1.028729

Interpretasi: terlihat bahwa nilai VIF dari variabel independen x1 dan x2 kebetulan bernilai sama, yakni sebesar 1,028729 atau kurang dari 10 sehingga model regresi linier tersebut memenuhi asumsi non-multikolinearitas.

Oke, demikian sedikit ulasan bagaimana kita menerapkan uji homoskedastisitas dengan R. Jangan lupa untuk share, tanya-tanya di kolom komentar, dan menyimak unggahan berikutnya. Semoga bermanfaat.

Referensi:

Nursiyono, Joko Ade dan Pray P.H. Nadeak. 2021. Data Mining: Analisis Regresi dengan R Studio. Binjai: Miranda Novelia.

Neter, John, et al. 1989. Applied Linear Regression Model 2nd edition. USA: Richard D. Irwin.Inc.

Add Comments


EmoticonEmoticon