我想使用stat_smooth()
绘制具有多个回归变量的回归拟合值。看来stat_smooth()
仅允许使用aes
的{{1}}部分中指定的(x,y)数据进行回归。
这是ggplot
和x=hp
的简单回归拟合的典型图
y=mpg
但是,我想绘制与上面相同的图,但是拟合值应来自具有两个回归变量head(mtcars)
require(ggplot2)
ggplot(mtcars, aes=(x=hp, y=mpg))+geom_point()+
stat_smooth(method="lm", formula=y~x)
和x1=hp
的回归。
这个想法是,在控制x2=wt
之后,wt
和mpg
之间是什么关系。
这可能吗?
答案 0 :(得分:0)
我不是统计专家,但是我认为一旦添加了额外的因变量,多元线性回归将不再是二维的。查看本文是否将您带往正确的方向: https://stats.stackexchange.com/questions/73320/how-to-visualize-a-fitted-multiple-regression-model
答案 1 :(得分:0)
这是可能的。我在这里找到它,来自@aosmith:
https://aosmith.rbind.io/2018/11/16/plot-fitted-lines/#plotting-predicted-values-with-geom_line
简而言之,您单独拟合多元回归模型,将拟合值添加到原始数据集,然后用拟合值覆盖 geom_line() 的 aes。
此示例将同时绘制单变量回归线和多变量拟合线:
fitlm = lm(y ~ x1 + x2, data = dat)
dat$fitted = predict(fitlm)
ggplot(dat, aes(x = x1, y = y) ) +
geom_point() +
geom_smooth(method=lm, color="blue", se=FALSE) +
geom_smooth(method=lm, aes(y = fitted), color="red", se=FALSE)