Pada analisis regresi transformasi terhadap peubah penjelas dan atau peubah respon dimaksudkan untuk :
Memenuhi asumsi yang disyaratkan pada suatu metode, agar metode tersebut sah digunakan
Meluruskan pola dugaan garis regresi, agar analisi dapat dilakukan dengan menggunakan model garis lurus. Hal ini disebabkan regresi linier yang hubungan linier, banyaknya parameter akan menjadi sedikit sehingga lebih sederhana dan tidak rumit
Pada kesempatan kali ini, saya akan melalukan transformasi untuk meluruskan pola dugaan garis regresi menggunakan pola kebalikan eksponensial.
Kita akan menggunakan alpha = 7 dan beta = 10
a <- 7
b <- 10
x <- runif(1000,2,50)
error <- rnorm(1000,1,5)
Persamaan eksponensial: \(Y=\alpha\)e\(\scriptscriptstyle^\beta/x\)
y <- a*exp(b/x)+error
plot(x,y)
TRANSFORMASI : Ke dua ruas di- \(ln\)-kan \([Y^*=ln(Y)]\) dan \([x^*=\frac{1}{x}]\)
y_tr <- log(y)
## Warning in log(y): NaNs produced
x_tr <- 1/x
dataeksp <- data.frame(cbind(y_tr,x_tr))
head(dataeksp)
## y_tr x_tr
## 1 2.928947 0.02032702
## 2 2.945297 0.06594380
## 3 1.497292 0.03973982
## 4 2.167147 0.02320100
## 5 6.915273 0.49672741
## 6 2.455447 0.06239740
model_tr <- lm(y_tr~x_tr, dataeksp)
summary(model_tr)
##
## Call:
## lm(formula = y_tr ~ x_tr, data = dataeksp)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.6380 -0.1718 0.0689 0.2864 1.0446
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.95160 0.02145 90.97 <2e-16 ***
## x_tr 10.03641 0.22968 43.70 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.4904 on 981 degrees of freedom
## (17 observations deleted due to missingness)
## Multiple R-squared: 0.6606, Adjusted R-squared: 0.6603
## F-statistic: 1909 on 1 and 981 DF, p-value: < 2.2e-16
Implikasi dari transformasi kedua ruas, maka \(\beta_0=ln(\alpha)\) dan \(\beta_1=b\)
b0 <- model_tr$coefficients[[1]]
b1 <- model_tr$coefficients[[2]]
b0; b1
## [1] 1.951597
## [1] 10.03641
mengecek apakah nilai \(\alpha\) hasil transformasi balik sudah sesuai dengan nilai \(\alpha\) yang asli karena \(\beta_0=ln(\alpha)\), maka \(\alpha=e\scriptscriptstyle^\beta0\)
(a_duga <- exp(b0))
## [1] 7.03992
Scatterplot dari \(ln(Y)\) vs \(\frac{1}{x}\)
plot(x_tr,y_tr)