如何在 r 中创建残差图


残差图通常用于评估回归分析的残差是否呈正态分布以及它们是否表现出异方差

本教程介绍如何在 R 中为回归模型创建残差图。

示例:R 中的残差图

在此示例中,我们将使用mtcars内置 R 数据集拟合回归模型,然后生成三个不同的残差图来分析残差。

步骤1:拟合回归模型。

首先,我们将使用mpg作为响应变量,使用disphp作为解释变量来拟合回归模型:

 #load the dataset
data(mtcars)

#fit a regression model
model <- lm(mpg~disp+hp, data=mtcars)

#get list of residuals 
res <- resid(model)

第 2 步:生成残差图或调整图。

接下来,我们将生成残差/拟合图,可用于直观地检测异方差性 – 例如残差分布在一系列值上的系统变化。

 #produce residual vs. fitted plot
plot(fitted(model), res)

#add a horizontal line at 0 
abline(0,0)

R 中的剩余或调整地形

x 轴显示拟合值,y 轴显示残差。从图中我们可以看到,拟合值越高,残差的分布往往越高,但这似乎还没有严重到我们需要对模型进行更改的程度。

第三步:制作QQ图。

我们还可以生成 QQ 图,用于确定残差是否服从正态分布。如果图中的数据值大致呈 45 度角直线分布,则数据呈正态分布。

 #create QQ plot for residuals
qqnorm(res)

#add a straight diagonal line to the plot
qqline(res) 

R 中的残差 Q-Q 图

我们可以看到残差倾向于稍微偏离尾部附近的线,这可能表明它们不是正态分布的。

步骤 4:绘制密度图。

我们还可以生成密度图,这对于目视检查残差是否呈正态分布也很有用。如果图大致呈钟形,则残差可能服从正态分布。

 #Create density plot of residuals
plot(density(res))

R 中的残余密度曲线

我们可以看到密度图大致呈钟形,尽管稍微向右倾斜。根据研究类型,研究人员可能会或可能不会决定对数据进行转换,以确保残差更呈正态分布。

其他资源

如何计算 R 中的标准化残差
如何计算 R 中的学生化残差
如何在 R 中创建残差直方图

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注