Regresi Linier Berganda (Pendugaan Parameter, Uji Hipotesis dan Kebaikan Model)
PENDAHULUAN
Penelitian ini bertujuan untuk menganalisis faktor-faktor yang mempengaruhi nilai ujian mahasiswa (Y). Variabel yang digunakan adalah:
- X1 = Jumlah jam belajar (jam/minggu)
- X2 = Tingkat kehadiran (%)
Metode yang digunakan adalah regresi linier berganda dengan pendekatan Ordinary Least Square (OLS).
INPUT DATA
# Membuat data
data_nilai_ujian_mahasiswa <- data.frame(
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)
)
data_nilai_ujian_mahasiswa## Y X1 X2
## 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
EKSPLORASI DATA ANALYIST
## Y X1 X2
## Min. :65.00 Min. :2.00 Min. :60.00
## 1st Qu.:72.75 1st Qu.:3.25 1st Qu.:68.50
## Median :79.00 Median :5.00 Median :73.50
## Mean :79.80 Mean :4.90 Mean :74.80
## 3rd Qu.:87.25 3rd Qu.:6.00 3rd Qu.:82.25
## Max. :95.00 Max. :8.00 Max. :90.00
## Y X1 X2
## Y 1.0000000 0.9902816 0.9988085
## X1 0.9902816 1.0000000 0.9841252
## X2 0.9988085 0.9841252 1.0000000
ANALISIS REGRSI
A. ESTIMASI MODEL REGRESI DENGAN METODE OLS (BERBASIS MATRIKS)
1. Menyusun Matriks X dan Y
# Data
Y <- matrix(c(65,70,75,80,85,78,72,90,88,95), ncol = 1)
X1 <- c(2,3,4,5,6,5,3,7,6,8)
X2 <- c(60,65,70,75,80,72,68,85,83,90)
# Tambahkan intercept (1)
X <- cbind(1, X1, X2)
Y## [,1]
## [1,] 65
## [2,] 70
## [3,] 75
## [4,] 80
## [5,] 85
## [6,] 78
## [7,] 72
## [8,] 90
## [9,] 88
## [10,] 95
## X1 X2
## [1,] 1 2 60
## [2,] 1 3 65
## [3,] 1 4 70
## [4,] 1 5 75
## [5,] 1 6 80
## [6,] 1 5 72
## [7,] 1 3 68
## [8,] 1 7 85
## [9,] 1 6 83
## [10,] 1 8 90
2. Rumus OLS (Matrix)
Model regresi linier:
\[ Y = X\beta + \epsilon \]
Estimator OLS:
\[ \hat{\beta} = (X^T X)^{-1} X^T Y \]
3. Perhitungan Manual dengan R
## [,1]
## 16.1360113
## X1 1.1698379
## X2 0.7744891
4. Membentuk Persamaan Regresi
## [1] 16.13601
## [1] 1.169838
## [1] 0.7744891
Model Regresi Yang diperoleh:
\[ Y = \beta_0 + \beta_1 X_1 + \beta_2 X_2 \]
Intrpretasi Koefisien:
- Intercept (β0): nilai Y saat X1 dan X2 = 0
- β1 (X1): setiap tambahan 1 jam belajar → nilai ujian meningkat sebesar β1
- β2 (X2): setiap kenaikan 1% kehadiran → nilai ujian meningkat sebesar β2
5. Validasi dengan Fungsi lm()
## (Intercept) X1 X2
## 16.1360113 1.1698379 0.7744891
6. Interpretasi Akhir
- Variabel jam belajar (X1) dan kehadiran (X2) berpengaruh positif terhadap nilai ujian
- Model dapat digunakan untuk memprediksi nilai mahasiswa
- Pendekatan matriks memberikan hasil yang konsisten dengan metode komputasi di R
B. UJI F DAN UJI t (MANUAL)
1. Menentukan Nilai Prediksi dan Residual
# Matriks
Y <- matrix(c(65,70,75,80,85,78,72,90,88,95), ncol = 1)
X1 <- c(2,3,4,5,6,5,3,7,6,8)
X2 <- c(60,65,70,75,80,72,68,85,83,90)
X <- cbind(1, X1, X2)
# Estimasi beta (OLS)
beta <- solve(t(X) %*% X) %*% t(X) %*% Y
beta## [,1]
## 16.1360113
## X1 1.1698379
## X2 0.7744891
## [,1]
## [1,] 64.94503
## [2,] 69.98732
## [3,] 75.02960
## [4,] 80.07188
## [5,] 85.11416
## [6,] 77.74841
## [7,] 72.31078
## [8,] 90.15645
## [9,] 87.43763
## [10,] 95.19873
## [,1]
## [1,] 0.05496829
## [2,] 0.01268499
## [3,] -0.02959831
## [4,] -0.07188161
## [5,] -0.11416490
## [6,] 0.25158562
## [7,] -0.31078224
## [8,] -0.15644820
## [9,] 0.56236786
## [10,] -0.19873150
2. Menghitung SSE, SSR, SST
# SSE (Error)
SSE <- sum(e^2)
# SST (Total)
Y_mean <- mean(Y)
SST <- sum((Y - Y_mean)^2)
# SSR (Regresi)
SSR <- SST - SSE
SSE## [1] 0.5623679
## [1] 831.0376
## [1] 831.6
3. Uji F (Simultan)
Rumus:
\[ F = \frac{SSR / k}{SSE / (n - k - 1)} \]
## [1] 5172.116
Keputusan:
## [1] 8.042129e-12
Interpretasi:
- Jika p-value < 0.05 → model signifikan
- Artinya X1 dan X2 secara bersama-sama berpengaruh terhadap Y
4. Uji t (Parsial)
Variansi Error:
## [1] 0.08033827
Variansi Koefisien:
## X1 X2
## 8.0472918 0.76212839 -0.15740223
## X1 0.7621284 0.07752633 -0.01526748
## X2 -0.1574022 -0.01526748 0.00310445
Standard Error:
## X1 X2
## 2.83677490 0.27843551 0.05571759
Statistik t:
\[ t = \frac{\beta}{SE(\beta)} \]
## [,1]
## 5.688154
## X1 4.201468
## X2 13.900261
p-value Uji t:
## [,1]
## 7.444177e-04
## X1 4.028204e-03
## X2 2.357834e-06
5. Interpretasi Uji t
- Jika p-value < 0.05 → variabel signifikan
- β1 signifikan → jam belajar berpengaruh terhadap nilai
- β2 signifikan → kehadiran berpengaruh terhadap nilai
C. Koefisien Determinasi (R² dan Adjusted R²)
Rumus R²
\[ R^2 = \frac{SSR}{SST} \]
Rumus Adjusted R²
\[ \bar{R}^2 = 1 - \frac{SSE/(n - k - 1)}{SST/(n - 1)} \]
1. Perhitungan Manual
# Data
Y <- matrix(c(65,70,75,80,85,78,72,90,88,95), ncol = 1)
X1 <- c(2,3,4,5,6,5,3,7,6,8)
X2 <- c(60,65,70,75,80,72,68,85,83,90)
X <- cbind(1, X1, X2)
# Estimasi beta
beta <- solve(t(X) %*% X) %*% t(X) %*% Y
# Prediksi & residual
Y_hat <- X %*% beta
e <- Y - Y_hat
# Hitung SSE, SST, SSR
SSE <- sum(e^2)
SST <- sum((Y - mean(Y))^2)
SSR <- SST - SSE
# Banyak data & variabel
n <- nrow(X)
k <- ncol(X) - 1
# R^2
R2 <- SSR / SST
# Adjusted R^2
Adj_R2 <- 1 - (SSE/(n - k - 1)) / (SST/(n - 1))
R2## [1] 0.9993238
## [1] 0.9991305
2. Interpretasi
Interpretasi R²
- R² menunjukkan proporsi variasi variabel Y yang dapat dijelaskan oleh model
- Nilai R² mendekati 1 → model semakin baik
Interpretasi Adjusted R²
- Adjusted R² sudah mempertimbangkan jumlah variabel dalam model
- Lebih akurat untuk membandingkan model dengan jumlah variabel berbeda
D. PERBANDINGAN DENGAN FUNGSI lm()
1. Model Dengan lm()
data <- data.frame(
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)
)
model_lm <- lm(Y ~ X1 + X2, data = data)
summary(model_lm)##
## Call:
## lm(formula = Y ~ X1 + X2, data = data)
##
## 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
2. Perbandingan Koefisien (β)
## [,1]
## 16.1360113
## X1 1.1698379
## X2 0.7744891
## (Intercept) X1 X2
## 16.1360113 1.1698379 0.7744891
3. Perbandingan Uji F
## [1] 5172.116
## value numdf dendf
## 5172.116 2.000 7.000
4. Perbandingan Uji t
## [,1]
## 5.688154
## X1 4.201468
## X2 13.900261
## (Intercept) X1 X2
## 5.688154 4.201468 13.900261
5. Perbandingan R²
## [1] 0.9993238
## [1] 0.9991305
## [1] 0.9993238
## [1] 0.9991305
6. Kesimpulan
- Semua hasil perhitungan manual (OLS matriks, uji t, uji F, R²) sama
dengan hasil dari fungsi
lm() - Hal ini membuktikan bahwa fungsi
lm()di R menggunakan metode Ordinary Least Squares (OLS) - Perhitungan manual memberikan pemahaman konsep, sedangkan
lm()mempermudah komputasi
E. Prediksi Nilai Ujian Mahasiswa
1. Perhitungan Prediksi
# Model regresi (pakai lm)
model <- lm(Y ~ X1 + X2, data = data)
# Prediksi untuk:
# X1 = 1 (jam belajar)
# X2 = 100 (kehadiran)
prediksi <- predict(model, newdata = data.frame(X1 = 1, X2 = 100))
prediksi## 1
## 94.75476
2. Interpretasi
Berdasarkan model regresi linier berganda yang telah diperoleh, nilai ujian mahasiswa dengan:
- Jam belajar = 1 jam/minggu
- Kehadiran = 100%
diperkirakan sebesar nilai yang dihasilkan dari prediksi di atas.
Hal ini menunjukkan bahwa meskipun jam belajar relatif rendah, tingkat kehadiran yang tinggi tetap memberikan kontribusi positif terhadap nilai ujian.
KESIMPULAN
Berdasarkan hasil analisis regresi linier berganda yang telah dilakukan, diperoleh beberapa kesimpulan sebagai berikut:
Estimasi model menggunakan metode Ordinary Least Squares (OLS) berbasis matriks menghasilkan koefisien regresi yang menunjukkan bahwa variabel jumlah jam belajar (X1) dan tingkat kehadiran (X2) berpengaruh positif terhadap nilai ujian mahasiswa (Y).
Hasil uji F menunjukkan bahwa model regresi signifikan secara simultan, yang berarti variabel X1 dan X2 secara bersama-sama berpengaruh terhadap nilai ujian.
Hasil uji t menunjukkan bahwa masing-masing variabel independen (X1 dan X2) berpengaruh secara parsial terhadap variabel dependen (Y), sehingga keduanya merupakan faktor penting dalam model.
Nilai koefisien determinasi (R²) yang tinggi menunjukkan bahwa model mampu menjelaskan sebagian besar variasi nilai ujian, sedangkan Adjusted R² mengonfirmasi bahwa model tidak mengalami overfitting.
Hasil perhitungan manual (OLS, uji t, uji F, dan R²) konsisten dengan hasil yang diperoleh menggunakan fungsi
lm()di R, sehingga validitas perhitungan dapat dipastikan.
Secara keseluruhan, model regresi yang dibangun dapat digunakan dengan baik untuk menjelaskan hubungan antara jam belajar, kehadiran, dan nilai ujian, serta dapat dimanfaatkan untuk keperluan prediksi.