# Menginput Data
data_uas <- data.frame(
Siswa = 1:10,
IQ = c(110, 120, 115, 130, 110, 120, 120, 125, 110, 120),
Kehadiran = c(60, 70, 75, 80, 80, 90, 95, 95, 100, 100),
Nilai_UAS = c(65, 70, 75, 75, 80, 80, 85, 95, 90, 98)
)Data ini berasal dari PPT pertemuan 4 Mata Kuliah Pengantar Model Linier. Diberikan data tentang IQ dan tingkat kehadiran sepuluh siswa di kelas yang diperkirakan mempengaruhi nilai UAS
Sebelum dilakukan analisis regresi linier berganda, dilakukan eksplorasi data untuk memahami karakteristik dan distribusi dari variabel yang digunakan. Variabel dalam penelitian ini terdiri dari satu variabel dependen (\(Y\)) yaitu Nilai UAS, serta dua variabel independen yaitu Tingkat Kehadiran (\(X_1\)) dan Skor IQ (\(X_2\)).
## [1] "--- Tampilan Data ---"
## Siswa IQ Kehadiran Nilai_UAS
## 1 1 110 60 65
## 2 2 120 70 70
## 3 3 115 75 75
## 4 4 130 80 75
## 5 5 110 80 80
## 6 6 120 90 80
## 7 7 120 95 85
## 8 8 125 95 95
## 9 9 110 100 90
## 10 10 120 100 98
## 'data.frame': 10 obs. of 4 variables:
## $ Siswa : int 1 2 3 4 5 6 7 8 9 10
## $ IQ : num 110 120 115 130 110 120 120 125 110 120
## $ Kehadiran: num 60 70 75 80 80 90 95 95 100 100
## $ Nilai_UAS: num 65 70 75 75 80 80 85 95 90 98
Fungsi str() (Structure) digunakan untuk
melihat gambaran teknis dari objek data yang sedang dianalisis. Hal ini
sangat penting dalam analisis regresi linier berganda karena metode
matriks \(\hat{\beta} = (X^T X)^{-1} X^T
Y\) mensyaratkan seluruh variabel (\(X\) dan \(Y\)) bertipe data numerik.
Berdasarkan hasil eksekusi fungsi str(data_uas),
diperoleh informasi sebagai berikut:
data.frame dengan total \(n =
10\) observasi dan \(4\)
variabel.num), sehingga valid untuk digunakan
dalam perhitungan perkalian matriks.## Siswa IQ Kehadiran Nilai_UAS
## Min. : 1.00 Min. :110.0 Min. : 60.00 Min. :65.00
## 1st Qu.: 3.25 1st Qu.:111.2 1st Qu.: 76.25 1st Qu.:75.00
## Median : 5.50 Median :120.0 Median : 85.00 Median :80.00
## Mean : 5.50 Mean :118.0 Mean : 84.50 Mean :81.30
## 3rd Qu.: 7.75 3rd Qu.:120.0 3rd Qu.: 95.00 3rd Qu.:88.75
## Max. :10.00 Max. :130.0 Max. :100.00 Max. :98.00
Berdasarkan hasil fungsi summary(), diperoleh ringkasan
statistik deskriptif sebagai berikut:
Y <- as.matrix(data_uas$Nilai_UAS) # Variabel Dependen (Y)
X1 <- data_uas$Kehadiran # Variabel Independen 1 (X1)
X2 <- data_uas$IQ # Variabel Independen 2 (X2)
# Susun matriks desain (tambahkan kolom 1 untuk intercept)
X <- cbind(1, X1, X2)
n <- nrow(X) # jumlah observasi
k <- ncol(X) - 1 # jumlah variabel bebas
# Estimasi Koefisien: b = (X'X)^-1 %*% X'Y
XtX <- t(X) %*% X
XtY <- t(X) %*% Y
b <- solve(XtX) %*% XtY
# Menampilkan Hasil Manual
print("--- Hasil Estimasi Parameter (Manual) ---")## [1] "--- Hasil Estimasi Parameter (Manual) ---"
## [,1]
## 23.0544545
## X1 0.7372330
## X2 -0.0343275
model_asli <- lm(Nilai_UAS ~ Kehadiran + IQ, data = data_uas)
print("--- Summary Model (Fungsi lm) ---")## [1] "--- Summary Model (Fungsi lm) ---"
##
## Call:
## lm(formula = Nilai_UAS ~ Kehadiran + IQ, data = data_uas)
##
## 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
## Kehadiran 0.73723 0.10918 6.752 0.000264 ***
## IQ -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 perhitungan manual menggunakan metode matriks \(\hat{\beta} = (X^T X)^{-1} X^T Y\) dan
validasi melalui fungsi lm() di R, diperoleh nilai estimasi
parameter sebagai berikut:
Persamaan regresi linier berganda yang terbentuk dapat dituliskan sebagai berikut: \[Y = \beta_0 + \beta_1 X_1 + \beta_2 X_2 + \epsilon\]
Dengan memasukkan nilai estimasi parameter, maka modelnya menjadi:
\[\hat{Y} = 23,05445 + 0,73723 X_1 +
-0,03433 X_2\] Keterangan Variabel:
* \(Y\) : Nilai UAS (Variabel
Dependen)
* \(X_1\) : Tingkat Kehadiran (%)
(Variabel Independen 1)
* \(X_2\) : Skor IQ (Variabel
Independen 2)
Interpretasi Model:
* Konstanta (\(\beta_0 =
23,05445\)):
Nilai intercept sebesar \(-27.243\)
menunjukkan estimasi nilai UAS jika tingkat kehadiran (\(X_1\)) dan skor IQ (\(X_2\)) bernilai nol. Secara matematis,
nilai ini berfungsi sebagai titik awal model dalam ruang dimensi
data.
* Koefisien Kehadiran (\(\beta_1 =
0,73723\)):
Variabel tingkat kehadiran memiliki hubungan positif terhadap nilai UAS.
Setiap kenaikan 1% tingkat kehadiran, maka nilai UAS diprediksi akan
meningkat sebesar 0.648 poin, dengan asumsi variabel IQ (\(X_2\)) bernilai tetap (konstan).
* Koefisien IQ (\(\beta_2 =
-0,03433\)):
Variabel skor IQ juga memiliki hubungan positif terhadap nilai UAS.
Setiap kenaikan 1 poin IQ, maka nilai UAS diprediksi akan meningkat
sebesar 0.460 poin, dengan asumsi tingkat kehadiran (\(X_1\)) bernilai tetap.
Uji-F digunakan untuk mengetahui apakah variabel Kehadiran (\(X_1\)) dan IQ (\(X_2\)) secara bersama-sama (simultan) berpengaruh signifikan terhadap Nilai UAS (\(Y\)).
Digunakan taraf nyata \(\alpha = 0,05\) (5%).
# mencari nilai prediksi dan residual
Y_pred <- X %*% b
resid <- Y - Y_pred
# mencari nilai SST, SSR, SSE
SST <- sum((Y - mean(Y))^2) # Total
SSR <- sum((Y_pred - mean(Y))^2) # Regresi
SSE <- sum(resid^2) # Error
# Melakukan Uji F
MSR <- SSR / k
MSE <- SSE / (n - k - 1)
F_value <- MSR / MSE
p_value_F <- pf(F_value, k, n-k-1, lower.tail = FALSE)
print(F_value)## [1] 23.82303
## [1] 0.0007522929
Keputusan diambil berdasarkan perbandingan p-value dengan
\(\alpha\):
* Jika p-value < \(\alpha\), maka Tolak \(H_0\).
* Jika p-value \(\geq\) \(\alpha\), maka Gagal Tolak \(H_0\).
Karena nilai p-value (\(0,0007522929\)) jauh lebih kecil daripada \(\alpha\) (\(0,05\)), maka keputusan yang diambil adalah Tolak \(H_0\).
Dengan tingkat signifikansi 5%, dapat disimpulkan bahwa secara simultan (bersama-sama), variabel Tingkat Kehadiran (\(X_1\)) dan Skor IQ (\(X_2\)) memiliki pengaruh yang signifikan terhadap Nilai UAS (\(Y\)).
Uji-t digunakan untuk menguji apakah masing-masing variabel independen secara individu memiliki pengaruh yang signifikan terhadap variabel dependen (Nilai UAS).
a. Variabel Tingkat Kehadiran (\(X_1\)):
* \(H_0: \beta_1 = 0\) (Secara parsial,
Tingkat Kehadiran tidak berpengaruh signifikan terhadap Nilai
UAS).
* \(H_1: \beta_1 \neq 0\) (Secara
parsial, Tingkat Kehadiran berpengaruh signifikan terhadap Nilai
UAS).
b. Variabel Skor IQ (\(X_2\)):
* \(H_0: \beta_2 = 0\) (Secara parsial,
Skor IQ tidak berpengaruh signifikan terhadap Nilai UAS).
* \(H_1: \beta_2 \neq 0\) (Secara
parsial, Skor IQ berpengaruh signifikan terhadap Nilai UAS).
Digunakan taraf nyata \(\alpha = 0,05\) (5%).
# Varian error
sigma2 <- SSE / (n - k - 1)
# Kovarians koefisien
var_b <- sigma2 * solve(XtX)
se_b <- sqrt(diag(var_b))
# t-value dan p-value untuk tiap koefisien
t_value <- b / se_b
p_value_t <- 2 * pt(-abs(t_value), df = n-k-1)
# Gabungkan hasil
uji_t <- data.frame(
Koefisien = as.vector(b),
Std_Error = se_b,
t_value = as.vector(t_value),
p_value = as.vector(p_value_t)
)
uji_t## Koefisien Std_Error t_value p_value
## 23.0544545 25.5716101 0.9015644 0.3972467061
## X1 0.7372330 0.1091797 6.7524718 0.0002644133
## X2 -0.0343275 0.2205125 -0.1556715 0.8806860631
Keputusan diambil berdasarkan perbandingan p-value dengan
\(\alpha = 0,05\):
* Jika p-value < \(0,05\),
maka Tolak \(H_0\).
* Jika p-value \(\geq\) \(0,05\), maka Gagal Tolak \(H_0\).
a. Analisis Variabel Kehadiran (\(X_1\)):
Diperoleh nilai \(p\text{-value}\)
sebesar \(0,000264\). Karena \(0,000264 < 0,05\), maka tolak \(H_0\). Artinya Tingkat Kehadiran
berpengaruh signifikan terhadap Nilai UAS
b. Analisis Variabel IQ (\(X_2\)):
Diperoleh nilai \(p\text{-value}\)
sebesar \(0,880686\). Karena \(0,880686 > 0,05\), maka gagal tolak
\(H_0\) . Artinya Skor IQ tidak
berpengaruh signifikan terhadap Nilai UAS
Berdasarkan hasil pengujian di atas, dapat disimpulkan bahwa pada tingkat signifikansi 5%, hanya variabel Kehadiran (\(X_1\)) yang memiliki pengaruh signifikan secara parsial terhadap Nilai UAS (\(Y\)). Sementara itu, variabel Skor IQ (\(X_2\)) dinyatakan tidak berpengaruh signifikan secara individu dalam model regresi ini.
Koefisien determinasi merupakan suatu nilai yang memperlihatkan seberapa besar variabel independent mempengaruhi variabel dependen.
## [1] 0.8719029
## [1] 0.8353038
Berdasarkan perhitungan manual menggunakan komponen Sum of Squares, diperoleh nilai koefisien determinasi sebagai berikut:
Interpretasi Hasil: Dalam model regresi berganda ini, nilai yang digunakan sebagai acuan utama adalah Adjusted \(R^2\) sebesar \(0,8353\). Hal ini menunjukkan bahwa sebesar \(83,53\%\) variasi dari Nilai UAS (\(Y\)) dapat dijelaskan secara simultan oleh variabel Tingkat Kehadiran (\(X_1\)) dan Skor IQ (\(X_2\)).Sementara itu, sisanya sebesar \(16,47\%\) (\(100\% - 83,53\%\)) dijelaskan oleh faktor-faktor lain di luar model yang digunakan.
## 1 2 3 4 5 6 7
## 1.4875890 -0.5414662 0.6007312 -2.5705215 1.7429286 -5.2861266 -3.9722917
## 8 9 10
## 6.1993458 -3.0017318 5.3415432
# Uji Linieritas
# Membuat plot residual vs fitted
plot(fitted(model_asli), residuals(model_asli),
xlab = "Fitted values",
ylab = "Residuals",
main = "Residual vs Fitted Plot")
abline(0,0)
Berdasarkan grafik Residual vs Fitted Plot yang
dihasilkan
* Sumbu X (Fitted values): Merupakan nilai prediksi
Nilai UAS (\(\hat{Y}\)) dari
model.
* Sumbu Y (Residuals): Merupakan selisih antara nilai
aktual dengan nilai prediksi (\(e = Y -
\hat{Y}\)).
* Garis Horizontal (\(y=0\)): Merupakan garis referensi
ideal di mana galat seharusnya berada.
kesimpulan: Sebaran yang acak di sekitar garis nol
menunjukkan bahwa hubungan antara variabel independen (\(X_1, X_2\)) dengan variabel dependen (\(Y\)) adalah linier.
Uji normalitas dilakukan untuk memastikan bahwa residual (galat) dari model regresi berdistribusi normal, sehingga pengujian hipotesis (Uji-F dan Uji-t) bersifat valid.
Berdasarkan grafik Normal Q-Q Plot yang dihasilkan, dapat
dilakukan analisis visual sebagai berikut:
Kesimpulan Visual: Karena pola sebaran titik residu mengikuti garis diagonal, maka secara visual dapat diindikasikan bahwa galat model regresi ini berdistribusi normal.
a. Hipotesis Uji:
* \(H_0: \text{Galat berdistribusi
normal}\)
* \(H_1: \text{Galat tidak berdistribusi
normal}\)
b. Tingkat Signifikansi: Digunakan taraf nyata \(\alpha = 0,05\).
c. Statistik Uji:
##
## Shapiro-Wilk normality test
##
## data: galat_model_asli
## W = 0.95125, p-value = 0.6833
d. Kriteria Keputusan: Kriteria keputusan adalah Tolak \(H_0\) jika \(p\text{-value} < 0,05\).
e. Interpretasi
Karena nilai \(p\text{-value} \ (0,6833) >
0,05\), maka keputusan yang diambil adalah Gagal Tolak
\(H_0\).
f. Kesimpulan Akhir: Dengan tingkat signifikansi \(5\%\), terdapat bukti yang cukup untuk menyatakan bahwa galat berdistribusi normal. Dengan demikian, asumsi normalitas dalam model regresi ini telah terpenuhi.
Uji autokorelasi dilakukan untuk menguji apakah dalam model regresi linier terdapat korelasi antara galat pada periode \(t\) dengan galat pada periode \(t-1\) (sebelumnya). Model regresi yang baik adalah model yang bebas dari masalah autokorelasi.
b. Tingkat Signifikansi:
Digunakan taraf nyata \(\alpha =
0,05\).
c. Statistik Uji:
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
##
## Durbin-Watson test
##
## data: model_asli
## DW = 2.594, p-value = 0.3974
## alternative hypothesis: true autocorrelation is not 0
d. Kriteria Keputusan:
Kriteria keputusan yang digunakan adalah Tolak \(H_0\) jika nilai \(p\text{-value} < \alpha \ (0,05)\).
Sebaliknya, Gagal Tolak \(H_0\) jika nilai \(p\text{-value} > \alpha \ (0,05)\).
e. Interpretasi:
Berdasarkan hasil pengujian Durbin-Watson pada model regresi
berganda, diperoleh nilai statistik \(DW =
2,594\) dan nilai \(p\text{-value} =
0,3974\). Karena nilai \(p\text{-value}
\ (0,3974) > 0,05\), maka keputusan statistik yang diambil
adalah Gagal Tolak \(H_0\). Hal ini menunjukkan bahwa
tidak terdapat bukti yang cukup untuk menyatakan adanya autokorelasi
pada galat.
f. Kesimpulan
Dengan tingkat signifikansi \(5\%\),
dapat disimpulkan bahwa tidak terdapat masalah
autokorelasi dalam model regresi ini. Dengan demikian, asumsi
independensi galat telah terpenuhi, sehingga model ini
valid untuk digunakan dalam analisis inferensia lebih lanjut.
Uji heteroskedastisitas bertujuan untuk menguji apakah dalam model regresi terjadi ketidaksamaan varians dari residual satu pengamatan ke pengamatan lain. Model yang baik adalah yang tidak mengandung heteroskedastisitas (homoskedastisitas) agar estimator tetap bersifat BLUE.”
b. Tingkat Signifikansi:
Digunakan taraf nyata \(\alpha =
0,05\).
c. Statistik Uji:
##
## studentized Breusch-Pagan test
##
## data: model_asli
## BP = 5.905, df = 2, p-value = 0.05221
d. Kriteria Keputusan: Kriteria keputusan yang digunakan adalah Tolak \(H_0\) jika nilai \(p\text{-value} < \alpha \ (0,05)\). Sebaliknya, Gagal Tolak \(H_0\) jika nilai \(p\text{-value} > \alpha \ (0,05)\).
e. Interpretasi: Berdasarkan hasil uji studentized Breusch-Pagan, diperoleh nilai statistik \(BP = 5,905\) dengan derajat bebas (\(df\)) sebesar 2 dan nilai \(p\text{-value} = 0,05221\). Karena nilai \(p\text{-value} \ (0,05221) > 0,05\), maka keputusan statistik yang diambil adalah Gagal Tolak \(H_0\). Meskipun nilai tersebut mendekati ambang batas signifikansi, secara formal syarat untuk menolak hipotesis nol belum terpenuhi.
f. Kesimpulan Akhir: Dengan tingkat signisikansi \(5\%\), dapat disimpulkan bahwa tidak terdapat masalah heteroskedastisitas dalam model regresi ini. Dengan demikian, asumsi homoskedastisitas (ragam galat konstan) telah terpenuhi, sehingga model tetap bersifat Best Linear Unbiased Estimator (BLUE).
## Loading required package: carData
## Kehadiran IQ
## 1.055571 1.055571
## Kehadiran IQ
## 0.947355 0.947355
. Kriteria Keputusan:
model regresi yang bebas dari multikolinearitas adalah model yang
memiliki nilai Tolerance \(\geq
0,10\) atau nilai \(VIF \leq
10\). Sebaliknya, apabila nilai Tolerance \(< 0,10\) atau nilai \(VIF > 10\), maka dinyatakan terjadi
masalah multikolinearitas.
Interpretasi: Berdasarkan hasil output R pada model regresi ini, diperoleh nilai sebagai berikut:
Karena nilai \(VIF\) berada di bawah 10 dan nilai Tolerance berada di atas 0,10, maka dapat dinyatakan bahwa tidak terdapat korelasi yang tinggi antar variabel independen dalam model ini.