在二次回归中使用拟合与lm方法

时间:2014-12-14 21:17:43

标签: r

这是我在stackoverflow上的第一篇文章,很快就会很明显,因为这是一个非常基本的问题。我准备在R中进行二次回归,并注意到有两种方法可以做到:使用lm()或fit()。我发现的lm()示例通常是:

 quadraticModel <- lm(y ~ x + x^2)

但是,使用fits()方法的其他示例包括lm()语句中的术语I:

 fitted(lm(data~factor+I(factor^2)))

这给我带来了两个问题:在什么情况下我想使用fits()而不仅仅是lm(),以及“I”在fitting()方法中的含义是什么?

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:3)

直接来自?fitted帮助页面:

  

fitting是一个通用函数,它从建模函数返回的对象中提取拟合值。

首先尝试阅读帮助页面以解决此类问题。 lm()进行建模,fitted()只是从模型中提取拟合值。它们是两种非常不同的操作。

答案 1 :(得分:2)

关于I。正如您可以在手册页中看到的那样:

  

在功能'公式'中。它用于抑制             对运营商的解释

如果不清楚,只要看看使用I时发生了什么:

> lm(mpg ~ I(wt ^ 2) + wt, data=mtcars)

Call:
lm(formula = mpg ~ I(wt^2) + wt, data = mtcars)

Coefficients:
(Intercept)      I(wt^2)           wt  
     49.931        1.171      -13.380  

如果你没有

> lm(mpg ~ wt ^ 2 + wt, data=mtcars)

Call:
lm(formula = mpg ~ wt^2 + wt, data = mtcars)

Coefficients:
(Intercept)           wt  
     37.285       -5.344