如何在R中强制回归经过原点

3

我正在使用R进行多元回归分析。我知道,如果您输入例如reg <- lm(y~ 0 + x1+ x2, data),您将强制回归模型通过原点。

我的问题是,我有很多自变量(+/-100),如果我按照这种方式输入,R似乎无法读取所有自变量。

  lm(y~ 0 + x1 + x2 + ... + x100, data)

代码使用如下:
[1] data <- read.csv("Test.csv")
[2] reg <- lm(data)
[3] summary(reg)

我需要在第二行放什么内容才能强制模型通过原点? reg <- lm(0 + data)并不起作用。


1
也许提供一些示例数据和您想要的答案。 - Mark Miller
5
将它们放入数据框或矩阵中,然后执行 lm(y ~ 0 + ., data) - Thomas
lm(y ~ 0 + ., data) 可以工作,谢谢。 - Jason Samuels
@Thomas或OP:你们中的任何一个都可以发布为答案。 - Ben Bolker
1个回答

7

将您的变量放入数据框中并使用.

lm(y ~ 0 + ., data)

请参见文档

在公式中,. 有两种特殊的解释。通常情况下,它是在模型拟合函数的数据参数上下文中使用的,表示“除了公式中其他列的所有列”:请参见terms.formula。在 update.formula 的上下文中,它仅表示“公式此部分先前的内容”。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接