Pendahuluan

Pada tugas ini diberikan data terhadap IQ dan tingkat kehadiran 10 siswa. Dataset ini berisi informasi IQ, Tingkat Kehadiran, dan Nilai UAS untuk tiap tiap siswa.

Pada tugas ini diberi beberapa pertanyaan yaitu:

Buatlah persamaan regresi linier berganda! (hitung beta dugaan secara manual di R dan bandingkan dengan fungsi lm)

  1. Lakukan Uji-F! (interpretasikan hasilnya)
  2. Lakukan Uji-t! (interpretasikan hasilnya)
  3. Berapa koefisien determinasinya? Interpretasikan hasil ini
  4. Lakukan uji asumsi dan jelaskan hasilnya

Penyelesaian

Import Library dan Data

# Memuat library
library(readxl)
library(car)
library(lmtest)
library(nortest)

# Mengambil data
data <- read_excel("data siswa.xlsx")
# Mengubah nama kolom
colnames(data) <- c("Siswa", "IQ_X2", "Kehadiran_X1", "UAS_Y")
# Menampilkan data siswa 
print(data)
## # A tibble: 10 × 4
##    Siswa IQ_X2 Kehadiran_X1 UAS_Y
##    <dbl> <dbl>        <dbl> <dbl>
##  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

Perhitungan Regresi Linier Berganda Secara Manual

Dalam analisis regresi ini, koefisien model tidak dihitung menggunakan rumus tunggal sederhana, melainkan melalui operasi matriks untuk mengakomodasi beberapa variabel bebas sekaligus. Rumus yang digunakan untuk mencari vektor parameter \(\beta\) adalah:

\[ \beta = (X^T X)^{-1} X^T Y \] Prosedur ini melibatkan transformasi matriks data (transpose), perkalian antar matriks, hingga pencarian invers matriks untuk mendapatkan estimasi titik yang paling akurat bagi model regresi.

# Mmembuat Matrix X dan Y
Y <- as.matrix(data$UAS_Y)
X <- as.matrix(cbind(1,data$Kehadiran_X1,data$IQ_X2))
colnames(X) <- c("Intercept", "Kehadiran_X1", "IQ_X2")
# Transpose X
Xt <- t(X)
# Perkalian XtX
XtX <- Xt %*% X
# Invers XtX
XtX_inv <- solve(XtX)
# Hitung beta
beta <- XtX_inv %*% Xt %*% Y
beta
##                    [,1]
## Intercept    23.0544545
## Kehadiran_X1  0.7372330
## IQ_X2        -0.0343275

Regresi Linier Berganda dengan Fungsi lm()

#dengan fungsi lm
model <- lm(UAS_Y ~ Kehadiran_X1 + IQ_X2, data = data)
summary(model)
## 
## Call:
## lm(formula = UAS_Y ~ Kehadiran_X1 + IQ_X2, data = data)
## 
## 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_X1  0.73723    0.10918   6.752 0.000264 ***
## IQ_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

Perbandingan antara perhitungan manual berbasis matriks dan penggunaan fungsi lm() menunjukkan nilai koefisien yang persis sama, baik untuk nilai intersep maupun koefisien regresi variabel Kehadiran (\(X_1\)) dan IQ (\(X_2\)). Hal ini mengonfirmasi bahwa langkah-langkah komputasi matriks yang dilakukan mulai dari tahap transpose, perkalian matriks, hingga inversi telah dijalankan dengan tepat. Hasil ini memberikan keyakinan bahwa model regresi yang terbentuk telah stabil dan siap untuk diinterpretasikan lebih lanjut.

Uji Hipotesis

Uji-F

#uji f 
f_stat <- summary(model)$fstatistic
f_stat
##    value    numdf    dendf 
## 23.82303  2.00000  7.00000
pf(f_stat[1], f_stat[2], f_stat[3], lower.tail = FALSE)
##        value 
## 0.0007522929

Interpretasi

Hasil pengujian menunjukkan nilai F-statistik sebesar 23,823 dengan nilai signifikansi (p-value) sebesar 0,00075. Karena nilai p-value tersebut jauh lebih kecil dari taraf signifikansi \(\alpha = 0,05\) (atau \(0,75\% < 5\%\)), maka keputusan uji adalah Tolak \(H_0\). Hal ini memberikan bukti empiris yang kuat untuk menyimpulkan bahwa variabel tingkat kehadiran (\(X_1\)) dan tingkat IQ (\(X_2\)) secara bersama-sama (simultan) memiliki pengaruh yang signifikan terhadap variabel nilai UAS siswa (\(Y\)). Dengan kata lain, model regresi yang dibentuk layak digunakan (fit) untuk memprediksi nilai UAS berdasarkan kedua variabel independen tersebut.

Uji-t

#uji t parsial
summary(model)$coefficients
##                Estimate Std. Error    t value     Pr(>|t|)
## (Intercept)  23.0544545 25.5716101  0.9015644 0.3972467061
## Kehadiran_X1  0.7372330  0.1091797  6.7524718 0.0002644133
## IQ_X2        -0.0343275  0.2205125 -0.1556715 0.8806860631

Interpretasi

Berdasarkan hasil uji-t secara parsial, variabel Kehadiran (\(X_1\)) memiliki nilai \(p = 0,00026\) (\(p < 0,05\)), yang berarti tingkat kehadiran berpengaruh positif dan signifikan terhadap Nilai UAS. Di sisi lain, variabel IQ (\(X_2\)) memiliki nilai \(p = 0,88068\) (\(p > 0,05\)), sehingga secara statistik IQ tidak berpengaruh signifikan terhadap Nilai UAS dalam model ini. Hal ini menunjukkan bahwa frekuensi kehadiran siswa di kelas merupakan faktor penentu yang jauh lebih nyata dalam memengaruhi hasil ujian dibandingkan dengan tingkat IQ mereka.

Koefisien Determinasi

#koefisien determinasi r2
summary(model)$r.squared
## [1] 0.8719029
summary(model)$adj.r.squared
## [1] 0.8353038

Interpretasi

Berdasarkan hasil analisis, nilai Koefisien Determinasi (\(R^2\)) yang diperoleh adalah sebesar 0,8719 atau 87,19%. Hal ini menunjukkan bahwa variabel Kehadiran (\(X_1\)) dan IQ (\(X_2\)) secara bersama-sama mampu menjelaskan variasi pada Nilai UAS siswa sebesar 87,19%, sedangkan sisanya sebesar 12,81% dipengaruhi oleh faktor-faktor lain di luar model penelitian ini. Selain itu, nilai Adjusted \(R^2\) sebesar 0,8353 mengonfirmasi bahwa model ini tetap memiliki daya prediksi yang sangat kuat dan stabil meskipun telah mempertimbangkan jumlah variabel independen yang digunakan

Uji Asumsi

Uji Normalitas

shapiro.test(residuals(model))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(model)
## W = 0.95125, p-value = 0.6833

Uji Multikolinearitas

vif(model)
## Kehadiran_X1        IQ_X2 
##     1.055571     1.055571

Uji Heterokedastisitas

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

Uji Autokorelasi

dwtest(model)
## 
##  Durbin-Watson test
## 
## data:  model
## DW = 2.594, p-value = 0.8013
## alternative hypothesis: true autocorrelation is greater than 0

Interpretasi

  • Uji Normalitas (Shapiro-Wilk): Diperoleh p-value sebesar 0,6833 (\(p > 0,05\)). Hal ini menunjukkan bahwa sisaan (residual) model berdistribusi normal, sehingga asumsi normalitas terpenuhi.

  • Uji Multikolinearitas (VIF): Nilai VIF untuk kedua variabel adalah 1,055 (VIF < 10). Hal ini mengindikasikan bahwa tidak terdapat hubungan linier yang kuat antar variabel independen, sehingga model bebas dari masalah multikolinearitas.

  • Uji Heteroskedastisitas (Breusch-Pagan): Diperoleh p-value sebesar 0,05221 (\(p > 0,05\)). Karena nilai ini sedikit di atas ambang batas 5%, maka dapat disimpulkan bahwa varians sisaan bersifat homogen (homoskedastisitas terpenuhi).

  • Uji Autokorelasi (Durbin-Watson): Diperoleh p-value sebesar 0,8013 (\(p > 0,05\)). Hal ini menunjukkan bahwa tidak terdapat masalah autokorelasi pada sisaan model regresi tersebut.

Berdasarkan seluruh asumsi klasik (normalitas, multikolinearitas, heteroskedastisitas, dan autokorelasi) telah terpenuhi, maka model ini dinyatakan valid, tidak bias (BLUE), dan memiliki keandalan yang tinggi untuk digunakan dalam memprediksi capaian akademik siswa berdasarkan tingkat kedisiplinan kehadiran mereka di kelas.