library(datasets)

#load data
data("mtcars")

#membangun model regresi linear
model <- lm(mpg ~ wt+drat+hp, data = mtcars)

#melihat ringkasal model
summary(model)
## 
## Call:
## lm(formula = mpg ~ wt + drat + hp, data = mtcars)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3.3598 -1.8374 -0.5099  0.9681  5.7078 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 29.394934   6.156303   4.775 5.13e-05 ***
## wt          -3.227954   0.796398  -4.053 0.000364 ***
## drat         1.615049   1.226983   1.316 0.198755    
## hp          -0.032230   0.008925  -3.611 0.001178 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.561 on 28 degrees of freedom
## Multiple R-squared:  0.8369, Adjusted R-squared:  0.8194 
## F-statistic: 47.88 on 3 and 28 DF,  p-value: 3.768e-11
#melihat residuals
residuals <- model$residuals
head(residuals)
##         Mazda RX4     Mazda RX4 Wag        Datsun 710    Hornet 4 Drive 
##        -2.6910398        -1.8679115        -2.3265904         0.9539327 
## Hornet Sportabout           Valiant 
##         0.9621452        -1.1995550
residuals
##           Mazda RX4       Mazda RX4 Wag          Datsun 710      Hornet 4 Drive 
##         -2.69103977         -1.86791148         -2.32659041          0.95393269 
##   Hornet Sportabout             Valiant          Duster 360           Merc 240D 
##          0.96214517         -1.19955505         -0.85899549          1.34099488 
##            Merc 230            Merc 280           Merc 280C          Merc 450SE 
##          0.30401886         -1.45742317         -2.85742317          0.98611212 
##          Merc 450SL         Merc 450SLC  Cadillac Fleetwood Lincoln Continental 
##          0.78860774         -1.14999455         -0.17303522          0.59787942 
##   Chrysler Imperial            Fiat 128         Honda Civic      Toyota Corolla 
##          4.75486594          5.64437305         -0.06799697          5.70783262 
##       Toyota Corona    Dodge Challenger         AMC Javelin          Camaro Z28 
##         -2.78735818         -2.15550966         -3.35975468         -1.82727313 
##    Pontiac Firebird           Fiat X1-9       Porsche 914-2        Lotus Europa 
##          2.88251996         -0.31103478         -0.70881110          3.44226261 
##      Ford Pantera L        Ferrari Dino       Maserati Bora          Volvo 142E 
##         -1.66899847         -0.95965686          2.20877479         -2.14595772
#melakukan uji normalitas residual (shapiro-walk test)
shapiro.test(model$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  model$residuals
## W = 0.91718, p-value = 0.01744
#uji normalitas residual jugaaa
library(nortest)
lillie.test(model$residuals) #kolmogorov
## 
##  Lilliefors (Kolmogorov-Smirnov) normality test
## 
## data:  model$residuals
## D = 0.12395, p-value = 0.2409
#uji autokorelasi
library(lmtest)
## Warning: package 'lmtest' was built under R version 4.3.3
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 4.3.2
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
dwtest(model)
## 
##  Durbin-Watson test
## 
## data:  model
## DW = 1.706, p-value = 0.1417
## alternative hypothesis: true autocorrelation is greater than 0
# uji multikolinearitas 
library(car)
## Warning: package 'car' was built under R version 4.3.2
## Loading required package: carData
## Warning: package 'carData' was built under R version 4.3.2
vif(model)
##       wt     drat       hp 
## 2.869445 2.033837 1.769308
#uji heterokedastisitas
bptest(model)
## 
##  studentized Breusch-Pagan test
## 
## data:  model
## BP = 1.5987, df = 3, p-value = 0.6597