如何在图中的R中动态指示组

时间:2016-04-12 15:58:42

标签: r

这是我的数据

x = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 
  17, 18, 19, 20, 21, 22)
y = c(1, 6, 2, 5, 4, 7, 9, 6, 8, 4, 5, 6, 5, 5, 6, 7, 5, 8, 9, 
  5, 4, 7)

plot(x, y)
fit <- lm(y ~ x)
fit
abline(fit, col = "black", lwd = "1")

我想将数据分成两组,即回归线上方的观察值和回归线下的观察值。我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

您可以使用predict获取每个x的拟合值,然后在观察到的和拟合之间进行逻辑比较,以测试它们是否在线上方或下方。然后根据此逻辑比较设置您绘制的颜色。

prediction <- predict(fit)
colors<-ifelse(y>prediction,1,2)
plot(x,y,col=colors)
abline(fit, col= "black",lwd="1")