Diberikan data tentang IQ dan tingkat kehadiran sepuluh siswa dikelas yang diperkirakan mempengaruhi nilai UAS. Tentukan:
IQ <- c(110,120,115,130,110,120,120,125,110,120) #X1
Kehadiran <- c(60,70,75,80,80,90,95,95,100,100) #X2
Nilai <- c(65,70,75,75,80,80,85,95,90,98) #Y(Respon)
data <- data.frame (IQ, Kehadiran, Nilai)
data
## IQ Kehadiran Nilai
## 1 110 60 65
## 2 120 70 70
## 3 115 75 75
## 4 130 80 75
## 5 110 80 80
## 6 120 90 80
## 7 120 95 85
## 8 125 95 95
## 9 110 100 90
## 10 120 100 98
Regresi linear berganda merupakan metode statistik untuk melihat pengaruh lebih dari satu variabel bebas (X) terhadap satu variabel terikat (Y). Pada soal ini yang merupakan variabel bebas adalah IQ (X1) dan Kehadiran (X2). Sedangkan yang merupakan varibel respon/terikat adalah Nilai UAS siswa (Y). Lalu kita akan melihat apakah kehadiran dan IQ berpengaruh terhadap nilai UAS siswa dengan menggunakan cara manual dan menggunakan function lm.
##1. Menghitung beta duga secara manual
X <- cbind(1, Kehadiran, IQ) #1 untuk intercept
print(X)
## Kehadiran IQ
## [1,] 1 60 110
## [2,] 1 70 120
## [3,] 1 75 115
## [4,] 1 80 130
## [5,] 1 80 110
## [6,] 1 90 120
## [7,] 1 95 120
## [8,] 1 95 125
## [9,] 1 100 110
## [10,] 1 100 120
Y <- matrix(Nilai, ncol = 1)
print(Y)
## [,1]
## [1,] 65
## [2,] 70
## [3,] 75
## [4,] 75
## [5,] 80
## [6,] 80
## [7,] 85
## [8,] 95
## [9,] 90
## [10,] 98
#Transpose X
Xt <- t(X)
print(Xt)
## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
## 1 1 1 1 1 1 1 1 1 1
## Kehadiran 60 70 75 80 80 90 95 95 100 100
## IQ 110 120 115 130 110 120 120 125 110 120
#Menghitung X^tranapose.X
XtX <- Xt %*% X
print(XtX)
## Kehadiran IQ
## 10 845 1180
## Kehadiran 845 73075 99900
## IQ 1180 99900 139650
#Inverse (X^t.X)^-1
XtX_inv <- solve(XtX)
print(XtX_inv)
## Kehadiran IQ
## 34.62208967 -0.0188185492 -0.2790840870
## Kehadiran -0.01881855 0.0006311333 -0.0002924764
## IQ -0.27908409 -0.0002924764 0.0025745622
#Menghitung X^t.Y
XtY <- Xt %*% Y
print(XtY)
## [,1]
## 813
## Kehadiran 69925
## IQ 96060
#Menghitung Beta
beta <- XtX_inv %*% XtY
print(beta)
## [,1]
## 23.0544545
## Kehadiran 0.7372330
## IQ -0.0343275
#Persamaan Regresi
cat("Persamaan:\n")
## Persamaan:
cat("Y =", beta[1], "+", beta[2],"*Kehadiran +", beta [3], "*IQ")
## Y = 23.05445 + 0.737233 *Kehadiran + -0.0343275 *IQ
##2. Menggunakan function (lm)
model <- lm(Nilai ~ Kehadiran + IQ, data = data)
summary(model)
##
## Call:
## lm(formula = Nilai ~ Kehadiran + IQ, 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 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 analisis linear dengan cara manual dan menggunakan function lm() diperoleh hasil model nya Y = 23.0544545 + 0.7372330(Kehadiran) + -0.0343275(IQ). Model ini menunjukan bahwa variabel kehadiran dan IQ secara bersama-sama digunakan untuk menjelaskan variasi nilai UAS siswa.
Koefisien regresi untuk variabel kehadiran sebesar 0.7372330 (bernilai positif), yang berarti bahwa setiap peningkatan kehadiran sebesar 1% akan meningkatkan nilai UAS sebesar 0.7372330 point dengan asumsi variabel IQ tetap.
Sementara untuk koefisien regresi variabel IQ sebesar -0.03433 (bernilai negatif) menunjukkan arah hubungan negatif, artinya setiap peningkatan IQ sebesar 1 point justru menurunkan nilai UAS sebesar -0.03433 point dengan asumsi kehadiran tetap.
Jadi dimana letak perbedan kedua cara tersebut? Tidak terdapat perbedaan hasil antara perhitungan koefisien regresi secara manual dan menggunakan function lm() di R. Hal ini karena keduanya menggunakan metode estimasi yang sama yaitu metode kuadrat terekcil (Ordinary Least Squares).Perbedaan hanya terletak pada cara perhitungan, dimana metode manual dilakukan secara bertahap menggunakan operasi matriks, sedangkan function lm() menghitung secara otomatis dan lebih efisien.
summary(model)$fstatistic
## value numdf dendf
## 23.82303 2.00000 7.00000
Berdasarkan uji simultan (uji F), diperoleh nilai F-statistic sebesar 23.82303 dengan p-value sebesar 0.0007523 yang lebih kecil dari 0.05.Hal ini menunjukkan bahwa secara bersama-sama variabel kehadiran dan IQ berpengaruh signifikan terhadap nilai UAS.
summary (model)$coefficients
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 23.0544545 25.5716101 0.9015644 0.3972467061
## Kehadiran 0.7372330 0.1091797 6.7524718 0.0002644133
## IQ -0.0343275 0.2205125 -0.1556715 0.8806860631
Hasil Uji-t menunjukkan bahwa variabel kehadiran memiliki p-value sebesar 0.0002644133 yang lebih kecil dari 0.05 sehingga dapat disimpulkan bahwa kehadiran berpengaruh signifikan terhadap nilai UAS.
Sementara itu, hasil uji-t variabel IQ sebesar 0.8806860631 yang lebih besar dari 0.05 sehingga dapat disimpulkan bahwa IQ tidak berpengaruh signifikan terhadap nilai UAS.
summary(model)$r.squared
## [1] 0.8719029
summary(model)$adj.r.squared
## [1] 0.8353038
Nilai koefisien determinansi R-Squared sebesar 0.8719029 yang menunjukkan bahwa sebesar 87.19% vasriasi nilai UAS dapat dijelaskan oleh variabel kehadiran dan IQ, sedangkan sisanya 12.81% dipengaruhi oleh faktor lain diluar model.
Nilai Adjusted R-Square sebesar 0.8353038 menunjukkan bahwa sekitar 83.53% variasi nilai UAS siswa dapat dijelaskan oleh variabel kehadiran dan IQ dalam model regresi yang digunakan. Sementara itu, sisanya sebesar 16.47% dijelaskan oleh faktor lain seperti motivasi belajar, metode pengajaran, lingkungan, dan faktor lain lainnya yang tidak dimasukkan kedalam model.
Penggunaan Adjusted R-Square memberikan gambaran yang lebih akurat dibandingkan R-Square biasa, karena telah mempertimbangkan jumlah variabel independen dalam model. Dengn nilai sebesar 0.8353038 dapat dikatakan bahwa model regresi yang dibangun memiliki kemampuan yang cukup kuat dalam menjelaskan variai nilai UAS siswa.
Uji asumsi adalah serangkaian pengujian untuk memastikan bahwa model regrsi yang dibuat valid dan layak digunakan. Jika asumsi tidak terpenuhi maka akan menyebabkan hasil regresi bisa bias dan interpretasi yang salah. Berikut jenis uji asumsi yang akan dilakukan pengujian:
#a. Uji Normalitas (Shspiro-Wilk)
shapiro.test(residuals(model))
##
## Shapiro-Wilk normality test
##
## data: residuals(model)
## W = 0.95125, p-value = 0.6833
#b. Uji Multikolinearitas (VIF)
library(car)
## Loading required package: carData
vif(model)
## Kehadiran IQ
## 1.055571 1.055571
#c. Uji Heteroskedastisitas
library(lmtest)
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
bptest(model)
##
## studentized Breusch-Pagan test
##
## data: model
## BP = 5.905, df = 2, p-value = 0.05221
#d. Uji Autokorelasi (Durbin-Watson)
dwtest(model)
##
## Durbin-Watson test
##
## data: model
## DW = 2.594, p-value = 0.8013
## alternative hypothesis: true autocorrelation is greater than 0
#Plot Diagnostik (Visual)
par(mfrow = c(2,2))
plot (model)
Beradasarkan hasil uji asumsi klasik yang telah dilakukan, diperoleh bahwa pada uji normalitas menggunakan metode Shapiro-Wilk menghasilkan nilai p-value sebesar 0.6833. Karena nilai tersebut lebih besar dari 0.05 maka dapat disimpulkan bahwa residual berdistribusi normal, sehingga asumsi normalitas terpenuhi.
Selanjutnya, pada uji multikolinearitas yang dilihat melalui nilai Variance Inflation Factor (VIF), diperoleh nilai VIF untuk variabel tingkat kehadiran dan IQ masing-masing sebesar 1.05557 nilai tersebut lebih kecil dari 10, sehingga dapat disimpulkan bahwa tidak terjadi multikolinearitas antar variabel independen dalam model.
Kemudian, pada uji heteroskedastisitas menggunakan uji Breusch-Pagan diperoleh nilai p-value sebesar 0.05221 nilai tersebut lebih besar dari 0.05 maka dapat disimpulkan bahwa tidak terdapat masalah heteroskedastisitas yang artinya varians dari residual bersifat konstan (homoskedastisitas).
Terakhir, berdasarkan hasil uji autokorelasi menggunakan metode Durbin-Watson (DW) diperoleh nilai statistik sebesar 2.594 dengan nilai p-value sebesar 0.8013 karena nilai p-value lebih besar dari 0.05 maka H0 ditolak. Hal ini menunjukkan bahwa tidak terdapat autokorelasi pada residual model. Selain itu nilai Durbin-Watson yang mendekati 2 juga mengindikasikan bahwa tidak terjadi autokorelasi, baik positif maupun negatif dalm model regresi. Dengan demikian, dapat disimpulkan bahwa asumsi tidak adanya autokorelasi telah terpenuhi, sehingga model regresi layak digunakan untuk analisis lebih lanjut.