使用 R 可视化多元线性回归

时间:2021-03-19 16:03:57

标签: r data-visualization linear-regression r-plotly olsmultiplelinearregression

我正在尝试使用四个变量拟合和可视化多元线性回归模型。

fit <- lm(general_data$Bacterial.Contigs ~ general_data$Soil.Temperature + general_data$Time.point + general_data$Year)

这里 Time.point 和 Year 是分类变量,其他是数值变量。

我使用以下代码创建了一个 3D 绘图。

library(plotly)

plot_ly(data = general_data, z = ~Bacterial.Contigs, x = ~Soil.Temperature, y = ~Time.point, color = ~Year, colors = c('#0C4B8E' ,'#BF382A'),opacity = 0.5) %>%
  add_markers( marker = list(size = 4))

情节是这样的:

enter image description here

如何为该图中的“拟合”模型添加回归线。我真的很感激任何帮助。谢谢

1 个答案:

答案 0 :(得分:0)

您只用 additive effects 拟合了一个模型,这意味着您的分类值只会增加或减少您的响应变量,不同类别的斜率不会改变。在 3D 绘图上将其可视化并不容易,我建议您尝试 ggplot2 .

mtcars 为例,您基本上将拟合值放回数据框中并为拟合值调用一行:

dat = mtcars
dat$am = factor(dat$am)
dat$vs = factor(dat$vs)

fit <- lm(mpg ~ disp + am + vs,data=dat)
dat$fitted= fitted(fit)

library(ggplo2)
g = ggplot(dat) + geom_point(aes(x=disp,y=mpg)) + 
geom_line(aes(x=disp,y = fitted)) + facet_grid(am~vs)
print(g)

enter image description here

或者如果你需要一个情节:

library(plotly)
ggplotly(g)
相关问题