【发布时间】:2020-06-29 07:57:52
【问题描述】:
我想从线性模型中绘制直线和 95% 置信区间,其中响应已被 logit 转换回原始数据规模。所以结果应该是一条曲线,包括原始尺度上的置信区间,而它在 logit 转换尺度上是一条直线。见代码:
# Data
dat <- data.frame(c(45,75,14,45,45,55,65,15,3,85),
c(.37, .45, .24, .16, .46, .89, .16, .24, .23, .49))
colnames(dat) <- c("age", "bil.")
# Logit transformation
dat$bb_logit <- log(dat$bil./(1-dat$bil.))
# Model
modelbb <- lm(bb_logit ~ age + I(age^2), data=dat)
summary(modelbb)
# Backtranform
dat$bb_back <- exp(predict.lm(modelbb))/ (1 + exp(predict.lm(modelbb)))
# Plot
plot(dat$age, dat$bb_back)
abline(modelbb)
我在这里尝试的是绘制曲线回归线并添加置信区间。在ggplot2 中有geom_smooth 函数可以指定线性模型,但我找不到从predict.lm(my model) 绘制预测的方法。
我还想知道如何添加表示置信区间的彩色多边形,如下图所示。我知道我必须使用函数polygon 和坐标,但我不知道如何。
【问题讨论】:
标签: r plot regression transformation confidence-interval