# no.1
X1 <- c(2, 3, 4, 5, 6, 5, 3, 7, 6, 8)
X2 <- c(60, 65, 70, 75, 80, 72, 68, 85, 83, 90)
Y  <- c(65, 70, 75, 80, 85, 78, 72, 90, 88, 95)

n <- length(Y)

#matrix desain
X<- cbind(1, X1, X2)
X
##         X1 X2
##  [1,] 1  2 60
##  [2,] 1  3 65
##  [3,] 1  4 70
##  [4,] 1  5 75
##  [5,] 1  6 80
##  [6,] 1  5 72
##  [7,] 1  3 68
##  [8,] 1  7 85
##  [9,] 1  6 83
## [10,] 1  8 90
#perhitungan manual
XtX <- t(X) %*% X
XtX_inv <- solve(XtX)
XtY <- t(X) %*% Y
beta_manual <- XtX_inv %*% XtY #(X'X)^-1 X'Y

#prediksi dan residual
y_hat <- X %*% beta_manual
y_hat
##           [,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
residuals <- Y - y_hat
residuals
##              [,1]
##  [1,]  0.05496829
##  [2,]  0.01268499
##  [3,] -0.02959831
##  [4,] -0.07188161
##  [5,] -0.11416490
##  [6,]  0.25158562
##  [7,] -0.31078224
##  [8,] -0.15644820
##  [9,]  0.56236786
## [10,] -0.19873150

Interpretasi

Model regresi linear berganda yang diperoleh menunjukkan bahwa variabel X1 dan X2 secara bersama-sama berpengaruh terhadap variabel Y. Berdasarkan hasil perhitungan, nilai prediksi Y topi yang dihasilkan model sangat mendekati nilai aktual Y, yang terlihat dari selisih (residual) yang relatif kecil pada setiap pengamatan. Residual yang diperoleh juga menyebar secara acak dengan nilai positif dan negatif serta mendekati nol, sehingga menunjukkan bahwa model tidak bias dan memiliki tingkat kesalahan yang rendah. Selain itu, pola data mengindikasikan bahwa peningkatan nilai X1 dan X2 cenderung diikuti oleh peningkatan nilai Y, sehingga hubungan yang terbentuk bersifat positif. Dengan demikian, dapat disimpulkan bahwa model regresi yang dibangun sudah cukup baik dan layak digunakan untuk memprediksi nilai Y berdasarkan variabel X1 dan X2.

# NO.2
#UJI SIMULTAN/ UJI F
n <- length(Y)
#hitung SST, SSR, SSE
mean_y <- mean(Y)

SST <- sum((Y - mean_y)^2) 
SST
## [1] 831.6
SSR <- sum((y_hat - mean_y)^2) 
SSR
## [1] 831.0376
SSE <- sum((Y - y_hat)^2) 
SSE
## [1] 0.5623679
#derajat kebebasan
df_reg <- ncol(X) - 1
df_reg
## [1] 2
df_err <- n - ncol(X)
df_err
## [1] 7
df_tot <- n - 1
df_tot
## [1] 9
#mean squares
MSR <- SSR/df_reg
MSR
## [1] 415.5188
MSE <- SSE/df_err
MSE
## [1] 0.08033827
#F-Statistic
f_value <- MSR/MSE
f_value
## [1] 5172.116
p_value_f <- pf(f_value, df_reg, df_err, lower.tail = FALSE)
p_value_f
## [1] 8.042129e-12
# UJI T
model <- lm(Y ~ X1 + X2)
model
## 
## Call:
## lm(formula = Y ~ X1 + X2)
## 
## Coefficients:
## (Intercept)           X1           X2  
##     16.1360       1.1698       0.7745
summary_model <-  summary(model)
summary_model
## 
## Call:
## lm(formula = Y ~ X1 + X2)
## 
## 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

Interpretasi

secara simultan, variabel X1 dan X2 berpengaruh signifikan terhadap Y. dibuktikan dengan nilai F-hitung = 5172.116 dan p-value yang sangat kecil (< 0.05). ecara parsial, X1 dan X2 juga signifikan dan berpengaruh positif terhadap Y. Dengan demikian, model regresi layak digunakan.

# NO.3
# R2
R2 <- SSR / SST
R2
## [1] 0.9993238
# menghitung Adjusted R square
n <- length(Y)
k <- 2
Adj_R2 <- 1 - ((SSE/(n - k - 1)) / (SST/(n - 1)))
Adj_R2
## [1] 0.9991305

Interpretasi

Nilai koefisien determinasi R2 = 0.9993238 menunjukkan bahwa sekitar 99,93% variasi pada variabel Y dalam model, sedangkan sisanya hanya sekitar 0,07% dipengaruhi oleh faktor lain di luar model. Sementara itu, nilai Adjusted R2 = 0.9991305 yang juga sangat tinggi menunjukkan bahwa setelah disesuaikan dengan jumlah variabel, model tetap memiliki kemampuan penjelasan yang sangat baik. Dengan demikian, dapat disimpulkan bahwa model regresi memiliki tingkat kecocokan yang sangat kuat terhadap data.

# NO.4
model1 <- lm(Y ~ X1 + X2)
summary_model2 <-  summary(model1)

Interpretasi

Model regresi yang terbentuk yang berarti setiap kenaikan 1 satuan X1 akan meningkatkan Y sebesar 1.1698 dan setiap kenaikan 1 satuan X2 akan meningkatkan Y sebesar 0,7745, dengan asumsi variabel lain konstan. Hasil uji parsial menunjukkan bahwa X1 (p-value 0,004028) dan X2 (p-value 2,36×10⁻⁶) berpengaruh signifikan terhadapY.Secara keseluruhan, model juga signifikan (p-value F sangat kecil), dengan nilai R2 yang menunjukkan kemampuan model menjelaskan variasi Y sangat tinggi.

# NO.5
#definisi variabel
# Y = nilai ujian
# X1 = jam belajar
# X2 = kehadiran

model5 <- lm(Y ~ X1 + X2)

# lihat model
summary(model5)
## 
## Call:
## lm(formula = Y ~ X1 + X2)
## 
## 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
# prediksi untuk X1 = 1 jam, X2 = 100%
data_baru <- data.frame(X1 = 1, X2 = 100)
prediksi <- predict(model, newdata = data_baru)
prediksi
##        1 
## 94.75476

Interpretasi

odel regresi menunjukkan bahwa nilai ujian Y dipengaruhi secara signifikan oleh jam belajar X1 dan kehadiran X2. Koefisien positif pada X1 (1.1698) dan X2 (0.7745) berarti semakin banyak jam belajar dan semakin tinggi kehadiran, maka nilai ujian akan meningkat.Berdasarkan hasil prediksi, jika seseorang belajar selama 1 jam dan memiliki kehadiran 100%, maka nilai ujian yang diperkirakan adalah sekitar 94,75. Hal ini menunjukkan bahwa kehadiran memiliki pengaruh yang cukup besar dalam meningkatkan nilai, bahkan ketika jam belajar relatif sedikit.