这是我当前问题的简化版本。我需要从 2 个模型矩阵创建一个 model.matrix,而不会丢失“分配”中的信息。例如,考虑数据和公式
y<-rnorm(100); x1<-rnorm(100); x2<-rnorm(100); x3<-rnorm(100)
f1 <- y ~ x1 + x2 + x3
和 2 个模型矩阵X1
并X2
使用创建
trms<-terms.formula(f1)
trms2<-drop.terms(trms, dropx = 2)
trms3<-drop.terms(trms, dropx = -2)
X1<-model.matrix(trms2)
X2<-model.matrix(trms3)
有没有一种简单的方法可以创建一个具有 1 个截距列的矩阵,X1
并且可以从中获得? X2
X
attr(,"assign")
f1