1 Dasar Teori

1.1 Model Regresi Linier Berganda

Regresi linier berganda digunakan untuk memodelkan hubungan antara satu variabel dependen dengan beberapa variabel independen. Secara umum model regresi linier dapat dituliskan sebagai berikut

\[ Y_i = \beta_0 + \beta_1 X_{1i} + \beta_2 X_{2i} + \dots + \beta_k X_{ki} + \varepsilon_i \]

dengan:

  • \(Y_i\) : variabel dependen pada observasi ke-\(i\)

  • \(X_{ki}\) : variabel independen ke-\(k\) pada observasi ke-\(i\)

  • \(\beta_0\) : intercept

  • \(\beta_k\) : koefisien regresi

  • \(\varepsilon_i\) : error atau residual

Dalam bentuk matriks model regresi dapat dituliskan sebagai

\[ \mathbf{Y} = \mathbf{X}\beta + \varepsilon \]

Estimator parameter pada model regresi linier biasanya diperoleh menggunakan metode Ordinary Least Squares (OLS) yaitu

\[ \hat{\beta} = (X^TX)^{-1}X^TY \]

Metode ini memilih parameter yang meminimumkan jumlah kuadrat residual.

1.2 Asumsi Model Regresi Klasik

Agar estimator OLS memiliki sifat BLUE (Best Linear Unbiased Estimator) menurut Teorema Gauss-Markov, beberapa asumsi harus dipenuhi:

  1. Hubungan antara variabel bersifat linear

  2. Nilai harapan error sama dengan nol

\[ E(\varepsilon_i) = 0 \]

  1. Varians error konstan (homoskedastisitas)

\[ Var(\varepsilon_i) = \sigma^2 \]

  1. Error tidak saling berkorelasi

\[ Cov(\varepsilon_i,\varepsilon_j)=0 \]

  1. Error berdistribusi normal

  2. Tidak terdapat multikolinearitas antar variabel independen


1.3 Dasar Teori Pengujian Asumsi

1.3.1 Uji Normalitas Residual

Normalitas residual merupakan salah satu asumsi penting dalam regresi linier klasik, terutama untuk validitas uji hipotesis seperti uji \(t\) dan uji \(F\). Jika residual berdistribusi normal maka estimasi parameter dan inferensi statistik menjadi lebih reliabel.

Salah satu metode yang digunakan adalah Uji Kolmogorov-Smirnov (KS). Uji ini membandingkan distribusi empiris sampel dengan distribusi teoritis normal.

Statistik uji Kolmogorov-Smirnov didefinisikan sebagai

\[ D = \sup_x |F_n(x) - F(x)| \]

dengan:

  • \(F_n(x)\) : fungsi distribusi kumulatif empiris

  • \(F(x)\) : fungsi distribusi kumulatif teoritis (normal)

Selain pengujian statistik, pemeriksaan normalitas juga dapat dilakukan menggunakan Q-Q Plot, yaitu grafik yang membandingkan kuantil data dengan kuantil distribusi normal.


1.3.2 Uji Multikolinearitas

Multikolinearitas terjadi ketika dua atau lebih variabel independen memiliki korelasi yang tinggi. Kondisi ini dapat menyebabkan koefisien regresi menjadi tidak stabil serta meningkatkan varians estimator.

Salah satu ukuran yang umum digunakan untuk mendeteksi multikolinearitas adalah Variance Inflation Factor (VIF).

\[ VIF_j = \frac{1}{1 - R_j^2} \]

dengan:

  • \(R_j^2\) adalah koefisien determinasi dari regresi variabel \(X_j\) terhadap variabel independen lainnya.

Interpretasi nilai VIF:

  • \(VIF < 5\) → tidak terdapat multikolinearitas serius

  • \(5 \le VIF < 10\) → multikolinearitas sedang

  • \(VIF \ge 10\) → multikolinearitas tinggi


1.3.3 Uji Heteroskedastisitas

Heteroskedastisitas terjadi ketika varians error tidak konstan pada seluruh observasi. Dalam model regresi klasik diasumsikan bahwa

\[ Var(\varepsilon_i) = \sigma^2 \]

Jika asumsi ini dilanggar maka estimator OLS tetap tidak bias tetapi menjadi tidak efisien.

Salah satu metode yang digunakan adalah Breusch-Pagan Test dengan model

\[ \varepsilon_i^2 = \alpha_0 + \alpha_1 X_{1i} + \alpha_2 X_{2i} + \dots + \alpha_k X_{ki} + u_i \]

Statistik uji yang digunakan adalah

\[ BP = nR^2 \]

yang mengikuti distribusi \(\chi^2\) dengan derajat kebebasan \(k\).


1.3.4 Uji Autokorelasi

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

Model autokorelasi orde satu dapat dituliskan sebagai

\[ \varepsilon_t = \rho \varepsilon_{t-1} + u_t \]

dengan \(\rho\) adalah koefisien autokorelasi.

Pengujian autokorelasi biasanya menggunakan Durbin-Watson Test dengan statistik

\[ DW = \frac{\sum_{t=2}^{n}(e_t - e_{t-1})^2}{\sum_{t=1}^{n} e_t^2} \]

Interpretasi nilai Durbin-Watson:

  • \(DW \approx 2\) → tidak terdapat autokorelasi

  • \(DW < 2\) → autokorelasi positif

  • \(DW > 2\) → autokorelasi negatif


1.3.5 Uji Linearitas (Ramsey RESET Test)

Uji linearitas digunakan untuk mengetahui apakah bentuk fungsi model regresi sudah tepat atau terdapat kesalahan spesifikasi model.

Ramsey RESET Test dilakukan dengan menambahkan pangkat dari nilai prediksi model ke dalam model regresi.

\[ Y = \beta_0 + \beta_1 X_1 + \dots + \beta_k X_k + \gamma_1 \hat{Y}^2 + \gamma_2 \hat{Y}^3 + \varepsilon \]

Hipotesis yang diuji adalah

\[ H_0 : \gamma_1 = \gamma_2 = \dots = 0 \]

Jika hipotesis nol ditolak maka model dianggap tidak terspesifikasi dengan baik.


1.4 Dasar Teori Uji Signifikansi

1.4.1 Uji F (Uji Simultan)

Uji F digunakan untuk mengetahui apakah seluruh variabel independen secara simultan mempengaruhi variabel dependen.

Statistik uji F dirumuskan sebagai

\[ F = \frac{SSR/k}{SSE/(n-k-1)} \]

dengan:

  • \(SSR\) : regression sum of squares

  • \(SSE\) : error sum of squares

  • \(k\) : jumlah variabel independen

  • \(n\) : jumlah observasi

Jika nilai \(p\)-value kecil maka model regresi secara keseluruhan signifikan.


1.4.2 Uji t (Uji Parsial)

Uji \(t\) digunakan untuk mengetahui pengaruh masing-masing variabel independen terhadap variabel dependen secara parsial.

Statistik uji yang digunakan adalah

\[ t = \frac{\hat{\beta}_j}{SE(\hat{\beta}_j)} \]

dengan:

  • \(\hat{\beta}_j\) : estimasi koefisien regresi

  • \(SE(\hat{\beta}_j)\) : standar error koefisien

Jika nilai \(p\)-value < 0.05 maka koefisien regresi dianggap signifikan.

Library yang digunakan

library(knitr)
library(rmarkdown)
library(MASS)
library(car)
library(lmtest)

2 Deskripsi Data

data(Boston)

summary(Boston)
##       crim                zn             indus            chas        
##  Min.   : 0.00632   Min.   :  0.00   Min.   : 0.46   Min.   :0.00000  
##  1st Qu.: 0.08205   1st Qu.:  0.00   1st Qu.: 5.19   1st Qu.:0.00000  
##  Median : 0.25651   Median :  0.00   Median : 9.69   Median :0.00000  
##  Mean   : 3.61352   Mean   : 11.36   Mean   :11.14   Mean   :0.06917  
##  3rd Qu.: 3.67708   3rd Qu.: 12.50   3rd Qu.:18.10   3rd Qu.:0.00000  
##  Max.   :88.97620   Max.   :100.00   Max.   :27.74   Max.   :1.00000  
##       nox               rm             age              dis        
##  Min.   :0.3850   Min.   :3.561   Min.   :  2.90   Min.   : 1.130  
##  1st Qu.:0.4490   1st Qu.:5.886   1st Qu.: 45.02   1st Qu.: 2.100  
##  Median :0.5380   Median :6.208   Median : 77.50   Median : 3.207  
##  Mean   :0.5547   Mean   :6.285   Mean   : 68.57   Mean   : 3.795  
##  3rd Qu.:0.6240   3rd Qu.:6.623   3rd Qu.: 94.08   3rd Qu.: 5.188  
##  Max.   :0.8710   Max.   :8.780   Max.   :100.00   Max.   :12.127  
##       rad              tax           ptratio          black       
##  Min.   : 1.000   Min.   :187.0   Min.   :12.60   Min.   :  0.32  
##  1st Qu.: 4.000   1st Qu.:279.0   1st Qu.:17.40   1st Qu.:375.38  
##  Median : 5.000   Median :330.0   Median :19.05   Median :391.44  
##  Mean   : 9.549   Mean   :408.2   Mean   :18.46   Mean   :356.67  
##  3rd Qu.:24.000   3rd Qu.:666.0   3rd Qu.:20.20   3rd Qu.:396.23  
##  Max.   :24.000   Max.   :711.0   Max.   :22.00   Max.   :396.90  
##      lstat            medv      
##  Min.   : 1.73   Min.   : 5.00  
##  1st Qu.: 6.95   1st Qu.:17.02  
##  Median :11.36   Median :21.20  
##  Mean   :12.65   Mean   :22.53  
##  3rd Qu.:16.95   3rd Qu.:25.00  
##  Max.   :37.97   Max.   :50.00

Rata-rata harga rumah adalah 22.5328 USD

3 Model Regresi

Bentuk Umum persamaan regresi linier: \[ y = \beta_0 + \beta_1 X_1 + \beta_2 X_2 + \beta_3 X_3 + \epsilon \] dengan

  • Y = medv (median house value)
  • X1 = rm (jumlah kamar rata-rata)
  • X2 = lstat (persentase penduduk berstatus rendah)
  • X3 = crim (tingkat kriminalitas)

3.1 Estimasi Parameter

model = lm(medv ~ rm + lstat + crim, data = Boston)

summary(model)
## 
## Call:
## lm(formula = medv ~ rm + lstat + crim, data = Boston)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -17.925  -3.567  -1.157   1.906  29.024 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -2.56225    3.16602  -0.809  0.41873    
## rm           5.21695    0.44203  11.802  < 2e-16 ***
## lstat       -0.57849    0.04767 -12.135  < 2e-16 ***
## crim        -0.10294    0.03202  -3.215  0.00139 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5.49 on 502 degrees of freedom
## Multiple R-squared:  0.6459, Adjusted R-squared:  0.6437 
## F-statistic: 305.2 on 3 and 502 DF,  p-value: < 2.2e-16

Model Akhir = \[ \hat{medv} = -2.5623 + 5.217\,rm + -0.5785\,lstat + -0.1029\,crim \]

3.2 Pengujian Hipotesis

3.2.1 Uji Normalitas Residual

Menggunakan Kolmogorov-Smirnov dan Q-Q Plot

error  <- residuals(model)

ks_res <- ks.test(error, "pnorm", mean(error), sd(error))

qqnorm(error)

qqline(error, col="red")

Hipotesis:

  • \(H_0\) : Residual berdistribusi normal

  • \(H_1\) : Residual tidak berdistribusi normal

Nilai p-value: \[ p\text{-value} = 3.14e-07 \]

Karena \(p\)-value < 0.05, maka \(H_0\) ditolak.

Kesimpulan: Residual tidak berdistribusi normal. Pada grafik Q-Q Plot terlihat titik-titik menyimpang dari garis diagonal terutama pada kuantil ekstrem. Hal ini mengindikasikan adanya skewness dan heavy tail, sehingga asumsi normalitas tidak terpenuhi.

3.2.2 Uji Multikolinearitas

library(car)

vif_res <- vif(model)

\[ \begin{aligned} VIF_{rm} &= 1.616 \\ VIF_{lstat} &= 1.942 \\ VIF_{crim} &= 1.271 \end{aligned} \]

Kriteria:

  • VIF > 10 → terdapat multikolinearitas serius
  • VIF 5–10 → sedang
  • VIF < 5 → tidak terdapat multikolinearitas

Seluruh VIF < 5.

Kesimpulan:

Tidak terdapat multikolinearitas. Variabel independen tidak saling berkorelasi tinggi, sehingga estimasi koefisien stabil.

3.2.3 Uji Heteroskedatisitas

library(lmtest)

bp_res <- bptest(model)

Hipotesis: \[ \begin{aligned} H_0 &: \operatorname{Var}(\varepsilon) = \sigma^2 \\ H_1 &: \operatorname{Var}(\varepsilon) \neq \sigma^2 \end{aligned} \]

Statistik uji: \[ \begin{aligned} BP &= 7.4741 \\ df &= 3 \\ p\text{-value} &= 0.05823 \end{aligned} \]

\[ \text{Karena } p\text{-value} < 0.05,\ \text{maka } H_0 \text{ gagal ditolak.} \]

Kesimpulan:

Tidak terdapat bukti heteroskedastisitas pada taraf 5%.

Namun karena p-value mendekati 0.05, terdapat indikasi lemah kemungkinan heteroskedastisitas ringan. Pemeriksaan grafik residual tetap disarankan.

3.2.4 Uji Autokorelasi

library(lmtest)

dw_res <- dwtest(model)

Nilai statistik Durbin–Watson yang diperoleh adalah:

\[ DW = 0.822 \]

dengan:

\[ p\text{-value} < 0.05 \]

Hipotesis

  • \(H_0\): Tidak terdapat autokorelasi

  • \(H_1\): Terdapat autokorelasi

Kriteria Pengambilan Keputusan

  • Jika \(p\text{-value} < 0.05\), maka \(H_0\) ditolak

  • Jika \(p\text{-value} \ge 0.05\), maka \(H_0\) tidak ditolak

Keputusan

Karena \(p\text{-value} < 0.05\), maka \(H_0\) ditolak.

p-value sangat kecil. Secara statistik terdapat autokorelasi positif. Terdapat indikasi korelasi antar residual berdasarkan urutan data, namun karena data bersifat cross-sectional, hasil ini tidak serta-merta menunjukkan pelanggaran asumsi independensi seperti pada data time series.

3.2.5 Uji Linearitas

reset_res <- resettest(model)

Hasil pengujian menunjukkan:

\[ \text{RESET} = 133.3 \]

\[ df_1 = 2, \quad df_2 = 500 \]

\[ p\text{-value} = 3.991238 \times 10^{-47} \]

Hipotesis

  • \(H_0\): Model sudah terspesifikasi dengan benar

  • \(H_1\): Model tidak terspesifikasi dengan benar

Kriteria Pengambilan Keputusan

  • Jika \(p\text{-value} < 0.05\), maka \(H_0\) ditolak

  • Jika \(p\text{-value} \ge 0.05\), maka \(H_0\) tidak ditolak

Keputusan

Karena \(p\text{-value} < 0.05\), maka \(H_0\) ditolak.

Kesimpulan: Model tidak linear atau terdapat spesifikasi yang salah. Terdapat kemungkinan hubungan sebenarnya bersifat non-linear atau ada variabel penting yang belum dimasukkan atau perlu transformasi.

4 Plot Model Regresi

pairs(~medv + rm + lstat + crim, data=Boston)

Berdasarkan scatterplot matrix yang ditampilkan, terlihat pola hubungan antar variabel medv (median house value), rm (jumlah kamar), lstat (persentase penduduk berstatus ekonomi rendah), dan crim (tingkat kriminalitas).

4.1 Hubungan medv dan rm

plot(Boston$rm, Boston$medv,
     main="Scatterplot RM vs MEDV",
     xlab="Jumlah Kamar",
     ylab="Harga Rumah",
     pch=19, col="steelblue")

abline(lm(medv ~ rm, data=Boston), col="red")

Terlihat hubungan positif yang cukup kuat antara variabel rm dan medv. Semakin besar jumlah kamar rata-rata dalam sebuah rumah, maka harga median rumah cenderung semakin tinggi.

Titik-titik data membentuk pola yang relatif linear naik, sehingga variabel rm berpotensi menjadi prediktor yang baik dalam model regresi untuk menjelaskan variasi harga rumah.

4.2 Hubungan medv dan lstat

Variabel lstat menunjukkan hubungan negatif yang kuat dengan medv. Ketika persentase penduduk berstatus sosial ekonomi rendah meningkat, nilai median harga rumah cenderung menurun.

Pola hubungan yang terlihat cukup jelas menurun, namun terdapat sedikit bentuk melengkung, yang mengindikasikan kemungkinan adanya hubungan non-linear antara kedua variabel.

4.3 Hubungan medv dan crim

Hubungan antara crim dan medv cenderung negatif, meskipun tidak sekuat hubungan pada variabel lainnya. Daerah dengan tingkat kriminalitas yang tinggi umumnya memiliki harga rumah yang lebih rendah.

Namun, sebaran titik cukup menyebar dan terdapat beberapa outlier pada nilai kriminalitas yang tinggi, sehingga pengaruh variabel ini terhadap harga rumah mungkin tidak sekuat variabel lainnya.

4.4 Hubungan antar variabel independen

Hubungan antara rm dan lstat terlihat negatif, yang menunjukkan bahwa daerah dengan persentase penduduk berstatus ekonomi rendah yang tinggi cenderung memiliki jumlah kamar rumah yang lebih sedikit.

Sementara itu, hubungan antara crim dengan variabel lain menunjukkan pola yang lebih menyebar dengan beberapa nilai ekstrem, yang mengindikasikan adanya skewness pada variabel crim.

4.5 Kesimpulan

Secara umum, scatterplot matrix menunjukkan bahwa:

  • Variabel rm memiliki hubungan positif dengan harga rumah (medv).
  • Variabel lstat memiliki hubungan negatif yang kuat dengan harga rumah.
  • Variabel crim memiliki hubungan negatif namun lebih lemah dengan harga rumah.
  • Terdapat indikasi pola non-linear pada hubungan beberapa variabel, terutama antara medv dan lstat, yang juga sejalan dengan hasil RESET test pada model regresi.

Visualisasi ini menunjukkan bahwa variabel rm, lstat, dan crim relevan untuk digunakan sebagai prediktor dalam model regresi untuk menjelaskan variasi harga rumah.

5 Uji Signifikansi

summary(model)
## 
## Call:
## lm(formula = medv ~ rm + lstat + crim, data = Boston)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -17.925  -3.567  -1.157   1.906  29.024 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -2.56225    3.16602  -0.809  0.41873    
## rm           5.21695    0.44203  11.802  < 2e-16 ***
## lstat       -0.57849    0.04767 -12.135  < 2e-16 ***
## crim        -0.10294    0.03202  -3.215  0.00139 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5.49 on 502 degrees of freedom
## Multiple R-squared:  0.6459, Adjusted R-squared:  0.6437 
## F-statistic: 305.2 on 3 and 502 DF,  p-value: < 2.2e-16

5.1 Uji F (Uji Signifikansi Simultan)

Uji F digunakan untuk mengetahui apakah seluruh variabel independen secara simultan berpengaruh terhadap variabel dependen.

# Ambil statistik F dari model
f_stat <- summary(model)$fstatistic

F_hitung <- f_stat[1]

df1 <- f_stat[2]

df2 <- f_stat[3]

p_value_F <- pf(F_hitung, df1, df2, lower.tail = FALSE)

Hasil estimasi menunjukkan:

\[ F_{hitung} = 305.1622 \]

dengan derajat kebebasan:

\[ df_1 = 3, \quad df_2 = 502 \]

serta:

\[ p\text{-value} = 1.008894e-112 \]

Hipotesis

  • \(H_0\): \(\beta_1 = \beta_2 = \dots = \beta_k = 0\)
  • \(H_1\): Minimal terdapat satu \(\beta_i \ne 0\)

Keputusan

Karena \(p\text{-value} < 0.05\), maka \(H_0\) ditolak.

Kesimpulan

Secara simultan, seluruh variabel independen berpengaruh signifikan terhadap variabel dependen. Model regresi yang digunakan layak untuk menjelaskan hubungan antar variabel.

5.2 Uji t (Uji Signifikansi Parsial)

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

coef_table <- coef(summary(model))

Berikut adalah hasil uji t masing-masing variabel:

5.2.1 Variabel rm

t_rm <- coef_table["rm","t value"]
p_rm <- coef_table["rm","Pr(>|t|)"]

\[ t_{hitung} = 11.8021 \]

\[ p\text{-value} = 1.533796e-28 \]

Karena \(p\text{-value} < 0.05\), maka \(H_0\) ditolak.

5.2.2 Variabel lstat

t_lstat <- coef_table["lstat","t value"]
p_lstat <- coef_table["lstat","Pr(>|t|)"]

\[ t_{hitung} = -12.1354 \]

\[ p\text{-value} = 6.746173e-30 \]

Karena \(p\text{-value} < 0.05\), maka \(H_0\) ditolak.

5.2.3 Variabel crim

t_crim <- coef_table["crim","t value"]
p_crim <- coef_table["crim","Pr(>|t|)"]

\[ t_{hitung} = -3.2147 \]

\[ p\text{-value} = 1.390003e-03 \]

Karena \(p\text{-value} < 0.05\), maka \(H_0\) ditolak.

Secara simultan maupun parsial, seluruh variabel independen dalam model terbukti berpengaruh signifikan terhadap variabel dependen. Variabel meningkatkan nilai variabel dependen, sedangkan variabel dan menurunkannya. Model regresi yang diestimasi memiliki kemampuan yang baik dalam menjelaskan variasi variabel dependen.