这里我生成了两个随机变量并对其进行排序并将其拟合为线性逻辑回归。然后将其着色为蓝色和红色,但问题是我无法将拟合线下的数据点设置为红色,而将上面的值设置为蓝色。这是我的代码,任何帮助将不胜感激。
A<-rnorm(100)
B<-runif(100)
r<-sort(A)
s<-sort(B)
reg<- lm(r ~ s)
plot(reg,which=1)
plot(predict(reg),residuals(reg))
plot(predict(reg),residuals(reg),col=c("blue","red"))
abline(h=0,lty=2,col="grey")
lines(lowess(predict(reg),residuals(reg)),col="black",lwd=2)
lines(lowess(s[r==0],residuals(reg)[r==0]),col="red")
lines(lowess(s[r==1],residuals(reg)[r==1]),col="blue")
See graph here: the colouring seems to be difficult to assigned
答案 0 :(得分:0)
这样做你想要的吗?
plot(predict(reg),residuals(reg),col=ifelse(residuals(reg)<0,"blue","red"))
我只测试残差是否大于0。主要思想是创建一个与数据长度相同的颜色矢量。