这是我正在使用的数据集的 dput:
structure(list(X = c(18, 19, 20, 17, 8, 15, 14, 16, 18, 14, 16,
13, 16, 17, 10, 18, 19, 25, 18, 13, 18, 16, 11, 17, 15, 18, 19,
16, 20, 17, 8, 18, 15, 14, 18, 14, 16, 13, 16), Y = c(15, 13,
14, 22, 2, 11, 15, 11, 20, 17, 20, 17, 20, 14, 21, 10, 13, 16,
12, 11, 13, 10, 4, 16, 18, 15, 10, 13, 14, 17, 2, 11, 15, 11,
20, 17, 14, 7, 16), Z = c(32, 42, 37, 34, 32, 39, 44, 49, 36,
31, 36, 37, 37, 45, 46, 48, 36, 42, 36, 25, 36, 39, 26, 32, 33,
38, 33, 44, 46, 34, 32, 39, 44, 49, 36, 31, 36, 37, 37)), class = "data.frame", row.names = c(NA,
-39L))
所以在我在 R 中运行线性回归之前,我会使用这样的简单代码:
library(ggplot2)
library(ggpmisc)
ggplot(data = hw_data,
aes(x=X,
y=Y))+
geom_point()+
geom_smooth(method = lm)+
stat_poly_eq(formula = simple_model,
aes(label = paste(..eq.label.., ..rr.label..,
sep = "~~~~~~")))
这会给我一个带有这种等式标签的图表:
但是,我正在尝试运行多元线性回归和层次回归,但是当我尝试添加第三个变量时,我不完全确定如何 1) 将第三个变量 (Z) 绘制为回归线和 2) 得到一个适合图形上模型的方程。我正在寻找的是这样的:
我需要绘制的两个模型是 (Y ~ X + Z) 和 (Y ~ X * Z)。到目前为止,我想出的最好的是:
# One predictor model:
hw_regression_simple <- lm(Y ~ X,
data = hw_data)
# Two predictor model:
hw_regression_two_factors <- lm(Y ~ X + Z,
hw_data)
# Interaction model:
hw_regression_interaction <- lm(Y ~ X * Z,
hw_data)
# Comparison of models:
summary(hw_regression_simple)
summary(hw_regression_two_factors)
summary(hw_regression_interaction)
model <- Y ~ X * Z
ggplot(data = hw_data,
aes(x=X,
y=Y,
color=Z))+
geom_point()+
geom_smooth(method = lm)+
labs(title = "X, Y, and Z Interactions")+
stat_poly_eq()
这给了我这个带有 R 平方和散点图颜色的图表,但除此之外没有提供我想要的那么多信息。我该如何解决这个问题,使其看起来更像我正在寻找的模型?