如何解决R 中的 lm() 和线性回归方程
我有两个变量,我使用了以下 lm() 公式:
lm(y ~ x1*x2)
我用这个代替
lm(y ~ x1 + x2)
因为我想看到每个 IV (x1,x2) 的主要影响,以及它们的相互作用。
我用的公式和y = b0 + b1x1 + b2x2一样吗?
或者,y = b0 + (b1x1)(b2*x2)?
解决方法
使用内置的 anscombe 数据集,这两个具有相同的模型矩阵,因此它们拟合相同的模型。检查模型矩阵以准确了解正在使用的模型。
fm1 <- lm(y1 ~ x1 + x2 + x1:x2,anscombe)
fm2 <- lm(y1 ~ x1 * x2,anscombe)
m1 <- model.matrix(fm1)
m2 <- model.matrix(fm2)
identical(m1,m2)
## [1] TRUE
# since m1 and m2 are identical we can just display one of them
m1
## (Intercept) x1 x2 x1:x2
## 1 1 10 10 100
## 2 1 8 8 64
## 3 1 13 13 169
## 4 1 9 9 81
## 5 1 11 11 121
## 6 1 14 14 196
## 7 1 6 6 36
## 8 1 4 4 16
## 9 1 12 12 144
## 10 1 7 7 49
## 11 1 5 5 25
## attr(,"assign")
## [1] 0 1 2 3
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。