一、数据准备
序号 | X | Y | 序号 | X | Y | 序号 | X | Y |
1 | 1 | 0.6 | 11 | 4 | 3.5 | 21 | 8 | 17.5 |
2 | 1 | 1.6 | 12 | 4 | 4.4 | 22 | 8 | 13.4 |
3 | 1 | 0.5 | 13 | 4 | 5.1 | 23 | 8 | 4.5 |
4 | 1 | 1.2 | 14 | 5 | 5.7 | 24 | 9 | 30.4 |
5 | 2 | 2 | 15 | 6 | 3.4 | 25 | 11 | 12.4 |
6 | 2 | 1.3 | 16 | 6 | 9.7 | 26 | 12 | 13.4 |
7 | 2 | 2.5 | 17 | 6 | 8.6 | 27 | 12 | 26.2 |
8 | 3 | 2.2 | 18 | 7 | 4 | 28 | 12 | 7.4 |
9 | 3 | 2.4 | 19 | 7 | 5.5 | |||
10 | 3 | 1.2 | 20 | 7 | 10.5 |
|
二、对y和x,绘制散点图,并进行回归分析
x<-c(1,1,1,1,2,2,2,3,3,3,4,4,4,5,6,6,6,7,7,7,8,8,9,9,11,12,12,12)
y<-c(0.6,1.6,0.5,1.2,2.0,1.3,2.5,2.2,2.4,1.2,3.5,4.4,5.1,5.7,3.4,9.7,8.6,4.0,5.5,
10.5,17.5,13.4,4.5,30.4,12.4,13.4,26.2,7.4)
lm.reg<-lm(y~x)
summary(lm.reg)
plot(x,y)
abline(x,y)
运行得到:
从绘制的散点图可以看到,图中的样本点分散在回归直线的周围,样本点有扩大分散的趋势。
从回归方程的F统计量的p值和参数检验的t统计量的p值可以看到,回归方程和回归方程的参数通过了检验。
三、绘制残差和拟合值的残差图,进一步分析误差的方差齐性。
y.res<-residuals(lm.reg)
print(y.res)
y.rst<-rstandard(lm.reg)
print(y.rst)
y.fit<-predict(lm.reg)
op<-par(mfrow=c(1,2))
plot(y.res~y.fit)
plot(y.rst~y.fit)
par(op)
运行得到:
从残差图中直观的看出,残差图从左到右,逐渐散开,所有证明了回归模型方差齐性的假设不成立,需要对相应变量Y进行变换。
四、模型更新
对相应变量进行平方根变换,再进行回归诊断。
lm.new_reg<-update(lm.reg,sqrt(.)~.)
coef(lm.new_reg)
运行得到:
得到新的回归方程:Y=
n.rst<-rstandard(lm.new_reg)
n.fit<-predict(lm.new_reg)
plot(n.rst~n.fit)
运行得到对相应变量开方后的标准化散点图:
从图中可以看到,散点图的分布趋势有了明显改善。