#Package
library(lmtest)
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
library(zoo)
library(car)
## Loading required package: carData
library(nortest)
#Buat Data Frame
data <- data.frame(
Y = c(57.5, 52.8, 61.3, 67.0, 53.5, 62.7, 56.2, 68.5, 69.2),
X1 = c(78, 69, 77, 88, 67, 80, 74, 94, 102),
X2 = c(2.75, 2.15, 4.41, 5.52, 3.21, 4.32, 2.31, 4.30, 3.71),
X3 = c(29.5, 26.3, 32.2, 36.5, 27.2, 27.7, 28.3, 30.3, 28.7)
)
data
## Y X1 X2 X3
## 1 57.5 78 2.75 29.5
## 2 52.8 69 2.15 26.3
## 3 61.3 77 4.41 32.2
## 4 67.0 88 5.52 36.5
## 5 53.5 67 3.21 27.2
## 6 62.7 80 4.32 27.7
## 7 56.2 74 2.31 28.3
## 8 68.5 94 4.30 30.3
## 9 69.2 102 3.71 28.7
#Model 1
model_X1<-lm(Y~X1, data=data)
summary(model_X1)
##
## Call:
## lm(formula = Y ~ X1, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.6440 -1.9128 -0.2151 2.2513 2.4075
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 19.01108 5.42272 3.506 0.009915 **
## X1 0.51797 0.06635 7.807 0.000106 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 2.174 on 7 degrees of freedom
## Multiple R-squared: 0.897, Adjusted R-squared: 0.8823
## F-statistic: 60.95 on 1 and 7 DF, p-value: 0.0001065
#Uji Asumsi Klasik
#1. Uji Non-Heteroskedastisitas
bptest(model_X1,varformula=~fitted.values(model_X1), studentize=F) #Uji breusch-pagan
##
## Breusch-Pagan test
##
## data: model_X1
## BP = 0.35178, df = 1, p-value = 0.5531
data$abs_residual <- abs(residuals(model_X1)) #Membuat absolute residual
data$abs_residual
## [1] 1.9127561 1.9510242 2.4052142 2.4075419 0.2150838 2.2513035 1.1408752
## [8] 0.7997207 2.6440410
glejser <- lm(abs_residual ~ X1, data = data) #Uji Glejser (heteroskedastisitas)
summary(glejser)
##
## Call:
## lm(formula = abs_residual ~ X1, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.3200 -0.4062 0.2952 0.5324 0.7722
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.57193 2.04979 -0.279 0.788
## X1 0.02864 0.02508 1.142 0.291
##
## Residual standard error: 0.8219 on 7 degrees of freedom
## Multiple R-squared: 0.157, Adjusted R-squared: 0.03657
## F-statistic: 1.304 on 1 and 7 DF, p-value: 0.2911
#2. Uji Non-Autokorelasi
dwtest(model_X1, alternative='two.sided') #uji durbin-watson
##
## Durbin-Watson test
##
## data: model_X1
## DW = 1.785, p-value = 0.5744
## alternative hypothesis: true autocorrelation is not 0
bgtest(model_X1) #uji breusch-godfrey
##
## Breusch-Godfrey test for serial correlation of order up to 1
##
## data: model_X1
## LM test = 0.033549, df = 1, p-value = 0.8547
#3. Uji Normalitas Residual
shapiro.test(resid(model_X1)) #uji shapiro-wilk
##
## Shapiro-Wilk normality test
##
## data: resid(model_X1)
## W = 0.87986, p-value = 0.1565
lillie.test(resid(model_X1)) #uji lilliefors
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: resid(model_X1)
## D = 0.19917, p-value = 0.3825
#Model 2
model_X2<-lm(Y~X2, data=data)
summary(model_X2)
##
## Call:
## lm(formula = Y ~ X2, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -5.6496 -2.1172 -1.2392 0.9339 7.8929
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 45.298 5.254 8.621 5.64e-05 ***
## X2 4.315 1.390 3.105 0.0172 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 4.394 on 7 degrees of freedom
## Multiple R-squared: 0.5793, Adjusted R-squared: 0.5192
## F-statistic: 9.64 on 1 and 7 DF, p-value: 0.0172
#Uji Asumsi Klasik
#1. Uji Non-Heteroskedastisitas
bptest(model_X2,varformula=~fitted.values(model_X2), studentize=F) #Uji breusch-pagan
##
## Breusch-Pagan test
##
## data: model_X2
## BP = 0.061595, df = 1, p-value = 0.804
data$abs_residual <- abs(residuals(model_X2)) #Membuat absolute residual
data$abs_residual
## [1] 0.3353100 1.7757020 3.0275565 2.1171842 5.6495807 1.2392084 0.9339012
## [8] 4.6470912 7.8929294
glejser <- lm(abs_residual ~ X2, data = data) #Uji Glejser
summary(glejser)
##
## Call:
## lm(formula = abs_residual ~ X2, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.3452 -1.7837 -0.6405 1.2837 4.7895
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.4690 3.1460 0.467 0.655
## X2 0.4406 0.8321 0.529 0.613
##
## Residual standard error: 2.631 on 7 degrees of freedom
## Multiple R-squared: 0.03851, Adjusted R-squared: -0.09885
## F-statistic: 0.2804 on 1 and 7 DF, p-value: 0.6128
#2. Uji Non-Autokorelasi
dwtest(model_X2, alternative='two.sided') #uji durbin-watson
##
## Durbin-Watson test
##
## data: model_X2
## DW = 0.50193, p-value = 0.005426
## alternative hypothesis: true autocorrelation is not 0
bgtest(model_X2) #uji breusch-godfrey
##
## Breusch-Godfrey test for serial correlation of order up to 1
##
## data: model_X2
## LM test = 5.4817, df = 1, p-value = 0.01922
#3. Uji Normalitas Residual
shapiro.test(resid(model_X2)) #uji shapiro-wilk
##
## Shapiro-Wilk normality test
##
## data: resid(model_X2)
## W = 0.93927, p-value = 0.5742
lillie.test(resid(model_X2)) #uji liliefors
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: resid(model_X2)
## D = 0.1879, p-value = 0.4765
#Model 3
model_X3<-lm(Y~X3, data=data)
summary(model_X3)
##
## Call:
## lm(formula = Y ~ X3, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -4.693 -3.315 -2.592 3.937 9.297
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 27.1873 18.9650 1.434 0.195
## X3 1.1399 0.6369 1.790 0.117
##
## Residual standard error: 5.611 on 7 degrees of freedom
## Multiple R-squared: 0.314, Adjusted R-squared: 0.216
## F-statistic: 3.204 on 1 and 7 DF, p-value: 0.1166
#Uji Asumsi Klasik
#1. Uji Non-Heteroskedastisitas
bptest(model_X3,varformula=~fitted.values(model_X3), studentize=F) #Uji breusch-pagan
##
## Breusch-Pagan test
##
## data: model_X3
## BP = 0.32297, df = 1, p-value = 0.5698
data$abs_residual <- abs(residuals(model_X3)) #Membuat absolute residual
data$abs_residual
## [1] 3.314678 4.366959 2.592442 1.794065 4.692880 3.937164 3.246783 6.773392
## [9] 9.297252
glejser <- lm(abs_residual ~ X3, data = data) #Uji Glejser
summary(glejser)
##
## Call:
## lm(formula = abs_residual ~ X3, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.6039 -1.0955 -1.0751 -0.4915 4.5679
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 13.4360 7.5924 1.77 0.120
## X3 -0.3034 0.2550 -1.19 0.273
##
## Residual standard error: 2.246 on 7 degrees of freedom
## Multiple R-squared: 0.1682, Adjusted R-squared: 0.0494
## F-statistic: 1.416 on 1 and 7 DF, p-value: 0.2729
#2. Uji Non-Autokorelasi
dwtest(model_X3, alternative='two.sided') #uji durbin-watson
##
## Durbin-Watson test
##
## data: model_X3
## DW = 1.117, p-value = 0.1651
## alternative hypothesis: true autocorrelation is not 0
bgtest(model_X3) #uji breusch-godfrey
##
## Breusch-Godfrey test for serial correlation of order up to 1
##
## data: model_X3
## LM test = 0.80317, df = 1, p-value = 0.3701
#3. Uji Normalitas Residual
shapiro.test(resid(model_X3)) #uji shapiro-wilk
##
## Shapiro-Wilk normality test
##
## data: resid(model_X3)
## W = 0.81761, p-value = 0.03238
lillie.test(resid(model_X3)) #uji liliefors
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: resid(model_X3)
## D = 0.30042, p-value = 0.01874
#Model 4
RLB <- lm(Y ~ X1 + X2 + X3, data = data)
summary(RLB)
##
## Call:
## lm(formula = Y ~ X1 + X2 + X3, data = data)
##
## Residuals:
## 1 2 3 4 5 6 7 8 9
## -0.2981 -0.2142 0.4714 -0.4746 -0.9524 0.4761 0.9274 0.7466 -0.6823
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 21.87353 4.07389 5.369 0.00302 **
## X1 0.41277 0.03067 13.460 4.05e-05 ***
## X2 2.20267 0.47199 4.667 0.00550 **
## X3 -0.07895 0.15551 -0.508 0.63330
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.8484 on 5 degrees of freedom
## Multiple R-squared: 0.9888, Adjusted R-squared: 0.9821
## F-statistic: 147.1 on 3 and 5 DF, p-value: 2.696e-05
#Multikolinieritas
vif(RLB)
## X1 X2 X3
## 1.403219 3.093549 2.607991
#Uji Asumsi Klasik
#1. Uji Non-Heteroskedastisitas
bptest(RLB) #Uji breusch-pagan
##
## studentized Breusch-Pagan test
##
## data: RLB
## BP = 0.52402, df = 3, p-value = 0.9136
data$abs_residual <- abs(residuals(RLB))
data$abs_residual
## [1] 0.2980857 0.2141744 0.4714083 0.4745650 0.9524106 0.4760829 0.9274363
## [8] 0.7466056 0.6822975
glejser <- lm(abs_residual ~ X1 + X2 + X3, data = data) #Uji Glejser
summary(glejser)
##
## Call:
## lm(formula = abs_residual ~ X1 + X2 + X3, data = data)
##
## Residuals:
## 1 2 3 4 5 6 7 8
## -0.24968 -0.37078 -0.06495 -0.01987 0.35744 -0.17650 0.37477 0.12608
## 9
## 0.02347
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.000238 1.548904 0.646 0.547
## X1 0.002391 0.011660 0.205 0.846
## X2 0.035130 0.179452 0.196 0.853
## X3 -0.024936 0.059127 -0.422 0.691
##
## Residual standard error: 0.3226 on 5 degrees of freedom
## Multiple R-squared: 0.04467, Adjusted R-squared: -0.5285
## F-statistic: 0.07793 on 3 and 5 DF, p-value: 0.9692
#Uji Non-Autokorelasi
bgtest(RLB) #Uji breusch-godfrey
##
## Breusch-Godfrey test for serial correlation of order up to 1
##
## data: RLB
## LM test = 0.51249, df = 1, p-value = 0.4741
dwtest(RLB) #Uji durbin-watson
##
## Durbin-Watson test
##
## data: RLB
## DW = 1.6446, p-value = 0.1165
## alternative hypothesis: true autocorrelation is greater than 0
#Uji Normalitas
shapiro.test(residuals(RLB)) #Uji shapiro-wilk
##
## Shapiro-Wilk normality test
##
## data: residuals(RLB)
## W = 0.93208, p-value = 0.5014
lillie.test(resid(RLB)) #Uji lilliefors
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: resid(RLB)
## D = 0.20336, p-value = 0.35
This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.
When you click the Knit button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:
summary(cars)
## speed dist
## Min. : 4.0 Min. : 2.00
## 1st Qu.:12.0 1st Qu.: 26.00
## Median :15.0 Median : 36.00
## Mean :15.4 Mean : 42.98
## 3rd Qu.:19.0 3rd Qu.: 56.00
## Max. :25.0 Max. :120.00
You can also embed plots, for example:
Note that the echo = FALSE parameter was added to the
code chunk to prevent printing of the R code that generated the
plot.