Penelitian ini bertujuan untuk menganalisis pengaruh jam belajar (X₁) dan kehadiran (X₂) terhadap nilai ujian (Y) menggunakan pendekatan regresi linear berganda.

Persiapan Data

library(readxl)
data <- read_excel("D:/Youtube/Regresi/Linear Regression/RegresiData1.xlsx")

head(data)
## # A tibble: 6 × 4
##      No `Jam Belajar` Kehadiran `Nilai Ujian`
##   <dbl>         <dbl>     <dbl>         <dbl>
## 1     1             6        85            78
## 2     2            14        72            80
## 3     3            10        90            85
## 4     4             8        76            74
## 5     5            15        88            90
## 6     6            12        70            77
# Ambil Variabel
Y <- data$`Nilai Ujian`
X1 <- data$`Jam Belajar`
X2 <- data$Kehadiran

Model Regresi

model <- lm(Y~X1+X2)
summary(model)
## 
## Call:
## lm(formula = Y ~ X1 + X2)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -2.97081 -0.65893 -0.04188  0.54750  2.80429 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 27.40681    1.96337   13.96   <2e-16 ***
## X1           1.24310    0.04073   30.52   <2e-16 ***
## X2           0.50459    0.02363   21.36   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.236 on 47 degrees of freedom
## Multiple R-squared:  0.9702, Adjusted R-squared:  0.9689 
## F-statistic: 764.1 on 2 and 47 DF,  p-value: < 2.2e-16

Interpretasi

  1. Diperoleh Model sebagai berikut: \[ \hat Y = 27.40681 + 1.24310X_1 +0.50459X_2 \]

  2. Berdasarkan Output Estimasi dari X1 bernilai positif dan memiliki nilai Pr(>|t|) < 0.05 sehingga X1 (Jam Belajar) berpengaruh positif dan signifikan terhadap Y (Nilai Ujian)

  3. Berdasarkan Output Estimasi dari X2 bernilai positif dan memiliki nilai Pr(>|t|) < 0.05 sehingga X2 (Kehadiran) berpengaruh positif dan signifikan terhadap Y (Nilai Ujian)

  4. Model memiliki nilai Adjusted R-Squared : 0.9689 yang berarti model dapat menjelaskan 96.89 % variansi Variabel Nilai Ujian dengan menggunakan variabel Jam Belajar dan Kehadiran.

  5. Model memiliki p-value 2.2e-16 pada bagian F-Statistik yang dimana berada < 0.05 yang berarti variabel X secara bersama sama berpengaruh signifikan terhadap variabel Y

Uji Asumsi Klasik

1. Uji Normalitas

library(nortest)

shapiro.test(model$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  model$residuals
## W = 0.98407, p-value = 0.7308

Diperoleh nilai p-value sebesar 0.7308 > 0.05 yang berarti residual berdistribusi normal

2. Uji Multikolinearitas

library(car)
## Loading required package: carData
vif(model)
##       X1       X2 
## 1.009468 1.009468

Diperoleh nilai VIF sebesar 1.0094 yang dimana lebih kecil daripada 10 berarti tidak ada masalah multikolinearitas

3. Uji Autokorelasi

library(lmtest)
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
dwtest(model)
## 
##  Durbin-Watson test
## 
## data:  model
## DW = 1.9748, p-value = 0.5321
## alternative hypothesis: true autocorrelation is greater than 0

Diperoleh nilai p-value 0.5321 > 0.05 sehingga tidak terjadi masalah autokorelasi.

4. Uji Heterokedastisitas

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

Diperoleh nilai p-value 0.6711 > 0.05 sehingga tidak terjadi masalah heterokedastisitas.

Evaluasi Model

res <- model$residuals
# MSE 
MSE <- mean(res^2) 
# RMSE 
RMSE <- sqrt(MSE) 

MSE 
## [1] 1.435649
RMSE
## [1] 1.198186
  1. MSE sebesar 1,435649 berarti rata-rata kuadrat selisih antara nilai aktual dan prediksi adalah sekitar 1,44

  2. RMSE sebesar 1,198186 Artinya Secara rata-rata, prediksi model meleset sekitar ±1,20 satuan dari nilai sebenarnya.