Studi Kasus Regresi Linier Berganda: Pengaruh Tingkat Kehadiran dan IQ terhadap Nilai UAS

Prestasi akademik siswa dipengaruhi oleh berbagai faktor, baik internal maupun eksternal. Dua faktor yang sering menjadi perhatian adalah kecerdasan intelektual (IQ) dan tingkat kehadiran di kelas. IQ mencerminkan kemampuan kognitif siswa dalam memahami materi, menganalisis informasi, dan memecahkan masalah, sedangkan kehadiran menunjukkan keterlibatan siswa dalam proses pembelajaran dan interaksi di kelas.

Diberikan data tentang IQ dan tingkat kehadiran sepuluh siswa di kelas yang diperkirakan mempengaruhi nilai UAS.

Tabel Data Pengamatan
Siswa IQ (\(X_2\)) Tingkat Kehadiran (%) (\(X_1\)) Nilai UAS (\(Y\))
1 110 60 65
2 120 70 70
3 115 75 75
4 130 80 75
5 110 80 80
6 120 90 80
7 120 95 85
8 125 95 95
9 110 100 90
10 120 100 98

Analisis dilakukan menggunakan regresi linier berganda, dengan tingkat kehadiran (\(X_1\)) dan IQ (\(X_2\)) sebagai variabel independen, serta nilai UAS (\(Y\)) sebagai variabel dependen. Adapun tujuan analisis ini adalah sebagai berikut:

  1. Menentukan persamaan regresi linier berganda yang dapat menjelaskan hubungan antara tingkat kehadiran, IQ, dan nilai UAS.

  2. Mengukur pengaruh variabel bebas terhadap variabel terikat secara simultan.

  3. Mengukur pengaruh variabel bebas terhadap variabel terikat secara parsial.

  4. Menghitung koefisien determinasi (\(R^2\)) untuk mengetahui seberapa besar variasi nilai UAS yang dapat dijelaskan oleh tingkat kehadiran dan IQ.

  5. Memeriksa apakah asumsi-asumsi regresi linier terpenuhi agar hasil analisis dapat diinterpretasikan dengan valid.

Persamaan Regresi Linier Berganda

Model regresi linier berganda disusun untuk memahami hubungan antara variabel dependen \(Y\) dengan dua atau lebih variabel independen \(X\). Secara matematis, model regresi linier berganda dituliskan sebagai:

\[Y = \beta_0 + \beta_1 X_1 + \beta_2 X_2 + ... + \beta_k X_k + \epsilon\] di mana:
\(Y\) : Variabel dependen Y
\(X_k\) : Variabel independen ke-\(k\)
\(\beta_k\) : Koefisien regresi variabel bebas \(X_k\)

Sementara itu, persamaan regresi linier berganda disusun untuk menghitung nilai estimasi atau prediksi dari variabel dependen (\(Y\)) berdasarkan nilai-nilai variabel independen (\(X\)) yang telah diketahui.

\[\hat{Y} = \hat{\beta_0} + \hat{\beta_1} X_1 + \hat{\beta_2} X_2 + ... + \hat{\beta_k} X_k\]

di mana:
\(\hat{Y}\) : Penduga \(Y\)
\(\hat{\beta_k}\) : Koefisien regresi variabel bebas \(X_k\)

Pada analisis ini, pemodelan dilakukan dengan menggunakan dua cara, yaitu cara manual dengan menggunakan perhitungan matriks, dan menggunakan fungsi lm.

Cara 1: Manual

Model regresi dalam bentuk matriks dinyatakan sebagai:

\[Y = X \beta + \epsilon\] di mana:
\(Y\) : Vektor kolom dari variabel dependen (ukuran \(n \times 1\))
\(X\) : Matriks variabel independen, dengan kolom pertama berisi angka 1 untuk konstanta intercept (ukuran \(n \times k\))
\(\beta\) : Vektor kolom dari koefisien regresi yang ingin kita cari (ukuran \(k \times 1\))
\(\epsilon\) : Vektor kolom galat/residual (ukuran \(n \times 1\))

Untuk mendapatkan nilai estimasi koefisien (\(\beta\)) yang meminimalkan jumlah kuadrat residual (metode Ordinary Least Squares/OLS), digunakan rumus:

\[\hat{\beta} = (X'X)^{-1} X'Y\] di mana:
\(X'\): Transpose dari matriks \(X\)
\((X'X)^{-1}\): Invers dari hasil perkalian matriks \(X\) transpose dengan matriks \(X\)
\(X'Y\): Perkalian matriks \(X\) transpose dengan vektor \(Y\)

Berikut merupakan penyelesaian manual menggunakan R:

# Input data
X1 <- c(60, 70, 75, 80, 80, 90, 95, 95, 100, 100)
X2 <- c(110, 120, 115, 130, 110, 120, 120, 125, 110, 120)
Y <- c(65, 70, 75, 75, 80, 80, 85, 95, 90, 98)

# Membuat matriks X dengan kolom intercept
X <- cbind(1, X1, X2)
X
##          X1  X2
##  [1,] 1  60 110
##  [2,] 1  70 120
##  [3,] 1  75 115
##  [4,] 1  80 130
##  [5,] 1  80 110
##  [6,] 1  90 120
##  [7,] 1  95 120
##  [8,] 1  95 125
##  [9,] 1 100 110
## [10,] 1 100 120
# Membuat matriks Y
Y <- matrix(Y, ncol=1)
Y
##       [,1]
##  [1,]   65
##  [2,]   70
##  [3,]   75
##  [4,]   75
##  [5,]   80
##  [6,]   80
##  [7,]   85
##  [8,]   95
##  [9,]   90
## [10,]   98
# Tranpose matriks X 
Xt <- t(X) # matriks X'
Xt
##    [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
##       1    1    1    1    1    1    1    1    1     1
## X1   60   70   75   80   80   90   95   95  100   100
## X2  110  120  115  130  110  120  120  125  110   120
# Menghitung X'Y
XtY <- Xt %*% Y
XtY
##     [,1]
##      813
## X1 69925
## X2 96060
# Menghitung X'X
XtX <- Xt %*% X
XtX
##            X1     X2
##      10   845   1180
## X1  845 73075  99900
## X2 1180 99900 139650
# Menghitung invers X'X
XtX_invers <- solve(XtX)
XtX_invers
##                           X1            X2
##    34.62208967 -0.0188185492 -0.2790840870
## X1 -0.01881855  0.0006311333 -0.0002924764
## X2 -0.27908409 -0.0002924764  0.0025745622
# Menghitung beta duga (beta_hat)
beta_hat <- XtX_invers %*% XtY
beta_hat
##          [,1]
##    23.0544545
## X1  0.7372330
## X2 -0.0343275

Berdasarkan hasil perhitungan didapat koefisien regresi dengan nilai intercept (\(\hat{\beta_0}\)) sebesar 23.0544, koefisien \(X_1\) (\(\hat{\beta_1}\)) sebesar 0.7372, dan koefisien \(X_2\) (\(\hat{\beta_2}\)) sebesar -0.0343. Dengan demikian, persamaan regresi yang terbentuk adalah:

\[\hat{Y} = 23.0544 + 0.7372 X_1 - 0.0343 X_2\]

Cara 2: Menggunakan Fungsi lm

Fungsi lm() pada R akan secara otomatis mengestimasi parameter model menggunakan metode Ordinary Least Squares (OLS), sehingga tidak diperlukan perhitungan matriks secara manual seperti pada cara sebelumnya. Hasil estimasi yang diperoleh kemudian disajikan dalam bentuk ringkasan model melalui fungsi summary() yang memuat informasi koefisien regresi, uji signifikansi, serta ukuran kecocokan model.

library(lmtest)

# Input data
X1 <- c(60, 70, 75, 80, 80, 90, 95, 95, 100, 100)
X2 <- c(110, 120, 115, 130, 110, 120, 120, 125, 110, 120)
Y <- c(65, 70, 75, 75, 80, 80, 85, 95, 90, 98)

# Membuat model
model <- lm(Y ~ X1 + X2)

# Membuat ringkasan model
summary(model)
## 
## Call:
## lm(formula = Y ~ X1 + X2)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -5.2861 -2.8939  0.0296  1.6791  6.1993 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 23.05445   25.57161   0.902 0.397247    
## X1           0.73723    0.10918   6.752 0.000264 ***
## X2          -0.03433    0.22051  -0.156 0.880686    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4.346 on 7 degrees of freedom
## Multiple R-squared:  0.8719, Adjusted R-squared:  0.8353 
## F-statistic: 23.82 on 2 and 7 DF,  p-value: 0.0007523

Dari ringkasan model tersebut didapat koefisien regresi dengan nilai intercept (\(\hat{\beta_0}\)) sebesar 23.0544, koefisien \(X_1\) (\(\hat{\beta_1}\)) sebesar 0.7372, dan koefisien \(X_2\) (\(\hat{\beta_2}\)) sebesar -0.0343. Dengan demikian, persamaan regresi yang terbentuk adalah:

\[\hat{Y} = 23.0544 + 0.7372 X_1 - 0.0343 X_2\] Berdasarkan hasil perhitungan yang dilakukan, baik secara manual maupun menggunakan fungsi lm(), diperoleh nilai koefisien regresi yang identik. Nilai \(\beta_1\) menunjukkan bahwa setiap kenaikan 1 persen pada tingkat kehadiran (\(X_1\)) akan meningkatkan nilai UAS (\(Y\)) sebesar 0.7372, dengan asumsi bahwa IQ (\(X_2\)) konstan. Sementara itu, nilai \(\beta_2\) menunjukkan bahwa setiap kenaikan 1 satuan pada IQ (\(X_2\)) akan menurunkan nilai UAS (\(Y\)) sebesar 0.0343, dengan asumsi bahwa tingkat kehadiran (\(X_1\)) konstan. Dan nilai intercept sebesar 23.0544 menunjukkan taksiran nilai UAS (\(Y\)) ketika tingkat kehadiran (\(X_1\)) dan IQ (\(X_2\)) bernilai nol.

Uji Simultan dan Parsial

Dalam analisis regresi linier berganda, pengujian simultan dan parsial dilakukan untuk mengetahui signifikansi pengaruh variabel independen terhadap variabel dependen. Uji simultan (uji F) digunakan untuk mengetahui apakah seluruh variabel independen yang dimasukkan dalam model secara bersama-sama memiliki pengaruh yang signifikan terhadap variabel dependen. Sementara itu, uji parsial (uji t) dilakukan untuk mengetahui pengaruh masing-masing variabel independen terhadap variabel dependen. Adapun hipotesis untuk masing-masing uji tersebut adalah sebagai berikut:

Hipotesis uji simultan (Uji F):
\(H_0 : \beta_1 = \beta_2 = 0\) (variabel independen \(X_1\) dan \(X_2\) secara simultan tidak berpengaruh terhadap variabel dependen \(Y\))
\(H_1\) : minimal ada satu \(\beta_k \neq 0\) (minimal ada satu variabel independen yang memengaruhi variabel dependen \(Y\))

Hipotesis uji parsial (uji t):
\(H_0 : \beta_k = 0\) (variabel independen \(X_j\) tidak memiliki pengaruh terhadap variabel dependen \(Y\))
\(H_1 : \beta_k \neq 0\) (variabel independen \(X_k\) memiliki pengaruh terhadap variabel dependen \(Y\))

# Ringkasan model
summary(model)
## 
## Call:
## lm(formula = Y ~ X1 + X2)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -5.2861 -2.8939  0.0296  1.6791  6.1993 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 23.05445   25.57161   0.902 0.397247    
## X1           0.73723    0.10918   6.752 0.000264 ***
## X2          -0.03433    0.22051  -0.156 0.880686    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4.346 on 7 degrees of freedom
## Multiple R-squared:  0.8719, Adjusted R-squared:  0.8353 
## F-statistic: 23.82 on 2 and 7 DF,  p-value: 0.0007523

Berdasarkan hasil pengujian, diperoleh nilai F-statistic sebesar 23.82 dengan p-value sebesar 0.0007523. Nilai p-value yang lebih kecil dari taraf signifikansi 0.05 menunjukkan bahwa \(H_0\) ditolak. Artinya, variabel independen \(X_1\) dan \(X_2\) secara simultan berpengaruh terhadap variabel dependen \(Y\).

Sementara itu, berdasarkan uji parsial (uji t), variabel \(X_1\) memiliki t-value sebesar 6.752 dan p-value sebesar 0.000264. Nilai p-value yang lebih kecil dari taraf signifikansi 0.05 menunjukkan bahwa \(H_0\) ditolak, yang artinya variabel \(X_1\) berpengaruh signifikan terhadap variabel \(Y\). Sedangkan, variabel \(X_2\) memiliki t-value sebesar -0.156 dengan p-value sebesar 0.880686. Nilai p-value yang lebih besar dari taraf signifikansi 0.05 menunjukkan bahwa \(H_0\) gagal ditolak, yang artinya variabel \(X_2\) tidak berpengaruh signifikan terhadap variabel \(Y\). Dengan demikian, secara parsial hanya variabel \(X_1\) yang memberikan pengaruh signifikan dalam model.

Koefisien Determinasi

Koefisien determinasi (\(R^2\)) merupakan ukuran statistik yang digunakan untuk mengetahui seberapa besar variabel independen dapat menjelaskan variasi variabel dependen dalam suatu model regresi. Nilai koefisien determinasi berkisar antara 0 hingga 1.

Secara matematis, koefisien determinasi dapat dirumuskan sebagai berikut:

\[R^2 = \frac{SSR}{SST}\] di mana:
SSR : Jumlah kuadrat regresi
SST : Jumlah kuadrat total

Nilai \(R^2\) memiliki kelemahan, yaitu akan selalu meningkat atau minimal tetap ketika variabel independen baru ditambahkan, meskipun variabel tersebut tidak memberikan kontribusi signifikan terhadap model. Oleh karena itu, terdapat nilai adjusted \(R^2\) yang merupakan pengembangan dari \(R^2\). Nilai adjusted \(R^2\) dapat meningkat maupun menurun tergantung pada apakah penambahan variabel benar-benar memberikan kontribusi yang berarti atau tidak terhadap model.

Secara matematis, koefisien determinasi dapat dirumuskan sebagai berikut:

\[R^2 = 1 - (1-R^2) \frac{(n-1)}{(n-k-1)}\] di mana:
\(n\) : Jumlah observasi
\(k\) : Jumlah variabel independen

# Ringkasan model
summary(model)
## 
## Call:
## lm(formula = Y ~ X1 + X2)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -5.2861 -2.8939  0.0296  1.6791  6.1993 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 23.05445   25.57161   0.902 0.397247    
## X1           0.73723    0.10918   6.752 0.000264 ***
## X2          -0.03433    0.22051  -0.156 0.880686    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4.346 on 7 degrees of freedom
## Multiple R-squared:  0.8719, Adjusted R-squared:  0.8353 
## F-statistic: 23.82 on 2 and 7 DF,  p-value: 0.0007523

Berdasarkan hasil analisis tersebut, didapat nilai koefisien determinasi sebesar 0.8719. Nilai ini menunjukkan bahwa 87.19% variasi dari variabel dependen mampu dijelaskan oleh variabel independen. Sementara 12.81% sisanya dipengaruhi oleh faktor lain di luar model.

Sementara itu, nilai adjusted \(R^2\) sebesar 0.8353 menunjukkan bahwa setelah disesuaikan dengan jumlah variabel dalam model, variabel independen hanya mampu menejlaskan 83.53% variasi variabel dependen dalam model. Hasil ini menunjukkan bahwa model regresi yang digunakan cukup baik dalam menjelaskan hubungan antar variabel.

Uji Asumsi

Uji asumsi klasik digunakan untuk memastikan bahwa modle regresi yang digunakan telah memenuhi asumsi-asumsi dasar, sehingga hasil estimasi yang diperoleh bersivat valid, tidak bias, dan dapat diinterpretasikan dengan tepa. Adapun asumsi-asumsi dasar regresi linier berganda adalah sebagai berikut:

  1. Hubungan antara variabel independen dan variabel dependen bersifat linear.

  2. Residual berdistribusi normal.

  3. Varians dari residual bersifat homogen (tidak terjadi heteroskedastisitas)

  4. Residual saling bebas (tidak terjadi autokorelasi).

  5. Variabel independen saling bebas (tidak terjadi multikolinearitas).

Uji Linearitas

Uji linearitas dilakukan untuk mengetahui apakah hubungan antar variabel independen dan variabel dependen bersifat linear. Secara statistik, salah satu metode yang sering digunakan untuk mendeteksi linearitas adalah Uji Ramsey RESET. Pada R, uji ini dilakukan dengan menggunakan fungsi resettest().

Adapun hipotesis yang digunakan adalah sebagai berikut:
\(H_0\) : Model hubungan antara variabel independen dan variabel dependen adalah linier.
\(H_1\) : Model hubungan antara variabel independen dan variabel dependen tidak linier.

resettest(model, power = 2:3, type = "regressor")
## 
##  RESET test
## 
## data:  model
## RESET = 0.35787, df1 = 4, df2 = 3, p-value = 0.8269

Dari hasil pengujian, didapat p-value sebesar 0.8269 yang lebih besar dari taraf signifikansi 0.05, sehingga \(H_0\) gagal ditolak. Hal ini menunjukkan bahwa hubungan antara variabel independen dan variabel dependen bersifat linear.

Uji Normalitas

Uji normalitas dilakukan untuk mengetahui apakah residual dalam model berdistribusi normal atau tidak. Pada analisis ini, uji statistik dilakukan dengan menggunakan uji Shapiro-Wilk dan Anderson-Darling. Di R, uji Shapiro-Wilk dilakukan dengan menggunakan fungsi shapiro.test(), sementara uji Anderson-Darling dilakukan dnegan menggunakan fungsi ad.test().

Adapun hipotesis yang digunakan adalah sebagai berikut:
\(H_0\) : Residual berdistribusi normal.
\(H_1\) : Residual tidak berdistribusi normal.

library(nortest)

# Perhitungan Galat
galat <- model$residuals

# Uji Shapiro-Wilk 
shapiro.test(galat) 
## 
##  Shapiro-Wilk normality test
## 
## data:  galat
## W = 0.95125, p-value = 0.6833
# Uji Anderson-Darling 
ad.test(galat)
## 
##  Anderson-Darling normality test
## 
## data:  galat
## A = 0.2268, p-value = 0.7482

Dari hasil pengujian, kedua metode menunjukkan p-value yang lebih besar dari taraf signifikansi 0.05, di mana p-value Shapiro-Wilk sebesar 0.6833 dan p-value Anderson-Darling sebesar 0.7482. Hal ini menunjukkan bahwa \(H_0\) gagal ditolak, sehingga secara statistik terbukti bahwa residual pada model berdistribusi normal.

Uji Heteroskedastisitas

Uji heteroskedastisitas digunakan untuk mengetahui apakah terjadi ketidakhomogenan varians residual pada model regresi. Salah satu uji statistik yang dapat digunakan adalah uji Breusch-Pagan. Pada R, uji ini dilakuakn dengan menggunakan fungsi bptest().

Adapun hipotesis yang digunakan adalah sebagai berikut:
\(H_0\) : Varians residual homogen (Homoskedastisitas).
\(H_1\) : Varians residual tidak homogen (Heteroskedastisitas).

# Uji Breusch-Pagan
bptest(model)
## 
##  studentized Breusch-Pagan test
## 
## data:  model
## BP = 5.905, df = 2, p-value = 0.05221

Dari hasil pengujian, didapat p-value sebesar 0.05221 yang lebih besar dari taraf signifikansi 0.05, sehingga \(H_0\) gagal ditolak. Hal ini menunjukkan bahwa varians residual bersifat homogen dan tidak terjadi heteroskedastisitas.

Uji Autokorelasi

Uji autokorelasi dilakukan untuk mengetahui apakah antar residual terdapat korelasi (hubungan). Secara statistik, salah satu metode yang dapat digunakan dalam uji ini adalah uji Durbin-Watson. Pada R, uji Durbin-Watson dapat dilakukan dengan menggunakan fungsi dwtest().

Adapun hipotesis yang digunakan adalah sebagai berikut:
\(H_0\) : Tidak terdapat autokorelasi.
\(H_1\) : Terdapat autokorelasi.

# Uji Durbin-Watson
dwtest(model, alternative = "two.sided")
## 
##  Durbin-Watson test
## 
## data:  model
## DW = 2.594, p-value = 0.3974
## alternative hypothesis: true autocorrelation is not 0

Dari hasil pengujian, didapat p-value sebesar 0.3974 yang lebih besar dari taraf signifikansi 0.05, sehingga \(H_0\) gagal ditolak. Hal ini menunjukkan bahwa varians residual bersifat homogen dan tidak terjadi heteroskedastisitas.

Uji Multikolinearitas

Uji multikolinearitas digunakan untuk mengetahui ada tidaknya hubungan yang erat antar variabel independen dalam model. Pengujian ini dilakukan dengan melihat nilai Variance Inflation FaCtor (VIF). Kriteria pengambilan keputusan dilakukan dengan melihat nilai VIF dan Tolerance. Apabila nilai VIF kurang dari 10 dan nilai Tolerance lebih dari 0.10, maka dapat disimpulkan bahwa tidak terjadi multikolinearitas. Sebaliknya, jika nilai VIF lebih dari atau sama dengan 10 dan nilai Tolerance kurang dari atau sama dengan 0.10, menunjukkan adanya multikolinearitas antar variabel independen. Pada R, VIF dihitung dengan menggunakan fungsi vif.

Adapun hipotesis yang digunakan adalah sebagai berikut:
\(H_0\) : Tidak terdapat multikolinearitas.
\(H_1\) : Terdapat multikolinearitas.

library(car)

# Perhitungan Varians Inflation Factor (VIF)
vif(model)
##       X1       X2 
## 1.055571 1.055571
# Nilai tolerance 
vif.inv <- 1/vif(model) 
print(vif.inv) 
##       X1       X2 
## 0.947355 0.947355

Dari hasil pengujian, didapat nilai VIF sebesar 1.055571 dan nilai Tolerance sebesar 0.947355. Nilai VIF yang jauh dari batas menunjukkan bahwa variabel independen dalam model tidak saling berkorelasi dengan kuat, sehingga \(H_0\) gagal ditolak, dan terbukti bahwa tidak terjadi multikolinearitas.