Pendahuluan

Dalam kasus ini, seorang peneliti ingin melakukan analisis untuk mengidentifikasi faktor-faktor yang memengaruhi nilai ujian mahasiswa (Y). Diasumsikan bahwa nilai ujian dipengaruhi oleh dua variabel utama, yaitu jumlah jam belajar dan tingkat kehadiran mahasiswa.

Adapun variabel yang digunakan adalah sebagai berikut:

Penelitian ini bertujuan untuk:

  1. Mengestimasi model regresi linear berganda menggunakan metode OLS berbasis matriks.
  2. Menguji signifikansi model melalui uji F dan uji t secara manual.
  3. Menghitung nilai koefisien determinasi (\(R^2\)) dan Adjusted \(R^2\).
  4. Membandingkan hasil perhitungan manual dengan fungsi lm() di R.
  5. Melakukan prediksi nilai ujian pada kondisi tertentu.

Data Penelitian

Y  <- c(65, 70, 75, 80, 85, 78, 72, 90, 88, 95)
X1 <- c(2,  3,  4,  5,  6,  5,  3,  7,  6,  8)
X2 <- c(60, 65, 70, 75, 80, 72, 68, 85, 83, 90)

n <- length(Y)
k <- 2

data_mahasiswa <- data.frame(No=1:n, Y, X1, X2)

knitr::kable(data_mahasiswa,
             col.names = c("No", "Nilai Ujian", "Jam Belajar", "Kehadiran (%)"),
             align = "c")
No Nilai Ujian Jam Belajar Kehadiran (%)
1 65 2 60
2 70 3 65
3 75 4 70
4 80 5 75
5 85 6 80
6 78 5 72
7 72 3 68
8 90 7 85
9 88 6 83
10 95 8 90

Estimasi Model Regresi (OLS Matriks)

Model regresi linear berganda dapat dituliskan dalam bentuk matriks sebagai:

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

Estimator parameter diperoleh melalui:

\[ \hat{\boldsymbol{\beta}} = (\mathbf{X}^T\mathbf{X})^{-1}\mathbf{X}^T\mathbf{Y} \]

X_mat <- cbind(1, X1, X2)

beta <- solve(t(X_mat) %*% X_mat) %*% t(X_mat) %*% Y

round(beta, 6)
##         [,1]
##    16.136011
## X1  1.169838
## X2  0.774489

Persamaan Regresi

cat("Model Regresi:\n")
## Model Regresi:
cat("Y_hat =", round(beta[1],4), "+", round(beta[2],4),"X1 +", round(beta[3],4),"X2")
## Y_hat = 16.136 + 1.1698 X1 + 0.7745 X2

Interpretasi:

  • Intercept menggambarkan nilai ujian saat variabel bebas bernilai nol.
  • Koefisien X1 menunjukkan perubahan nilai akibat tambahan jam belajar.
  • Koefisien X2 menunjukkan perubahan nilai akibat peningkatan kehadiran.

Pengujian Hipotesis

Perhitungan Komponen Variansi

Y_hat <- X_mat %*% beta
Y_bar <- mean(Y)

SST <- sum((Y - Y_bar)^2)
SSE <- sum((Y - Y_hat)^2)
SSR <- SST - SSE

SST; SSR; SSE
## [1] 831.6
## [1] 831.0376
## [1] 0.5623679

Uji F (Simultan)

MSR <- SSR / k
MSE <- SSE / (n-k-1)

F_hit <- MSR / MSE
p_F <- pf(F_hit, k, n-k-1, lower.tail=FALSE)

F_hit
## [1] 5172.116
p_F
## [1] 8.042129e-12

Interpretasi: Jika p-value < 0,05, maka variabel independen secara bersama-sama berpengaruh signifikan terhadap nilai ujian.


Uji t (Parsial)

SE_beta <- sqrt(MSE * diag(solve(t(X_mat)%*%X_mat)))

t_hit <- beta / SE_beta
p_t <- 2*pt(abs(t_hit), df=n-k-1, lower.tail=FALSE)

hasil_t <- data.frame(
  Koefisien = c("Intercept","X1","X2"),
  Beta = beta,
  SE = SE_beta,
  t = t_hit,
  p_value = p_t
)

knitr::kable(hasil_t, align="c")
Koefisien Beta SE t p_value
Intercept 16.1360113 2.8367749 5.688154 0.0007444
X1 X1 1.1698379 0.2784355 4.201468 0.0040282
X2 X2 0.7744891 0.0557176 13.900261 0.0000024

Interpretasi: Variabel dengan p-value < 0,05 dinyatakan berpengaruh signifikan secara parsial.


Koefisien Determinasi

R2 <- SSR / SST
R2_adj <- 1 - (SSE/(n-k-1))/(SST/(n-1))

R2
## [1] 0.9993238
R2_adj
## [1] 0.9991305

Interpretasi:


Perbandingan dengan Fungsi lm()

model_lm <- lm(Y ~ X1 + X2)
summary(model_lm)
## 
## Call:
## lm(formula = Y ~ X1 + X2)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.31078 -0.14588 -0.05074  0.04440  0.56237 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 16.13601    2.83677   5.688 0.000744 ***
## X1           1.16984    0.27844   4.201 0.004028 ** 
## X2           0.77449    0.05572  13.900 2.36e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2834 on 7 degrees of freedom
## Multiple R-squared:  0.9993, Adjusted R-squared:  0.9991 
## F-statistic:  5172 on 2 and 7 DF,  p-value: 8.042e-12

Interpretasi: Hasil estimasi manual konsisten dengan output fungsi lm(), sehingga perhitungan yang dilakukan dapat dianggap valid.


Prediksi Nilai Ujian

X1_baru <- 1
X2_baru <- 100

Y_pred <- beta[1] + beta[2]*X1_baru + beta[3]*X2_baru

Y_pred
## [1] 94.75476

Interpretasi: Nilai yang diperoleh merupakan estimasi nilai ujian mahasiswa dengan kondisi jam belajar 1 jam per minggu dan kehadiran 100%.


Kesimpulan

  1. Model regresi linear berganda berhasil diestimasi menggunakan pendekatan OLS berbasis matriks.
  2. Uji F menunjukkan bahwa model signifikan secara simultan.
  3. Uji t menunjukkan variabel yang berpengaruh secara parsial.
  4. Nilai \(R^2\) dan Adjusted \(R^2\) menunjukkan kemampuan model dalam menjelaskan data.
  5. Hasil manual sesuai dengan output fungsi lm().
  6. Model dapat digunakan untuk memprediksi nilai ujian mahasiswa.