R 绘制残差与剩余变量

R 绘制残差与剩余变量,r,plot,data-visualization,model-checking,R,Plot,Data Visualization,Model Checking,目前,我正在使用一个基于R中的pairs命令的脚本来查找给定模型的残差与剩余变量之间的关系。这种关系对于模型诊断非常重要。您可以在下面看到我的代码,了解我当前如何绘制关系的一个小示例 如果我的模型中有很多变量(比如~10),那么对图就会变得相当大。我只看了对的底部一行图与残差的关系,因此图可以大大简化。有人能推荐一个命令来只打印pairs plot的底行吗 如果新的绘图方法可以使用网格进行残差分析,而不是使用非常宽的绘图,那将是非常棒的 gpa <- read.delim("GPA.txt

目前,我正在使用一个基于R中的
pairs
命令的脚本来查找给定模型的残差与剩余变量之间的关系。这种关系对于模型诊断非常重要。您可以在下面看到我的代码,了解我当前如何绘制关系的一个小示例

如果我的模型中有很多变量(比如~10),那么
图就会变得相当大。我只看了
对的底部一行
图与残差的关系,因此图可以大大简化。有人能推荐一个命令来只打印pairs plot的底行吗

如果新的绘图方法可以使用网格进行残差分析,而不是使用非常宽的绘图,那将是非常棒的

gpa <- read.delim("GPA.txt", dec = ",")
mod <- lm(CGPA ~ HSGPA + Studytime, data = gpa)
pairs(cbind(gpa, residuals(mod)), panel=panel.smooth)
dput(gpa)
要根据其他变量绘制残差(y轴)并包括
面板平滑
方法,可以使用以下代码,该代码给出不同的
n
(在本例中为3)图:

# plotting just the lowest plots
sapply(1:ncol(gpa), function(i) {
  plot(x = gpa[, i], y = residuals(mod), xlab = names(gpa)[i])
  panel.smooth(x = gpa[, i], y = residuals(mod))
})

如果你想在一个页面上打印,你可以用
par(mfrow=c(2,2))
(它给出了2x2的打印矩阵)。

请发布一个
dput(gpa)
而不是
txt
文件,这样更容易读取数据!看看更新后的帖子。看起来不错!但是,如何将x轴的标签设置为变量名?目前无法区分不同的情节。我编辑了代码以反映您的评论。现在它遍历列并添加变量名称作为x轴标签。
# plotting just the lowest plots
sapply(1:ncol(gpa), function(i) {
  plot(x = gpa[, i], y = residuals(mod), xlab = names(gpa)[i])
  panel.smooth(x = gpa[, i], y = residuals(mod))
})