knitr::include_graphics("C:/Users/ACER/Pictures/Screenshots/Screenshot 2026-04-01 074612.png")
X1 = c(2,3,4,5,6,5,3,7,6,8) # Variabell jumlah jam belajar
X2 = c(60,65,70,75,80,72,68,85,83,90)# Variabel tingkat keadiran
Y = c(65,70,75,80,85,78,72,90,88,95) # Nilai ujian
Data ini digunakan untuk melihat apakah terdapat pengaruh antara 2 variabel independen, yaitu :
X1 untuk jumlah jam belajar (jam/minggu), dan
X2 untuk tingkat kehadiran
Dilakukannya analisis terhadap dua variabel independen tersebut dengan tujuan untuk melihat apakah terdapat pengaruh terhadap variabel Y yang menyatakan nilai ujian dari 10 siswa tersebut.
Jawab :
Model OLS
\[Y=β0+β1X1+β2X2+ε\]
# Bentuk matriks
X <- cbind(1, X1, X2)
Y <- matrix(Y, ncol = 1) # Mengubah matriks Y menjadi matriks kolom
# OLS dengan langkah manual
beta <- solve(t(X) %*% X) %*% t(X) %*% Y
beta
## [,1]
## 16.1360113
## X1 1.1698379
## X2 0.7744891
Pada soal pertama ini diminta untuk melakukan estimasi terhadap data yang diberikan dengan metode Ordinary Least Square (OLS).
Variabel X merupakan kode untuk membentuk matriks design. selanjutnya variabel Y adalah kode untuk mengubah bentuk matriks Y menjadi matriks kolom.
setelah melakukan estimasi terhadap variabel data dengan metode Ordinary Least Square (OLS), diperoleh hasil sebagai berikut :
Intercept sebesar 16,14 (Approksimasi). Artinya nilai Y akan bernilai 16,14 ketika nilai variabel X = 0
Nilai \({\beta}_0\) sebesar 1,17 (Approksimasi), artinya apabila waktu lama jam belajar bertambah 1 jam/minggu, maka nilai ujian naik sekitar 1,17 poin, dengan nilai dari X2 konstan.
Nilai \({\beta}_2\) sebesar 0,78 (Approksimasi). Artinya, apabila jumlah kehadiran bertamabah 1 persen, maka nilai ujian naik sebesar 0,78 poin, dengan nilai X1 konstan.
Jawab :
Untuk menghitung atau melaukan uji F (Simultan) dan uji T (Parsial) secara manual, terdapat langkah - langkah seperti berikut :
# Matriks
X1 = c(2,3,4,5,6,5,3,7,6,8) # Variabell jumlah jam belajar
X2 = c(60,65,70,75,80,72,68,85,83,90)# Variabel tingkat keadiran
Y = c(65,70,75,80,85,78,72,90,88,95) # Nilai ujian
X <- cbind(1, X1, X2)
Y <- matrix(Y, ncol = 1)
n <- length(Y)
k <- 2
# Menentuka beta
beta <- solve(t(X)%*%X) %*% t(X) %*% Y
beta
## [,1]
## 16.1360113
## X1 1.1698379
## X2 0.7744891
# Menghitung Y duga
Y_hat <- X %*% beta
# Menghitung residual
residual <- Y - Y_hat
#Menghitung SSE
SSE <- sum(residual^2)
# Menghitung SST
(SST <- sum((Y - mean(Y))^2))
## [1] 831.6
# Menghitung SSR
(SSR <- SST - SSE)
## [1] 831.0376
\[F=\ \frac{SSR/k}{SSE/\left(n-k-1\right)}\]
Dengan hipotesis sebagai berikut :
(tidak terdapat pengaruh) \[H_0∶\ \beta_1\ =\beta_2= 0\]
(Terdapat pengaruh)
\[H_1∶minimal\ ada\ satu\ \beta_i\ \ne0\]
(SST <- sum((Y - mean(Y))^2))
## [1] 831.6
(SSR <- SST - SSE)
## [1] 831.0376
F_hit <- (SSR/k) / (SSE/(n-k-1))
F_hit
## [1] 5172.116
Melihat dan membandingkan dengan nilai P-value
pf(5172.116, df1=2, df2=7, lower.tail=FALSE)
## [1] 8.042128e-12
Setelah dilakukan uji F (simultan), diperoleh hasil, yaitu :
Nilai F hitung sebesar 5172,116
Nilai p-value sebesar \(8,04\ \times{10}^{-12}\) (sangat kecil)
Nilai F hitung > P-value, sehingga \(H_0\) ditolak. Artinya variabel X1 dan X2 secara bersama - sama berpengaruh signifikan terhadap nilai ujian siswa.
\[\sigma^2=\ \frac{SSE}{\left(n-k\right)}\]
Dalam uji T terdapat hipotesis untuk menentukan apakah variabel independen pengaruh signfikan terhadap variabel dependen, sebagai berikut :
\[H_0∶\ \beta_1\ =0\]
\[H_1∶\ \beta_1\ \neq0\]
\[H_0∶\ \beta_2\ =0\]
\[H_1∶\ \beta_2\ \neq0\]
# Variansi Error
(sigma2 <- SSE/(n-k-1))
## [1] 0.08033827
# Varians koefisien
(var_beta <- sigma2 * solve(t(X)%*%X))
## X1 X2
## 8.0472918 0.76212839 -0.15740223
## X1 0.7621284 0.07752633 -0.01526748
## X2 -0.1574022 -0.01526748 0.00310445
# Standar error
SE <- sqrt(diag(var_beta))
SE
## X1 X2
## 2.83677490 0.27843551 0.05571759
t_hit <- beta / SE
t_hit
## [,1]
## 5.688154
## X1 4.201468
## X2 13.900261
p_value_t <- 2 * pt(abs(t_hit), df=n-k-1, lower.tail=FALSE)
p_value_t
## [,1]
## 7.444177e-04
## X1 4.028204e-03
## X2 2.357834e-06
Berdasarkan hasil tersebut dapat disimpulkan bahwa :
Nilai intercept sebesar 5,69 (Approksimasi), dengan nilai P-value sebesar 0,0007,44 di mana nilai P-value sangat kecil bahkan kurang dari 0,01, sehingga intercept berbeda dari nol secara statistik.
Nilai \(\beta_1\) sebesar 4,20 dengan nilai P-value sebesar 0,0040 di mana nilai P-value sangat kecil dan bahkan lebih kecil dari 0,01, sehingga variabel X1 (lama jam belajar/minggu) berpengaruh signifikan terhadap nilai ujian.
Nilai \(\beta_2\) sebesar 13,90 dan nilai P-value sebesar 0,0000024 (Approksimasi). nilai p-value sangat kecil < 0,01 sehingga dapat disimpulkan bahwa variabel X2 (kehadiran) berpengaruh signifikan terhadap nilai ujian siswa.
Jawab :
(Y_duga <- X %*% beta)
## [,1]
## [1,] 64.94503
## [2,] 69.98732
## [3,] 75.02960
## [4,] 80.07188
## [5,] 85.11416
## [6,] 77.74841
## [7,] 72.31078
## [8,] 90.15645
## [9,] 87.43763
## [10,] 95.19873
R2 <- SSR / SST
R2
## [1] 0.9993238
Setelah dilakukan perhitungan nilai \(R^2\) nya adalah 0,9993238 artinya 90% variasi nilai ujian dapat dijelaskan oleh variabel X1 dan X2 dan 10% selainnya dijelaskan oleh vaktor lain diluar model.
n <- length(Y)
k <- 2
Adj_R2 <- 1 - ((SSE/(n-k-1)) / (SST/(n-1)))
Adj_R2
## [1] 0.9991305
Berdasarkan nilai Adjusted \(R^2\) yang diperoleh sebesar 0,9991305. nilai ini merupakan nilai koreksi dari \(R^2\), sehingga nilai bisa berubah nai atau turun ketika variabel dianggap berpengaruh.
Nilai dari Adjusted ketepatannya dianggap lebih baik dari nilai \(R^2\).
Jawab :
library(lmtest)
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
Data_ujian <- data.frame(
X1 = c(2,3,4,5,6,5,3,7,6,8), # Variabell jumlah jam belajar
X2 = c(60,65,70,75,80,72,68,85,83,90),# Variabel tingkat keadiran
Y = c(65,70,75,80,85,78,72,90,88,95) # Nilai ujian
)
no_13 <- lm(Y ~ X1 +X2, data = Data_ujian)
summary(no_13)
##
## Call:
## lm(formula = Y ~ X1 + X2, data = Data_ujian)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.31078 -0.14588 -0.05074 0.04440 0.56237
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 16.13601 2.83677 5.688 0.000744 ***
## X1 1.16984 0.27844 4.201 0.004028 **
## X2 0.77449 0.05572 13.900 2.36e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.2834 on 7 degrees of freedom
## Multiple R-squared: 0.9993, Adjusted R-squared: 0.9991
## F-statistic: 5172 on 2 and 7 DF, p-value: 8.042e-12
Perbandingan yang terlihat diantaranya adalah :
Untuk metode manual ketelitian angka dibelakang nol yang lebih teliti dan apabila menggunakan fungsi lm angka di belakang nol sudah dilakukan pembulatan (Approksimasi).
Apabila menggunkan metode manual, maka hanya akan diperoleh nilai spesifik yang diingnkan, namun jika menggunakan metode dari fungsi lm, maka output yang dihasilkan akan berupa ringkasan beberapa nilai lainnya.
sedangkan nilai output yang dihasilkan bernilai sama
Jawab :
# Model yang sudah di buat
model <- lm(Y ~ X1 + X2)
# Data untuk prediksi
new_data <- data.frame(X1 = 1, X2 = 100)
# Prediksi
predict(model, newdata = new_data)
## 1
## 94.75476
Berdasarkan hasil yang diperoleh, nilai tersebut dengan X1 bertambah 1 jam dan X2 100 persen kehadiran, maka nilai \(\hat{{Y}}\) yang diperoleh adalah sebesar 94.75476. Dengan demikian, tingkat kehadiran sangat berpengaruh terhadap nilai ujian siswa.