假设我们有以下散点图数据:

x <- c(1, 2, 3, 4, 5)
y <- c(3, 5, 7, 9, 11)

首先,我们可以用lm()函数拟合线性回归模型,并用summary()函数查看模型的详情:

model <- lm(y ~ x)
summary(model)

接下来,我们可以用predict()函数预测x值对应的y值,并用ggplot2包绘制散点图和线性曲线:

library(ggplot2)

df <- data.frame(x = x, y = y, y_pred = predict(model))

ggplot(df, aes(x, y)) +
  geom_point() +
  geom_line(aes(y = y_pred)) +
  geom_ribbon(aes(ymin = predict(model, interval = 'confidence')[,2], 
                  ymax = predict(model, interval = 'confidence')[,3]), 
              alpha = 0.2, fill = 'blue') +
  labs(title = 'Linear Regression with Confidence Interval',
       x = 'x', y = 'y')

在上面的代码中,我们用geom_ribbon()函数绘制置信区间,其中参数interval = 'confidence'表示使用95%的置信区间,alpha = 0.2表示置信区间的透明度为0.2,fill = 'blue'表示置信区间的填充颜色为蓝色。

运行以上代码,得到的图形如下所示:

线性回归置信区间

图中蓝色曲线为模拟的线性关系,灰色区域为95%的置信区间。

R语言线性回归模拟及置信区间绘制示例

原文地址: https://www.cveoy.top/t/topic/nzS7 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录