Pendahuluan

Regresi linier berganda merupakan metode statistika untuk memperoleh model hubungan antara 1 variabel dependen dengan lebih dari 1 cariabel independen.

Pada analisis ini digunakan dataset airquality, yaitu data kualitas udara di New York pada tahun 1973.

Dasar Teori

1. Regresi Linier Berganda

Regresi linier berganda merupakan metode analisis statistik yang digunakan untuk memodelkan hubungan antara satu variabel dependen dengan dua atau lebih variabel independen. Model regresi ini bertujuan untuk mengetahui seberapa besar pengaruh variabel independen terhadap variabel dependen serta untuk memprediksi nilai variabel dependen berdasarkan nilai variabel independen yang diketahui.

Secara umum, model regresi linier berganda dapat dinyatakan dalam bentuk persamaan sebagai berikut: \[ Y = \beta_0+\beta_1X_1+\beta_2X_2+...+\beta_kX_k+\epsilon \] dengan: \(Y\) : variabel dependen \(X_1,X_2,...,X_k\) : variabel independen \(\beta_0\) : intersep atau konstanta \(\beta_1,\beta_2,...,\beta_k\) : koefisien regresi masing-masing variabel dependen \(\epsilon\) : galat

Koefisien regresi menunjukkan perubahan rata-rata pada variabel dependen yang disebabkan oleh perubahan satu satuan pada variabel independen dengan asumsi variabel independen lainnya tetap.

2. Asumsi Model Regresi Linier Berganda

Terdapat beberapa asumsi yang perlu dipenuhi pada regresi linier berganda, yaitu sebagai berikut. #### a. Normalitas Asumsi normalitas menyatakan bahwa residual atau galat dari model regresi harus berdistribusi normal. Pengujian normalitas residual penting dilakukan karena beberapa metode inferensi statistik dalam regresi, seperti uji t dan uji F, mengasumsikan bahwa residual berdistribusi normal.

Pengujian normalitas dapat dilakukan dengan berbagai metode, salah satunya adalah uji Kolmogorov–Smirnov atau uji Shapiro–Wilk.

2. Multikolinearitas

Multikolinearitas terjadi ketika terdapat hubungan yang kuat antar variabel independen dalam model regresi. Kondisi ini dapat menyebabkan kesulitan dalam mengestimasi koefisien regresi secara akurat serta meningkatkan varians dari estimasi parameter.

Salah satu metode yang umum digunakan untuk mendeteksi multikolinearitas adalah dengan melihat nilai Variance Inflation Factor (VIF). Jika nilai VIF suatu variabel lebih besar dari 10, maka dapat diindikasikan terjadi multikolinearitas dalam model.

3. Heteroskedastisitas

Heteroskedastisitas merupakan kondisi di mana varians residual tidak konstan pada seluruh nilai variabel independen. Dalam model regresi yang baik, residual diharapkan memiliki varians yang konstan atau disebut dengan homoskedastisitas.

Pengujian heteroskedastisitas dapat dilakukan dengan berbagai metode, salah satunya adalah uji Breusch–Pagan.

4. Autokorelasi

Autokorelasi terjadi ketika residual pada suatu observasi berkorelasi dengan residual pada observasi lainnya. Masalah ini sering muncul pada data runtun waktu (time series).

Salah satu metode yang umum digunakan untuk mendeteksi autokorelasi adalah uji Durbin–Watson. Nilai statistik Durbin–Watson yang mendekati 2 menunjukkan bahwa tidak terdapat autokorelasi dalam model regresi.

Deskripsi Data

data <-na.omit(airquality)
summary(data)
##      Ozone          Solar.R           Wind            Temp      
##  Min.   :  1.0   Min.   :  7.0   Min.   : 2.30   Min.   :57.00  
##  1st Qu.: 18.0   1st Qu.:113.5   1st Qu.: 7.40   1st Qu.:71.00  
##  Median : 31.0   Median :207.0   Median : 9.70   Median :79.00  
##  Mean   : 42.1   Mean   :184.8   Mean   : 9.94   Mean   :77.79  
##  3rd Qu.: 62.0   3rd Qu.:255.5   3rd Qu.:11.50   3rd Qu.:84.50  
##  Max.   :168.0   Max.   :334.0   Max.   :20.70   Max.   :97.00  
##      Month            Day       
##  Min.   :5.000   Min.   : 1.00  
##  1st Qu.:6.000   1st Qu.: 9.00  
##  Median :7.000   Median :16.00  
##  Mean   :7.216   Mean   :15.95  
##  3rd Qu.:9.000   3rd Qu.:22.50  
##  Max.   :9.000   Max.   :31.00

Variabel yang digunakan dalam analisis ini adalah: Variabel respon (Y): Ozone Variabel prediktor (X): Temp (temperatur) Wind (kecepatan angin) Solar.R (radiasi matahari)

Rata-rata temperatur adalah 77.7927928. Rata-rata kecepatan angin adalah 9.9396396. Rata-rata radiasi matahari adalah 184.8018018.

Hasil dan Pembahasan

Estimasi Parameter

model <- lm(Ozone ~ Temp + Wind + Solar.R, data = data)
summary(model)
## 
## Call:
## lm(formula = Ozone ~ Temp + Wind + Solar.R, data = data)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -40.485 -14.219  -3.551  10.097  95.619 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -64.34208   23.05472  -2.791  0.00623 ** 
## Temp          1.65209    0.25353   6.516 2.42e-09 ***
## Wind         -3.33359    0.65441  -5.094 1.52e-06 ***
## Solar.R       0.05982    0.02319   2.580  0.01124 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 21.18 on 107 degrees of freedom
## Multiple R-squared:  0.6059, Adjusted R-squared:  0.5948 
## F-statistic: 54.83 on 3 and 107 DF,  p-value: < 2.2e-16

Model regresi yang diperoleh adalah: \[ Ozone = -64.3421+ 1.6521Temp + -3.3336Wind + 0.0598Solar.R \]

Uji F dan Uji t

Uji F

Uji F digunakan untuk mengetahui apakah variabel independen secara bersama-sama berpengaruh terhadap variabel dependen.

Hipotesis: \[ H_0: \beta_1=\beta_2=\beta_3=0 \] \[ H_1 : \text{Minimal ada satu } \beta_i \neq 0 \] Statistik uji:

summary(model)
## 
## Call:
## lm(formula = Ozone ~ Temp + Wind + Solar.R, data = data)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -40.485 -14.219  -3.551  10.097  95.619 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -64.34208   23.05472  -2.791  0.00623 ** 
## Temp          1.65209    0.25353   6.516 2.42e-09 ***
## Wind         -3.33359    0.65441  -5.094 1.52e-06 ***
## Solar.R       0.05982    0.02319   2.580  0.01124 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 21.18 on 107 degrees of freedom
## Multiple R-squared:  0.6059, Adjusted R-squared:  0.5948 
## F-statistic: 54.83 on 3 and 107 DF,  p-value: < 2.2e-16

Kriteria penolakan: \[ \text{Tolak } H_0 \text{ jika } p\text{-value} < \alpha = 0.05 \]

Keputusan dan kesimpulan: Karena \(p\)-value (2.2e-16) < 0.05, maka variabel independen secara simultan berpengaruh signifikan terhadap variabel dependen.

Uji t

Uji t digunakan untuk mengetahui pengaruh masing-masing variabel independen terhadap variabel dependen.

Hipotesis: \[ H_0 : \beta_i = 0 \]

\[ H_1 : \beta_i \neq 0 \] Statistik uji:

summary(model)$coefficients
##                 Estimate  Std. Error   t value     Pr(>|t|)
## (Intercept) -64.34207893 23.05472435 -2.790841 6.226638e-03
## Temp          1.65209291  0.25352979  6.516366 2.423506e-09
## Wind         -3.33359131  0.65440710 -5.094063 1.515934e-06
## Solar.R       0.05982059  0.02318647  2.579979 1.123664e-02

Kriteria penolakan: \[ \text{Tolak } H_0 \text{ jika } p\text{-value} < \alpha = 0.05 \] Keputusan dan kesimpulan: Berdasarkan hasil uji t, diperoleh bahwa seluruh variabel independen yaitu Temp, Wind, dan Solar.R berpengaruh signifikan terhadap variabel Ozone pada taraf signifikansi 5%.

Pengujian Asumsi Model

Uji Normalitas Residual

Uji normalitas residual dilakukan untuk mengetahui apakah residual dari model regresi berdistribusi normal. Pada analisis ini digunakan uji Kolmogorov-Smirnov.

Hipotesis: \[ H_0 : \text{Residual berdistribusi normal} \] \[ H_1 : \text{Residual tidak berdistribusi normal} \] Statistik uji:

error <- model$residuals

ks.test(error,
        "pnorm",
        mean(error),
        sqrt(var(error)))
## 
##  Asymptotic one-sample Kolmogorov-Smirnov test
## 
## data:  error
## D = 0.11013, p-value = 0.1354
## alternative hypothesis: two-sided

Kriteria penolakan: \[ \text{Tolak } H_0 \text{ jika } p\text{-value} < \alpha = 0.05 \] Keputusan dan kesimpulan: Diperoleh \(p\)-value sebesar 0.1354 > \(\alpha=0.05\), sehingga \(H_0\) gagal ditolak. Dapat disimpulkan bahwa residual berdistribusi normal.

Uji Multikolinearitas

Uji Multikolinearitas digunakan untuk mengetahui apakah antar variabel independen saling berkorelasi kuat.

Hipotesis: \[ H_0 : \text{Tidak terdapat multikolinearitas antar variabel independen} \] \[ H_1 : \text{Terdapat multikolinearitas antar variabel independen} \] Statistik uji:

library(car)
## Warning: package 'car' was built under R version 4.3.3
## Loading required package: carData
## Warning: package 'carData' was built under R version 4.3.3
vif(model)
##     Temp     Wind  Solar.R 
## 1.431367 1.329070 1.095253

Kriteria penolakan: TOlak \(H_0\) jika nilai \(VIF \geq 10\).

Keputusan dan kesimpulan: Diperoleh nilai VIF untuk variabel Temp adalah 1.431, Wind sebesar 1.329, dan Solar.R sebesar 1.095.pada semua variabel independen yaitu Temp, Wind, dan Solar.R memiliki nilai VIF kurang dari 10, sehingga \(H_0\) gagal ditolak. Oleh karena itu dapat disimpulkan bahwa tidak terdapat multikolinearitas dalam model regresi yang digunakan

Uji Autokorelasi

Uji autokorelasi digunakan untuk mengetahui apakah terdapat korelasi antara residual pada pengamatan yang berbeda.

Hipotesis: \[ H_0 : \text{Tidak terdapat autokorelasi pada residual} \] \[ H_1 : \text{Terdapat autokorelasi pada residual} \] Statistik uji:

library(lmtest)
## Warning: package 'lmtest' was built under R version 4.3.3
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 4.3.3
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
dwtest(model)
## 
##  Durbin-Watson test
## 
## data:  model
## DW = 1.9355, p-value = 0.3347
## alternative hypothesis: true autocorrelation is greater than 0

Kriteria penolakan: \[ \text{Tolak } H_0 \text{ jika } p\text{-value} < \alpha = 0.05 \] Keputusan dan kesimpulan: Diperoleh nilai \(p\)-value sebesar 0.3347 \(\geq \alpha\) sehingga \(H_0\) gagal ditolak. Oleh karena itu dapat disimpulkan bahwa tidak terdapat autokorelasi antara residual.

Uji Heteroskedastisitas

Uji heteroskedastisitas dilakukan untuk mengetahui apakah varians residual pada model regresi konstan atau tidak. Pengujian dilakukan menggunakan Breusch–Pagan test.

Hipotesis: \[ H_0 : \text{Varians residual konstan (homoskedastisitas)} \] \[ H_1: \text{Varians residual tidak konstan (heteroskedastisitas)} \] Statistik uji:

library(lmtest)
bptest(model)
## 
##  studentized Breusch-Pagan test
## 
## data:  model
## BP = 5.0554, df = 3, p-value = 0.1678

Kriteria penolakan: \[ \text{Tolak } H_0 \text{ jika } p\text{-value} < \alpha = 0.05 \] Keputusan dan kesimpulan: Diperoleh nilai \(p\)-value sebesar0.1678 \(\geq \alpha\) sehingga \(H_0\) gagal ditolak. Oleh karena itu dapat disimpulkan bahwa tidak terdapat autokorelasi antara residual.

Interpretasi model

Berdasarkan hasil analisis linier berganda diperoleh model regresi sebagai berikut: \[ \hat{Y} = -64.3421 + 1.6521Temp - 3.3336Wind + 0.0598Solar.R \]

Interpretasi Koefisien Regresi

  1. Intercept (-64.3421)

Nilai intercept sebesar -64.3421 menunjukkan bahwa apabila variabel Temp, Wind, dan Solar.R bernilai nol, maka nilai prediksi variabel respon adalah sebesar -64.3421.

  1. Variabel Temp (1.6521)

Koefisien regresi variabel Temp sebesar 1.6521 menunjukkan bahwa setiap kenaikan 1 satuan suhu, dengan asumsi variabel Wind dan Solar.R konstan, maka nilai variabel respon akan meningkat sebesar 1.6521 satuan.

  1. Variabel Wind (-3.3336)

Koefisien regresi variabel Wind sebesar -3.3336 menunjukkan bahwa setiap kenaikan 1 satuan kecepatan angin, dengan asumsi variabel Temp dan Solar.R konstan, maka nilai variabel respon akan berubah sebesar -3.3336 satuan.

  1. Variabel Solar.R (0.0598)

Koefisien regresi variabel Solar.R sebesar 0.0598 menunjukkan bahwa setiap kenaikan 1 satuan radiasi matahari, dengan asumsi variabel Temp dan Wind konstan, maka nilai variabel respon akan meningkat sebesar 0.0598 satuan.

Hasil Visualisasi

par(mfrow = c(1,3))  # membagi area plot menjadi 1 baris 3 kolom

# Ozone vs Temp
plot(airquality$Temp, airquality$Ozone,
     main = "Ozone vs Temp",
     xlab = "Temperature",
     ylab = "Ozone",
     pch = 19,
     col = "steelblue")
abline(lm(Ozone ~ Temp, data = airquality), col = "red", lwd = 2)

# Ozone vs Wind
plot(airquality$Wind, airquality$Ozone,
     main = "Ozone vs Wind",
     xlab = "Wind",
     ylab = "Ozone",
     pch = 19,
     col = "steelblue")
abline(lm(Ozone ~ Wind, data = airquality), col = "red", lwd = 2)

# Ozone vs Solar.R
plot(airquality$Solar.R, airquality$Ozone,
     main = "Ozone vs Solar Radiation",
     xlab = "Solar Radiation",
     ylab = "Ozone",
     pch = 19,
     col = "steelblue")
abline(lm(Ozone ~ Solar.R, data = airquality), col = "red", lwd = 2)

par(mfrow = c(1,1))  # mengembalikan layout plot ke normal

Interpretasi Scatterplot

Berdasarkan hasil visualisasi scatterplot antara variabel respon Ozone dengan masing-masing variabel independen (Temp, Wind, dan Solar.R), dapat diperoleh beberapa kesimpulan awal mengenai pola hubungan antar variabel sebagai berikut:

  1. Hubungan Ozone dan Temperature (Temp) Scatterplot menunjukkan adanya kecenderungan hubungan positif antara suhu udara (Temp) dan konsentrasi ozon (Ozone). Hal ini terlihat dari garis regresi yang memiliki kemiringan positif. Artinya, ketika suhu udara meningkat, konsentrasi ozon cenderung meningkat.

  2. Hubungan Ozone dan Wind Scatterplot menunjukkan adanya kecenderungan hubungan negatif antara kecepatan angin (Wind) dan konsentrasi ozon (Ozone). Garis regresi memiliki kemiringan negatif yang menunjukkan bahwa semakin tinggi kecepatan angin, konsentrasi ozon cenderung menurun.

  3. Hubungan Ozone dan Solar Radiation (Solar.R) Scatterplot menunjukkan adanya kecenderungan hubungan positif antara radiasi matahari (Solar.R) dan konsentrasi ozon (Ozone). Garis regresi yang cenderung naik menunjukkan bahwa semakin tinggi radiasi matahari, konsentrasi ozon cenderung meningkat.

Secara umum, ketiga scatterplot menunjukkan adanya kecenderungan hubungan linear antara variabel respon dan variabel independen. Oleh karena itu, penggunaan model regresi linier berganda dalam analisis ini dianggap sesuai untuk menggambarkan hubungan antara variabel-variabel tersebut.