我在R中建立了一个带有3个连续自变量和一个连续因变量的线性回归模型。我已经生成了诊断图。
我现在想根据模型中未包含的二进制分类独立变量,为诊断图上的每个残差标记/着色数据点;
即。当这个变量= A时,我想在诊断图上画一个蓝点, 当这个变量= B时,我想要一个红点,所以我的诊断图上会有红色和蓝色的点。
我很想知道如何做到这一点。
答案 0 :(得分:0)
[您没有指定您尝试执行此操作的诊断图。您还没有给出一个可重复性最小的示例,这使您很难改变您正在做的事情来做您想做的事。]
我将举例说明你所需要的那种命令,你可以将它调整到你需要的任何显示器上。
library(MASS)
catsmdl <- lm(Hwt~Bwt,cats)
plot(residuals(catsmdl)~fitted(catsmdl), col=cats$Sex)
abline(h=0, col=8, lty=3)
给出:
这甚至适用于plot.lm
,因为它有...
参数将信息传递给较低级别的绘图函数。例如:
opar <- par()
par(mfrow=c(2,2))
plot(catsmdl,col=c("blue","darkorange")[as.numeric(cats$Sex)])
par(opar)
如果用您喜欢的任何颜色替换c("blue","darkorange")
,它应该有效。 (在R中有多种指定颜色的方法。)