如何在原始尺度上绘制变换后的回归图?

时间:2017-09-24 17:09:48

标签: r regression transformation

我想从线性模型中绘制线条,其中响应已经在数据的原始比例上进行了对数转换。因此,结果应该是原始比例上的曲线,其中它将是对数变换比例的直线。见代码

# Data
 dat <- data.frame(c(1,2,3,4,5,6,7,8,9), c(5, 2.5, 1.25, .75, .375, .1625, 
 .08, .04, .02)
colnames(dat) <- c("X", "Y")                  
plot(dat$X, log(dat$Y))

# Model
mod <- lm(log(dat$Y)~dat$X)
summary(mod)

 # transformed
 plot(dat$X, log(dat$Y), pch = 16)
 abline(mod)

# back transformed
plot(dat$X, dat$Y)
# What do I do here to plot the curved regression line?

我知道我以前做过这件事,但不能为我的生活记住:(。谢谢!

2 个答案:

答案 0 :(得分:3)

# back transformed
plot(dat$X, dat$Y)
predicted <- predict(mod, type="r")    
lines(dat$X, exp(predicted), col = "blue")

enter image description here

答案 1 :(得分:2)

如果ggplot没问题:

library(ggplot2)
ggplot(dat, aes(X,Y)) + geom_smooth() + geom_point()