这是我的问题:
1) 我进行了多元线性回归:假设如下:
lm(attitude~quality+price+location+Income)
我主要关心的是态度和素质的关系,其他变量都是控制变量。
2) 然后我想做一个态度和质量之间的散点图。这很容易:
Q <-ggplot(data=data, aes(x=quality, y=attitude))
Q + geom_point(size = 1)
3) 我还想绘制 x 和 y 之间的拟合线,斜率应该是多元线性回归的偏回归系数。即应该是下面公式中的b1:attitude=b1*quality+b2*price+b3*location+b4*Income,而不是下面公式中的b:attitude=b*quality。因此,以下代码无法正常工作,因为它将绘制 b 而不是 b1 的斜率。
g <- g + geom_smooth(method = lm)
有人问了一个非常相似的问题,see here
提供的答案如下所示(替换为我的变量):
g <- g + geom_smooth(data=data, aes(x=quality, y=attitude, ymin=lcl, ymax=ucl))
但是,这是一个 LOWESS 图(正如您在帖子中看到的图),而不是线性直线图。
我的问题:如何在置信区间带上添加斜率 b1 的直线?
最佳答案
如果你想看到b1,你应该画偏回归图 , 我所知。
在这种情况下,
attitude
在每个变量 除了 quality
quality
关于其他预测变量 X <-
data_frame(
x = lm(quality ~.-attitude, data = data)$resid,
y = lm(attitude ~ .-quality, data = data)$resid
)
X %>%
ggplot(aes(x, y)) +
geom_smooth(method = "lm")
这条线可能与 b1 相同,但不是 x,y 点。
关于r - 多元线性回归 : Plot a straight line with confidence intervals,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51147938/