a <- 10
b <- 7
x <- rnorm(1000,25,1.5)
error <- rnorm(1000,5,5)
Persamaan Hiperbola
y <- 1/(a+(b*x))+error
plot(x,y)
Transformasinya kedua ruas di-ln-kan \([Y^*=ln(Y)]\) \([X^*=ln(X)]\)
y_tr <- log(y)
## Warning in log(y): NaNs produced
x_tr <- log(x)
data_tr <- data.frame(cbind(y_tr,x_tr))
head(data_tr)
## y_tr x_tr
## 1 1.984438 3.129067
## 2 2.588384 3.159530
## 3 NaN 3.071840
## 4 1.450330 3.273102
## 5 2.002010 3.126088
## 6 1.649458 3.189201
plot(x_tr,y_tr)
model_tr <- lm(y_tr~x_tr, data_tr)
summary(model_tr)
##
## Call:
## lm(formula = y_tr ~ x_tr, data = data_tr)
##
## Residuals:
## Min 1Q Median 3Q Max
## -5.1174 -0.4065 0.2150 0.6208 1.4558
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.2523 1.6602 1.357 0.175
## x_tr -0.2012 0.5160 -0.390 0.697
##
## Residual standard error: 0.8783 on 819 degrees of freedom
## (179 observations deleted due to missingness)
## Multiple R-squared: 0.0001856, Adjusted R-squared: -0.001035
## F-statistic: 0.1521 on 1 and 819 DF, p-value: 0.6967
Implikasi dari transformasi kedua ruas, maka \(\beta_0=ln(a)\) dan \(\beta_1=b\)
b0 <- model_tr$coefficients[[1]]
b1 <- model_tr$coefficients[[2]]
b0; b1
## [1] 2.2523
## [1] -0.2012246
Mengecek apakah nilai \(a\) hasil transformasi balik sudah sesuai dengan nilai \(a\) yang asli. Karena \(\beta_0=ln(a)\), maka \(a=e^{\beta_0}\)
(a_duga <- exp(b0))
## [1] 9.509583