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:
lm)# Memuat library yang diperlukan
library(readxl)
library(car)
library(lmtest)
library(tseries)
library(ggplot2)
# Mengimpor data
data_siswa <- read_excel("C:/Users/Razan/Downloads/data_siswa.xlsx", skip = 1)
# Mengganti nama kolom
colnames(data_siswa) <- c("Siswa", "X2_IQ", "X1_Kehadiran", "Y_UAS")
# Menampilkan data awal
head(data_siswa)
## # A tibble: 6 × 4
## Siswa X2_IQ X1_Kehadiran Y_UAS
## <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
# Struktur data
str(data_siswa)
## tibble [10 × 4] (S3: tbl_df/tbl/data.frame)
## $ Siswa : num [1:10] 1 2 3 4 5 6 7 8 9 10
## $ X2_IQ : num [1:10] 110 120 115 130 110 120 120 125 110 120
## $ X1_Kehadiran: num [1:10] 60 70 75 80 80 90 95 95 100 100
## $ Y_UAS : num [1:10] 65 70 75 75 80 80 85 95 90 98
# Statistik deskriptif
summary(data_siswa)
## Siswa X2_IQ X1_Kehadiran Y_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
Untuk menghitung koefisien regresi secara manual digunakan rumus:
\[ \beta = (X^TX)^{-1}X^TY \]
# Membentuk matriks X
X <- cbind(1, data_siswa$X1_Kehadiran, data_siswa$X2_IQ)
colnames(X) <- c("Intercept", "X1_Kehadiran", "X2_IQ")
# Membentuk matriks Y
Y <- as.matrix(data_siswa$Y_UAS)
# Menghitung beta dugaan
beta_manual <- solve(t(X) %*% X) %*% t(X) %*% Y
beta_manual
## [,1]
## Intercept 23.0544545
## X1_Kehadiran 0.7372330
## X2_IQ -0.0343275
# Model regresi
model_regresi <- lm(Y_UAS ~ X1_Kehadiran + X2_IQ, data = data_siswa)
summary(model_regresi)
##
## Call:
## lm(formula = Y_UAS ~ X1_Kehadiran + X2_IQ, data = data_siswa)
##
## 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
## X1_Kehadiran 0.73723 0.10918 6.752 0.000264 ***
## X2_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
Dari hasil di atas dapat dibandingkan bahwa nilai koefisien regresi
yang diperoleh secara manual memiliki hasil yang sama dengan perhitungan
menggunakan fungsi lm().
ringkasan_model <- summary(model_regresi)
f_stat <- ringkasan_model$fstatistic
p_value_f <- pf(f_stat[1], f_stat[2], f_stat[3], lower.tail = FALSE)
f_stat
## value numdf dendf
## 23.82303 2.00000 7.00000
p_value_f
## value
## 0.0007522929
Interpretasi
Berdasarkan hasil uji, nilai F-statistic adalah 23,82 dengan p-value sebesar 0,0007523. Karena p-value tersebut jauh lebih kecil dari taraf signifikansi 0,05 (\(0,00075 < 0,05\)), maka model regresi ini signifikan secara statistik. Artinya, variabel Kehadiran (X1) dan IQ (X2) secara bersama-sama (simultan) memiliki pengaruh yang nyata terhadap nilai UAS (Y) siswa.
t_test_results <- ringkasan_model$coefficients
t_test_results
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 23.0544545 25.5716101 0.9015644 0.3972467061
## X1_Kehadiran 0.7372330 0.1091797 6.7524718 0.0002644133
## X2_IQ -0.0343275 0.2205125 -0.1556715 0.8806860631
Interpretasi
Secara individu, variabel Kehadiran (X1) memiliki pengaruh yang signifikan terhadap nilai UAS karena p-value-nya sebesar 0,000264 (< 0,05). Sebaliknya, variabel IQ (X2) memiliki p-value sebesar 0,880686 (> 0,05), yang berarti variabel IQ tidak berpengaruh signifikan terhadap nilai UAS dalam model ini. Hal ini menunjukkan bahwa peningkatan kehadiran lebih efektif dalam meningkatkan nilai UAS dibandingkan faktor IQ pada data yang diuji.
r_squared <- ringkasan_model$r.squared
adj_r_squared <- ringkasan_model$adj.r.squared
r_squared
## [1] 0.8719029
adj_r_squared
## [1] 0.8353038
Interpretasi
Nilai Multiple R-squared adalah 0,8719, yang berarti sebesar 87,19% variasi nilai UAS dapat dijelaskan oleh variabel Kehadiran dan IQ. Sisanya sebesar 12,81% dipengaruhi oleh variabel lain yang tidak dimasukkan ke dalam model ini. Nilai Adjusted R-squared sebesar 0,8353 juga menunjukkan bahwa model ini memiliki tingkat ketepatan atau daya prediksi yang sangat tinggi dan kuat.
shapiro.test(residuals(model_regresi))
##
## Shapiro-Wilk normality test
##
## data: residuals(model_regresi)
## W = 0.95125, p-value = 0.6833
vif(model_regresi)
## X1_Kehadiran X2_IQ
## 1.055571 1.055571
bptest(model_regresi)
##
## studentized Breusch-Pagan test
##
## data: model_regresi
## BP = 5.905, df = 2, p-value = 0.05221
dwtest(model_regresi)
##
## Durbin-Watson test
##
## data: model_regresi
## DW = 2.594, p-value = 0.8013
## alternative hypothesis: true autocorrelation is greater than 0
Interpretasi
Model ini telah memenuhi seluruh kriteria asumsi klasik regresi:
Dengan terpenuhinya semua asumsi tersebut, maka model regresi dianggap valid dan tidak bias.