创建一些模拟数据
dat <- data.frame(x1=rnorm(100), x2=rnorm(100,4,5), x3=rnorm(100,8,27),
x4=rnorm(100,-6,0.1), t=(1:100)+runif(100,-2,2))
dat <- transform(dat, y=x1+4*x2+3.6*x3+4.7*x4+rnorm(100,3,50))
合身
fit <- lm(y~x1+x2+x3+x4, data=dat)
计算预测值
dat$yhat <- predict(fit)
计算残差
dat$resid <- residuals(fit)
获取变量名的向量
vars <- names(coef(fit))[-1]
如果您使用它来构建公式的字符串版本并翻译它,则可以使用名称的此字符表示来制作绘图。下面是四个图,它们被包裹在所有变量的循环中。此外,这被设置为包围,ask
以便TRUE
您有机会看到每个情节。或者,您可以在屏幕上安排多个绘图,或将它们全部写入文件以供稍后查看。
opar <- par(ask=TRUE)
for (v in vars) {
plot(as.formula(paste("y~",v)), data=dat)
plot(as.formula(paste("yhat~",v)), data=dat)
plot(as.formula(paste("resid~",v)), data=dat)
plot(as.formula(paste("t~",v)), data=dat)
}
par(opar)