这个问题已经在这里有了答案:
9年前关闭。
我有一个 Y 值向量和一个 X 值矩阵,我想对其进行多元回归(即 Y = X[column 1] + X[column 2] + ... X[column N])
问题是我的矩阵 (N) 中的列数没有预先指定。我知道在 R 中,要执行线性回归,您必须指定方程:
fit = lm(Y~X[,1]+X[,2]+X[,3])
但是,如果我不知道 X 矩阵中有多少列,我该怎么做?
谢谢!
最佳答案
三种方式,在增加灵活性水平。
方法 1
使用公式符号运行回归:
fit <- lm( Y ~ . , data=dat )
方法 2
将所有数据放在一个 data.frame 中,而不是两个:
dat <- cbind(data.frame(Y=Y),as.data.frame(X))
然后使用公式符号运行回归:
fit <- lm( Y~. , data=dat )
方法 3
另一种方法是自己构建公式:
model1.form.text <- paste("Y ~",paste(xvars,collapse=" + "),collapse=" ")
model1.form <- as.formula( model1.form.text )
model1 <- lm( model1.form, data=dat )
在此示例中,xvars是一个字符向量,其中包含要使用的变量的名称。
关于r - 具有可变数量的解释变量的R中的线性回归,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8157553/