Weighted Least Square (Kuadrat Terkecil Terboboti)

read data

library(readxl)
ads=read_excel("E:\\Praktikum 11a.xlsx",sheet="Sheet1")
ads
## # A tibble: 12 x 2
##        Y     X
##    <dbl> <dbl>
##  1    77    16
##  2    70    14
##  3    85    22
##  4    50    10
##  5    62    14
##  6    70    17
##  7    55    10
##  8    63    13
##  9    88    19
## 10    57    12
## 11    81    18
## 12    51    11

plot X vs Y

plot(ads$Y,ads$X,xlab="Biaya Iklan",ylab="Pendapatan",pch=19,main="Biaya Iklan vs Pendapatan")

membuat model regresi

reg_ganda=lm(Y~X,data=ads)
yduga=predict(reg_ganda)
sisa=residuals(reg_ganda)
std_sisa=rstandard(reg_ganda) #standardized residual
stud_sisa=rstudent(reg_ganda) #studentized residual

histogram sisaan

hist(sisa,breaks=10,main="Histogram Sisaan")

quantile-quantile plot

qqnorm(sisa,main="QQ Plot Sisaan")
abline(a=mean(sisa),b=sd(sisa),col="red")

##plot sisaan dan y duga

plot(yduga,sisa,xlab="Y duga",ylab="Sisaan",pch=19,main="Y duga vs Sisaan")

plot(yduga,std_sisa,xlab="Y duga",ylab="Sisaan Baku",pch=19,main="Y duga vs Sisaan Baku")
abline(0,0,col="red")

weighted least square

ads.weights=1/lm(abs(reg_ganda$residuals) ~ reg_ganda$fitted.values)$fitted.values^2
ads.lmw <- lm(Y ~ X,data = ads,weights = ads.weights)
summary.lm(ads.lmw)$coefficients
##              Estimate Std. Error  t value     Pr(>|t|)
## (Intercept) 17.300637   4.827736 3.583592 4.981868e-03
## X            3.421106   0.370310 9.238492 3.268919e-06