1

我学会了在我的 R 脚本中使用 lm 获得与某些点的线性拟合。所以,我这样做了(效果很好),并打印了合身:

lm(formula = y2 ~ x2)

Residuals:
         1          2          3          4 
 5.000e+00 -1.000e+01  5.000e+00  7.327e-15 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)   
(Intercept)   70.000     17.958   3.898  0.05996 . 
x2            85.000      3.873  21.947  0.00207 **
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 8.66 on 2 degrees of freedom
Multiple R-squared: 0.9959, Adjusted R-squared: 0.9938 
F-statistic: 481.7 on 1 and 2 DF,  p-value: 0.00207 

我正在尝试确定判断这种合身程度的最佳方法。我需要将此拟合与其他一些拟合(使用lm()函数也是线性的)进行比较。从这个总结中得到什么价值是判断这种拟合有多好的最好方法?我正在考虑使用残差标准误差。有什么建议么。另外,如何从 fit 变量中提取该值?

4

3 回答 3

2

这段代码会做类似的事情:

 y2 <- seq(1, 11, by=2)+rnorm(6)  # six data points to your four points
 x2=1:6
 lm(y2 ~ x2)
 summary(lm(y2 ~ x2))

调整后的 R^2 是“拟合优度”度量。也就是说,y2 中 99% 的方差可以通过 y2 到 x2 的直线拟合来“解释”。您是否想根据该结果仅使用 4 个数据点来解释您的模型是一个判断问题。这对我来说似乎有些危险。

要提取残差平方和,请使用:

summary(lm(y2~x2))$sigma

有关详细信息,请参阅此:

?summary.lm
于 2011-08-18T21:44:14.403 回答
2

如果您想直接访问由 生​​成的片段summary,您可以调用summary并将结果存储在一个变量中,然后检查结果对象:

rs <- summary(lm1)
names(rs)

也许rs$sigma是你正在寻找的?

编辑

在有人责备我之前,我应该指出,对于其中一些信息,这不是访问它的推荐方式。相反,您应该使用指定的提取器,例如residuals()or coef

于 2011-08-18T21:51:45.407 回答
1

您可以查看一些不错的回归诊断图

plot(YourRegression, which=1:6)

其中 which=1:6 为您提供所有六个图。RESET 测试和 bptest 将测试指定错误和异方差:

resettest(...)
bptest(...)

有很多资源可以考虑这种事情。R 中的拟合分布 就是其中之一,Faraway 的“Practical Regression and Anova”是 R 经典。我基本上从 Farnsworth 的论文/书中学习了 R 中的计量经济学,尽管我不记得他是否对拟合优度有任何了解。

如果你打算在 R 中做很多计量经济学,R 中的应用计量经济学是一本很好的付费书籍。我经常使用R for Economists网页。

这些是最先浮现在脑海中的。我会再考虑一下。

于 2011-08-18T21:31:32.390 回答