从手动改变β系数的线性回归估计R2

时间:2015-09-22 10:50:46

标签: r lm

我想知道是否有办法制作线性回归模型并手动更改β系数并在此更改后估算R2。

简单示例:

a <- c(2000 ,   2001  ,  2002  ,  2003 ,   2004)
b <- c(9.34 ,   8.50  ,  7.62  ,  6.93  ,  6.60)
c <- c(10.5 ,   12.8  ,  13.1  ,  14.4  ,  15.9)

fit=lm(a~b+c)
fit$coefficients
(Intercept)            b            c 
2005.1537642   -0.8948095    0.2866537 
summary(fit)$r.squared
[1] 0.9862912

如果我为变量使用不同的测试版,我想知道这个模型的R2是什么&#34; b&#34;和&#34; c&#34;。

1 个答案:

答案 0 :(得分:2)

您可以通过取结果与预测值之间的样本相关系数的平方来计算决定系数:

cor(a, -0.8948095 * b + 0.2866537 * c) ** 2
## [1] 0.9862912

只需将线性模型中的系数替换为您要测试的系数。