我想知道是否有办法制作线性回归模型并手动更改β系数并在此更改后估算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;。
答案 0 :(得分:2)
您可以通过取结果与预测值之间的样本相关系数的平方来计算决定系数:
cor(a, -0.8948095 * b + 0.2866537 * c) ** 2
## [1] 0.9862912
只需将线性模型中的系数替换为您要测试的系数。