#Input Data
library(readxl)
## Warning: package 'readxl' was built under R version 4.2.3
data <- read_xlsx("C:/Users/Delita Nur Hasanah/Documents/BISMILLAH SEMESTER 4/ANREG/tukel anreg berganda.xlsx")
y<-data$Y
x0<-rep(1,30)
x1<-data$X1
x2<-data$X2
x3<-data$X3
x4<-data$X4
x5<-data$X5
x6<-data$X6
data<-data.frame(cbind(y,x0,x1,x2,x3,x4,x5,x6))
head(data)
## y x0 x1 x2 x3 x4 x5 x6
## 1 43 1 51 30 39 61 92 45
## 2 63 1 64 51 54 63 73 47
## 3 71 1 70 68 69 76 86 48
## 4 61 1 63 45 47 54 84 35
## 5 81 1 78 56 66 71 83 47
## 6 43 1 55 49 44 54 49 34
#Inisialisasi
p <- 6;p
## [1] 6
n <- 30;n
## [1] 30
Berdasarkan data yang sudah diinput, maka dapat diketahui bahwa terdapat jumlah amatan sebanyak 30 di setiap peubahnya. Data diatas memiliki tujuh peubah, yaitu y, x1, x2, x3, x4, x5, dan x6. Jumlah parameter yang ingin diduga adalah sebanyak 6. Peubah x0 yang memiliki isi angka 1 semua pun ditambahkan untuk melengkapi parameter yang ingin diduga menjadi tujuh, dengan detail sebagai berikut: beta0, beta1, beta2, beta3, beta4, beta5, beta6.
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.2.3
library(plotly)
## Warning: package 'plotly' was built under R version 4.2.3
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
y.bar <- mean(y)
interactive.plot <- ggplot(data) +
geom_point(aes(x = x1,y = y),color="coral",shape=8, size=1) +
geom_smooth(aes(x = x1, y = y), method = "lm", se = FALSE, color = "cornsilk3") +
ggtitle("y vs x1") +
ylab("y") +
xlab("x1") +
theme_classic() +
theme(plot.title = element_text(hjust = 0.5))
ggplotly(interactive.plot)
## `geom_smooth()` using formula = 'y ~ x'
y.bar <- mean(y)
interactive.plot <- ggplot(data) +
geom_point(aes(x = x2,y = y),color="chocolate",shape=8, size=1) +
geom_smooth(aes(x = x2, y = y), method = "lm", se = FALSE, color = "cornsilk3") +
ggtitle("y vs x2") +
ylab("y") +
xlab("x2") +
theme_classic() +
theme(plot.title = element_text(hjust = 0.5))
ggplotly(interactive.plot)
## `geom_smooth()` using formula = 'y ~ x'
y.bar <- mean(y)
interactive.plot <- ggplot(data) +
geom_point(aes(x = x3,y = y),color="darkgoldenrod3",shape=8, size=1) +
geom_smooth(aes(x = x3, y = y), method = "lm", se = FALSE, color = "cornsilk3") +
ggtitle("y vs x3") +
ylab("y") +
xlab("x3") +
theme_classic() +
theme(plot.title = element_text(hjust = 0.5))
ggplotly(interactive.plot)
## `geom_smooth()` using formula = 'y ~ x'
y.bar <- mean(y)
interactive.plot <- ggplot(data) +
geom_point(aes(x = x4,y = y),color="deepskyblue4",shape=8, size=1) +
geom_smooth(aes(x = x4, y = y), method = "lm", se = FALSE, color = "cornsilk3") +
ggtitle("y vs x4") +
ylab("y") +
xlab("x4") +
theme_classic() +
theme(plot.title = element_text(hjust = 0.5))
ggplotly(interactive.plot)
## `geom_smooth()` using formula = 'y ~ x'
y.bar <- mean(y)
interactive.plot <- ggplot(data) +
geom_point(aes(x = x5,y = y),color="blueviolet",shape=8, size=1) +
geom_smooth(aes(x = x5, y = y), method = "lm", se = FALSE, color = "cornsilk3") +
ggtitle("y vs x5") +
ylab("y") +
xlab("x5") +
theme_classic() +
theme(plot.title = element_text(hjust = 0.5))
ggplotly(interactive.plot)
## `geom_smooth()` using formula = 'y ~ x'
y.bar <- mean(y)
interactive.plot <- ggplot(data) +
geom_point(aes(x = x6,y = y),color="chartreuse4",shape=8, size=1) +
geom_smooth(aes(x = x6, y = y), method = "lm", se = FALSE, color = "cornsilk3") +
ggtitle("y vs x6") +
ylab("y") +
xlab("x6") +
theme_classic() +
theme(plot.title = element_text(hjust = 0.5))
ggplotly(interactive.plot)
## `geom_smooth()` using formula = 'y ~ x'
#Penjelasan Grafik 1) y vs x1 Grafik ini terlihat linear positif dan memiliki korelasi yang kuat. Dibandingkan dengan grafik yang lain, grafik inilah yang memiliki korelasi yang paling kuat. 2) y vs x2 Grafik ini terlihat linear positif, tapi data amatannya cukup menyebar cukup jauh dari garis. Korelasi pada grafik ini terlihat tidak terlalu kuat. Terdapat pencilan pada grafik ini 3) y vs x3 Grafik ini terlihat linear positif dan memiliki korelasi yang cukup kuat. Amatan menyebar di sekitar garis. 4) y vs x4 Grafik ini terlihat linear positif dan memiliki korelasi yang lebih kuat dibanding grafik ketiga. 5) y vs x5 Korelasi pada grafik ini terlihat cukup lemah, data begitu menyebar menjauh dari sumbu pusat dan memiliki pencilan. Grafik ini lebih lemah jika dibandingkan dengan grafik yang kedua. 6) y vs x6 Grafik ini cukup mirip dengan grafik yang kelima, data begitu menyebar. # Pembentukan Model
y <- as.matrix(y)
X <- as.matrix(cbind(x0,x1,x2,x3,x4,x5,x6))
b <- solve(t(X)%*%X)%*%t(X)%*%y;round(b,4)
## [,1]
## x0 10.7871
## x1 0.6132
## x2 -0.0731
## x3 0.3203
## x4 0.0817
## x5 0.0384
## x6 -0.2171
b0<-b[1];b0
## [1] 10.78708
b1<-b[2];b1
## [1] 0.6131876
b2<-b[3];b2
## [1] -0.07305014
b3<-b[4];b3
## [1] 0.3203321
b4<-b[5];b4
## [1] 0.08173213
b5<-b[6];b5
## [1] 0.03838145
b6<-b[7];b6
## [1] -0.2170567
reg <- lm(y~x1+x2+x3+x4+x5+x6, data= data)
summary(reg)
##
## Call:
## lm(formula = y ~ x1 + x2 + x3 + x4 + x5 + x6, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -10.9418 -4.3555 0.3158 5.5425 11.5990
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 10.78708 11.58926 0.931 0.361634
## x1 0.61319 0.16098 3.809 0.000903 ***
## x2 -0.07305 0.13572 -0.538 0.595594
## x3 0.32033 0.16852 1.901 0.069925 .
## x4 0.08173 0.22148 0.369 0.715480
## x5 0.03838 0.14700 0.261 0.796334
## x6 -0.21706 0.17821 -1.218 0.235577
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 7.068 on 23 degrees of freedom
## Multiple R-squared: 0.7326, Adjusted R-squared: 0.6628
## F-statistic: 10.5 on 6 and 23 DF, p-value: 1.24e-05
#Interpretasi Berdasarkan perhitungan, didapat dugaan persamaan regresi linear berganda sebagai:
\[ \hat y = 10.78708 + 0.6131876x_1 -0.07305014x_2 + 0.3203321x_3 + 0.08173213x_4 + 0.03838145x_5 - 0.2170567x_6 \]
(anova_model <- anova(reg))
## Analysis of Variance Table
##
## Response: y
## Df Sum Sq Mean Sq F value Pr(>F)
## x1 1 2927.58 2927.58 58.6026 9.056e-08 ***
## x2 1 7.52 7.52 0.1505 0.7016
## x3 1 137.25 137.25 2.7473 0.1110
## x4 1 0.94 0.94 0.0189 0.8920
## x5 1 0.56 0.56 0.0113 0.9163
## x6 1 74.11 74.11 1.4835 0.2356
## Residuals 23 1149.00 49.96
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
dilakukan untuk mengetahui apakah ada perbedaan signifikan antara parameter beta1, beta2, beta3, beta3, beta4, beta5 dan beta6.
\[ H_0: b_1 = b_2 = b_3 = b_4 = b_5 = b_6\\ H_1: b_j \neq 0\: \text{untuk semua j, j = 1, 2, 3, 4, 5, 6} \] 1) Semua peubah penjelas tidak berpengaruh linier terhadap peubah respon 2) Minimal ada satu peubah penjelas yang berpengaruh linier terhadap peubah respon
y_duga <- b0+b1*x1+b2*x2+b3*x3+b4*x4+b5*x5+b6*x6
Y <- data.frame(y,y_duga);Y
## y y_duga
## 1 43 51.11030
## 2 63 61.35277
## 3 71 69.93944
## 4 61 61.22684
## 5 81 74.45380
## 6 43 53.94185
## 7 58 67.14841
## 8 71 70.09701
## 9 72 79.53099
## 10 67 59.19846
## 11 64 57.92572
## 12 67 55.40103
## 13 69 59.58168
## 14 68 70.21401
## 15 77 76.54933
## 16 81 84.54785
## 17 74 76.15013
## 18 65 61.39736
## 19 65 68.01656
## 20 50 55.62014
## 21 50 42.60324
## 22 64 63.81902
## 23 53 63.66400
## 24 40 44.62475
## 25 63 57.31710
## 26 66 67.84347
## 27 78 75.14036
## 28 48 56.04535
## 29 85 77.66053
## 30 82 76.87850
JKReg <- sum((y_duga-mean(y))^2);JKReg
## [1] 3147.966
KTReg <- JKReg/(p);KTReg
## [1] 524.6611
dbreg <- p;dbreg
## [1] 6
galat <- y-((b0)+(b1*x1)+(b2*x2)+(b3*x3)+(b4*x4)+(b5*x5)+(b6*x6)) #untuk menghitung galat tiap observasi dalam dataset
JKG <- sum(galat^2);JKG
## [1] 1149
KTG <- JKG/(n-p-1);KTG
## [1] 49.95654
dbg <- n-p-1;dbg
## [1] 23
JKT <- JKG + JKReg;JKT
## [1] 4296.967
dbt <- n-1;dbt
## [1] 29
Fhit <- KTReg/KTG;Fhit
## [1] 10.50235
p_value <- pf(Fhit, dbreg, dbg, lower.tail = F)
p_value
## [1] 1.240412e-05
SK <- c("Regresi", "Residual", "Total")
db <- c(dbreg, dbg, dbt)
JK <- c(JKReg, JKG, JKT)
KT <- c(KTReg, KTG, NA)
F_hitung <- c(Fhit, NA, NA)
P_value <- c(p_value, NA, NA)
TabelAnova <- data.frame(SK, db, JK, KT, F_hitung, P_value)
TabelAnova
## SK db JK KT F_hitung P_value
## 1 Regresi 6 3147.966 524.66106 10.50235 1.240412e-05
## 2 Residual 23 1149.000 49.95654 NA NA
## 3 Total 29 4296.967 NA NA NA
Dengan alpha = 0.05 P-value = 1.240412e-05 Karena P-value < 0.05, maka keputusannya adalah tolak H0
\[ H_0: b_1 = 0\\ H_1: b_1 \neq 0\\ H_0: b_2 = 0\\ H_1: b_2 \neq 0\\ H_0: b_3 = 0\\ H_1: b_3 \neq 0\\ H_0: b_4 = 0\\ H_1: b_4 \neq 0\\ H_0: b_5 = 0\\ H_1: b_5 \neq 0\\ H_0: b_6 = 0\\ H_1: b_6 \neq 0\\ \]
sigma_kuadrat <- (t(y)%*%y-t(b)%*%t(X)%*%y)/(n-p)
Res_se <- sqrt(sigma_kuadrat)
round(Res_se,3)
## [,1]
## [1,] 6.919
se_b <- sqrt(sigma_kuadrat[1]*solve(t(X)%*%X));se_b
## Warning in sqrt(sigma_kuadrat[1] * solve(t(X) %*% X)): NaNs produced
## x0 x1 x2 x3 x4 x5 x6
## x0 11.345246 NaN NaN NaN NaN NaN 0.1772470
## x1 NaN 0.157593617 NaN NaN NaN 0.004732221 0.1051586
## x2 NaN NaN 0.1328670 NaN 0.0470134 NaN NaN
## x3 NaN NaN NaN 0.16497213 NaN 0.068155161 NaN
## x4 NaN NaN 0.0470134 NaN 0.2168145 NaN NaN
## x5 NaN 0.004732221 NaN 0.06815516 NaN 0.143900455 NaN
## x6 0.177247 0.105158573 NaN NaN NaN NaN 0.1744573
# menghitung standar error untuk koefisien regresi dengan rumus: (input rumus)
#Standar error Langkah selanjutnya adalah mencari standar error terlebih dahulu, kemudian t-value agar dapat menghasilkan p-value untuk setiap koefisien regresi dalam model dengan cara berikut:
se_b0 <- se_b[1,1];round(se_b0,4)
## [1] 11.3452
se_b1 <- se_b[2,2];round(se_b1,4)
## [1] 0.1576
se_b2 <- se_b[3,3];round(se_b2,4)
## [1] 0.1329
se_b3 <- se_b[4,4];round(se_b3,4)
## [1] 0.165
se_b4 <- se_b[5,5];round(se_b4,4)
## [1] 0.2168
se_b5 <- se_b[6,6];round(se_b5,4)
## [1] 0.1439
se_b6 <- se_b[7,7];round(se_b6,4)
## [1] 0.1745
\[ t_0 = \hat b_j/se(\hat b_j) \]
t_b0 <- b0/se_b0;round(t_b0,2)
## [1] 0.95
t_b1 <- b1/se_b1;round(t_b1,2)
## [1] 3.89
t_b2 <- b2/se_b2;round(t_b2,2)
## [1] -0.55
t_b3 <- b3/se_b3;round(t_b3,2)
## [1] 1.94
t_b4 <- b4/se_b4;round(t_b4,2)
## [1] 0.38
t_b5 <- b5/se_b5;round(t_b5,2)
## [1] 0.27
t_b6 <- b6/se_b6;round(t_b6,2)
## [1] -1.24
2*pt(-abs(t_b0 ),df <- n-p)
## [1] 0.3511828
2*pt(-abs(t_b1 ),df <- n-p)
## [1] 0.0006937845
2*pt(-abs(t_b2 ),df <- n-p)
## [1] 0.5875377
2*pt(-abs(t_b3 ),df <- n-p)
## [1] 0.06399683
2*pt(-abs(t_b4 ),df <- n-p)
## [1] 0.70951
2*pt(-abs(t_b5 ),df <- n-p)
## [1] 0.7919614
2*pt(-abs(t_b6 ),df <- n-p)
## [1] 0.225447
\[ R^2 = [Cor(y, \hat y)]^2 \]
R_squared <- (cor(y,y_duga))^2;round(R_squared,4)
## [,1]
## [1,] 0.7326
#atau
R_squared <- 1-(JKG/JKT);round(R_squared,4)
## [1] 0.7326
\[ R_a^2 = 1 - ((n-1)/(n-k-1))(1-R^2) \]
R_squared_adj <- 1-((1-R_squared)*(n-1)/(n-p-1));round(R_squared_adj,4)
## [1] 0.6628
cor(data)
## Warning in cor(data): the standard deviation is zero
## y x0 x1 x2 x3 x4 x5 x6
## y 1.0000000 NA 0.8254176 0.4261169 0.6236782 0.5901390 0.1564392 0.1550863
## x0 NA 1 NA NA NA NA NA NA
## x1 0.8254176 NA 1.0000000 0.5582882 0.5967358 0.6691975 0.1877143 0.2245796
## x2 0.4261169 NA 0.5582882 1.0000000 0.4933310 0.4454779 0.1472331 0.3432934
## x3 0.6236782 NA 0.5967358 0.4933310 1.0000000 0.6403144 0.1159652 0.5316198
## x4 0.5901390 NA 0.6691975 0.4454779 0.6403144 1.0000000 0.3768830 0.5741862
## x5 0.1564392 NA 0.1877143 0.1472331 0.1159652 0.3768830 1.0000000 0.2833432
## x6 0.1550863 NA 0.2245796 0.3432934 0.5316198 0.5741862 0.2833432 1.0000000
Berdasarkan hasil analisis sebelumnya, ditemukan bahwa korelasi antara variabel independen \(x_1\), \(x_3\), dan \(x_4\) dengan variabel dependen \(y\) memiliki nilai yang lebih besar dari 0,5. Namun, untuk menentukan model regresi linier berganda yang optimal, diperlukan investigasi lebih lanjut terhadap kombinasi-kombinasi variabel penjelas lainnya.
Oleh karena itu, untuk memperoleh pemodelan yang terbaik dalam regresi linier berganda ini, perlu dilakukan pemeriksaan lebih lanjut terhadap berbagai kombinasi variabel independen lainnya. Tahap ini bertujuan untuk mengidentifikasi kombinasi variabel yang memberikan hasil prediksi yang optimal terhadap variabel dependen \(y\).
reg3 <- lm(y~x1+x3+x4, data= data)
summary(reg3)
##
## Call:
## lm(formula = y ~ x1 + x3 + x4, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -11.6282 -5.8107 0.5115 6.3946 10.3509
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 10.52260 8.30481 1.267 0.216
## x1 0.65349 0.13637 4.792 5.82e-05 ***
## x3 0.22069 0.14967 1.475 0.152
## x4 -0.02864 0.18245 -0.157 0.876
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 6.943 on 26 degrees of freedom
## Multiple R-squared: 0.7083, Adjusted R-squared: 0.6746
## F-statistic: 21.04 on 3 and 26 DF, p-value: 3.957e-07
reg4 <- lm(y~x2+x5+x6, data= data)
summary(reg4)
##
## Call:
## lm(formula = y ~ x2 + x5 + x6, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -21.0229 -5.0810 -0.6476 5.0387 22.7583
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 34.25069 17.97030 1.906 0.0678 .
## x2 0.41490 0.18716 2.217 0.0356 *
## x5 0.12260 0.22665 0.541 0.5932
## x6 -0.01931 0.22955 -0.084 0.9336
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 11.56 on 26 degrees of freedom
## Multiple R-squared: 0.1908, Adjusted R-squared: 0.0974
## F-statistic: 2.043 on 3 and 26 DF, p-value: 0.1324
reg5 <- lm(y~x1+x3+x6, data= data)
summary(reg5)
##
## Call:
## lm(formula = y ~ x1 + x3 + x6, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -12.217 -5.377 0.967 6.078 11.540
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 13.5777 7.5439 1.800 0.0835 .
## x1 0.6227 0.1181 5.271 1.65e-05 ***
## x3 0.3124 0.1542 2.026 0.0532 .
## x6 -0.1870 0.1449 -1.291 0.2082
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 6.734 on 26 degrees of freedom
## Multiple R-squared: 0.7256, Adjusted R-squared: 0.6939
## F-statistic: 22.92 on 3 and 26 DF, p-value: 1.807e-07
setelah mencari Adjusted R-squared dari masing masing kelompok variabel yang dicobakaan menggunakan syntax lm didapatkan hasil dari Adjusted R-squared, sebagai berikut
maka disimpulan bahwa model terbaik dari data tersebut adalah kombinasi dari variabel x1, x3, x6 dengan persamaan sebagai berikut:
\[ \hat y = 13.5777 +0.6227x_1 + 0.3124x_3 - 0.1870x_6 \]
#Interpretasi 1) nilai 13.5777adalah dugaan ketika rataan x1, x3, dan x6 bernilai 0. 2) dugaan rataan y akan meningkat sebesar 0.6227 ketika rataan x1 naik satu satuan, dengan asumsi peubah lainnya tetap konstan. 3) dugaan rataan y akan meningkat sebesar 0.3124 ketika rataan x3 naik satu satuan, dengan asumsi peubah lainnya tetap konstan. 4) dugaan rataan y akan menurun sebesar 0.1870 ketika rataan x6 naik satu satuan, dengan asumsi peubah lainnya tetap konstan.
Hal tersebut dapat dibuktikan menggunakan metode Ordinary Least Squares (OLS) Regression atau fungsi “olsrr” dengan menggunakan pendekatan yang melibatkan perbandingan beberapa model regresi yang berbeda, mulai dari satu variabel hingga enam variabel, serta kombinasi dari setiap jumlah variabel untuk menentukan model terbaik.
library(olsrr)
## Warning: package 'olsrr' was built under R version 4.2.3
##
## Attaching package: 'olsrr'
## The following object is masked from 'package:datasets':
##
## rivers
ols_step_best_subset(reg)
## Best Subsets Regression
## --------------------------------
## Model Index Predictors
## --------------------------------
## 1 x1
## 2 x1 x3
## 3 x1 x3 x6
## 4 x1 x2 x3 x6
## 5 x1 x2 x3 x4 x6
## 6 x1 x2 x3 x4 x5 x6
## --------------------------------
##
## Subsets Regression Summary
## -----------------------------------------------------------------------------------------------------------------------------------
## Adj. Pred
## Model R-Square R-Square R-Square C(p) AIC SBIC SBC MSEP FPE HSP APC
## -----------------------------------------------------------------------------------------------------------------------------------
## 1 0.6813 0.6699 0.6379 1.4115 205.7638 120.9874 209.9674 1467.4370 52.1669 1.8114 0.3642
## 2 0.7080 0.6864 0.6402 1.1148 205.1387 121.0938 210.7435 1396.1991 51.1153 1.7872 0.3569
## 3 0.7256 0.6939 0.642 1.6027 205.2758 122.1609 212.2818 1364.6223 51.3971 1.8140 0.3588
## 4 0.7293 0.6860 0.6211 3.2805 206.8634 124.4468 215.2706 1402.0751 54.2739 1.9384 0.3789
## 5 0.7318 0.6759 0.5995 5.0682 208.5886 126.8776 218.3970 1449.6936 57.6203 2.0877 0.4023
## 6 0.7326 0.6628 0.5471 7.0000 210.4998 129.4391 221.7094 1511.1095 61.6131 2.2708 0.4302
## -----------------------------------------------------------------------------------------------------------------------------------
## AIC: Akaike Information Criteria
## SBIC: Sawa's Bayesian Information Criteria
## SBC: Schwarz Bayesian Criteria
## MSEP: Estimated error of prediction, assuming multivariate normality
## FPE: Final Prediction Error
## HSP: Hocking's Sp
## APC: Amemiya Prediction Criteria
didapatkan dari hasil olsrr model terbaik untuk setiap jumlah kombinasi variabel sebagai berikut: - 1 variabel = x1 - 2 variabel = x2 dan x3 - 3 variabel = x1, x3, dan x6 - 4 variabel = x1, x2, x3, dan x6 - 5 variabel = x1, x2, x3, x4, dan x6 - 6 variabel = x1, x2, x3, x4, x5 dan x6 lalu untuk setiap jumlah variabel tersebut kita lihat masing-masing Adjusted R-squared nya, yaitu: - 1 variabel = 0.6699 - 2 variabel = 0.6864 - 3 variabel = 0.6939 - 4 variabel = 0.6860 - 5 variabel = 0.6759 - 6 variabel = 0.6628 dapat dilihat bahwa jumlah variabel yang memiliki Adjusted R-squared terbesar, yaitu 3 variabel dengan kombinasi variabel x1, x3, dan x6 sebesar 0.6939, maka pemodelan terbaik yaitu:
\[ \hat y = 13.5777 + 0.6227x_1 + 0.3124x_3 - 0.1870x_6 \] #Interpretasi 1) nilai 13.5777adalah dugaan ketika rataan x1, x3, dan x6 bernilai 0. 2) dugaan rataan y akan meningkat sebesar 0.6227 ketika rataan x1 naik satu satuan, dengan asumsi peubah lainnya tetap konstan. 3) dugaan rataan y akan meningkat sebesar 0.3124 ketika rataan x3 naik satu satuan, dengan asumsi peubah lainnya tetap konstan. 4) dugaan rataan y akan menurun sebesar 0.1870 ketika rataan x6 naik satu satuan, dengan asumsi peubah lainnya tetap konstan.
b0_best <- 13.5777
b1_best <- 0.6227
b3_best <- 0.3124
b6_best <- 0.1870
se_b0_best <- 7.5439
se_b1_best <- 0.1181
se_b3_best <- 0.1542
se_b6_best <- 0.1449
n <- 30
p_new <- 3
t <- qt(.975, df <- n-p)
BB_b0 <- b0_best-t*se_b0
BA_b0 <- b0_best+t*se_b0
BB_b1 <- b1_best-t*se_b1
BA_b1 <- b1_best+t*se_b1
BB_b3 <- b3_best-t*se_b3
BA_b3 <- b3_best+t*se_b3
BB_b6 <- b6_best-t*se_b6
BA_b6 <- b6_best+t*se_b6
Batas.Bawah <- as.matrix(c(round(BB_b0,6),round(BB_b1,6),round(BB_b3,6),round(BB_b6,6)))
Batas.Atas <- as.matrix(c(round(BA_b0,6),round(BA_b1,6),round(BA_b3,6),round(BA_b6,6)))
Selang.Kepercayaan <- cbind(Batas.Bawah, Batas.Atas)
colnames(Selang.Kepercayaan ) <- c("Batas bawah Selang (2.5%)", "Batas atas Selang (97.5%)")
rownames(Selang.Kepercayaan ) <- c("Intersept", "b1", "b3", "b6")
Selang.Kepercayaan
## Batas bawah Selang (2.5%) Batas atas Selang (97.5%)
## Intersept -9.837736 36.993136
## b1 0.297443 0.947957
## b3 -0.028086 0.652886
## b6 -0.173062 0.547062