1回归分析.docx
- 文档编号:24349285
- 上传时间:2023-05-26
- 格式:DOCX
- 页数:15
- 大小:215.42KB
1回归分析.docx
《1回归分析.docx》由会员分享,可在线阅读,更多相关《1回归分析.docx(15页珍藏版)》请在冰豆网上搜索。
1回归分析
回归分析是处理变量之间的相关关系的一种数学方法。
用回归分析方法解决问题的大致步骤如下:
1.收集一组包含因变量和自变量的数据;
2.选定因变量和自变量之间的模型,即一个数学式子,利用数据按照最小二乘准则计算模型中的系数;
3.利用统计分析方法对不同的模型进行比较,找出与数据拟合得最好的模型;
4.判断得到的模型是否适合于这组数据;
5.利用模型对因变量做出预测或解释。
•回归分析方法有:
1.一元线性回归
2.多元线性回归
3.一元多项式回归
4.多元多项式回归
5.非线性回归
6.逐步回归
1一元线性回归
固定的未知参数
、
称为回归系数,自变量x也称为回归变量.
一元线性回归分析的主要任务是:
1、用试验值(样本值)对
、
和
作点估计;(回归系数用最小二乘估计,
的无偏估计)
2、对回归系数
、
作假设检验;
(回归方程的显著性检验
假设
被拒绝,则回归显著,认为y与x存在线性关
系,所求的线性回归方程有意义;否则回归不显著,y与x的关系
不能用一元线性回归模型来描述,所得的回归方程也无意义.)
如:
F检验法t检验法r检验法
3、在x=
处对y作预测,对y作区间估计.
2多元线性回归
1、确定回归系数的点估计值:
b=regress(Y,X)
2、求回归系数的点估计和区间估计、并检验回归模型:
[b,bint,r,rint,stats]=regress(Y,X,alpha)
Bint回归系数的区间估计
r残差
rint置信区间
Stats用于检验回归模型的统计量,有三个数值:
相关系数r2、F值、与F对应的概率p
3、画出残差及其置信区间:
rcoplot(r,rint)
例题:
1、输入数据:
x=[143145146147149150153154155156157158159
160162164]';
X=[ones(16,1)x];
Y=[8885889192939395969897969899100102]';
2、回归分析及检验:
[b,bint,r,rint,stats]=regress(Y,X)
b,bint,stats
得结果:
b=bint=
-16.0730-33.70711.5612
0.71940.60470.8340
stats=
0.9282180.95310.0000
即
;
的置信区间为[-33.7017,1.5612],
的置信区间为[0.6047,0.834];r2=0.9282,F=180.9531,p=0.0000
p<0.05,可知回归模型y=-16.073+0.7194x成立.
3、残差分析,作残差图:
rcoplot(r,rint)
4、预测及作图:
z=b
(1)+b
(2)*x
plot(x,Y,'k+',x,z,'r')
3.多项式回归
(一)一元多项式回归
y=a1xm+a2xm-1+…+amx+am+1
(1)确定多项式系数的命令:
[p,S]=polyfit(x,y,m)
其中x=(x1,x2,…,xn),y=(y1,y2,…,yn);
p=(a1,a2,…,am+1)是多项式y=a1xm+a2xm-1+…+amx+am+1
的系数;S是一个矩阵,用来估计预测误差.
(2)一元多项式回归命令:
polytool(x,y,m)
2、预测和预测误差估计:
(1)Y=polyval(p,x)求polyfit所得的回归多项式在x处的预
测值Y;
(2)[Y,DELTA]=polyconf(p,x,S,alpha)求polyfit所得
的回归多项式在x处的预测值Y及预测值的显著性为1-alpha的置信区间Y加减DELTA;alpha缺省时为0.5.
例2观测物体降落的距离s与时间t的关系,得到数据如下表,求s
t(s)
1/30
2/30
3/30
4/30
5/30
6/30
7/30
s(cm)
11.86
15.67
20.60
26.69
33.71
41.93
51.13
t(s)
8/30
9/30
10/30
11/30
12/30
13/30
14/30
s(cm)
61.49
72.90
85.44
99.08
113.77
129.54
146.48
答:
(1)关于t的回归方程
直接作二次多项式回归:
t=1/30:
1/30:
14/30;
s=[11.8615.6720.6026.6933.7141.9351.1361.4972.90
85.4499.08113.77129.54146.48];
[p,S]=polyfit(t,s,2)
方法二
化为多元线性回归:
t=1/30:
1/30:
14/30;
s=[11.8615.6720.6026.6933.7141.9351.1361.4972.90
85.4499.08113.77129.54146.48];
T=[ones(14,1)t'(t.^2)'];
[b,bint,r,rint,stats]=regress(s',T);
b,stats
得回归模型为:
预测及作图
Y=polyconf(p,t,S)
plot(t,s,'k+',t,Y,'r')
(二)多元二项式回归
命令:
rstool(x,y,’model’,alpha)
X是nm矩阵
Y是n维列向量
Model由下列4个模型中选择1个(用字符串输入,缺省时为线性模型)
linear(线性)
quadratic(完全二次)
interaction(交叉)
purequadratic(纯二次)
Alpha显著性水平
(缺省时为0.05)
例3设某商品的需求量与消费者的平均收入、商品价格的统计数
据如下,建立回归模型,预测平均收入为1000、价格为6时
的商品需求量.
需求量
100
75
80
70
50
65
90
100
110
60
收入
1000
600
1200
500
300
400
1300
1100
1300
300
价格
5
7
6
6
8
7
5
4
3
9
选择纯二次模型,即
方法一
直接用多元二项式回归:
x1=[10006001200500300400130011001300300];
x2=[5766875439];
y=[10075807050659010011060]';
x=[x1'x2'];
rstool(x,y,'purequadratic')
在Matlab工作区中输入命令:
beta,rmse
得结果:
beta=
110.5313
0.1464
-26.5709
-0.0001
1.8475
rmse=
4.5362
故回归模型为:
剩余标准差为4.5362,说明此回归模型的显著性较好.
方法二
化为多元线性回归:
X=[ones(10,1)x1'x2'(x1.^2)'(x2.^2)'];
[b,bint,r,rint,stats]=regress(y,X);
b,stats
非线性回归
(1)确定回归系数的命令:
[beta,r,J]=nlinfit(x,y,’model’,beta0)
Beta估计出的回归系数
R残差
J矩阵
输入数据x、y分别为
矩阵和n维列向量,对一元非线性回归,x为n维列向量。
beta0回归系数的初值
(2)非线性回归命令:
nlintool(x,y,’model’,beta0,alpha)
2、预测和预测误差估计:
[Y,DELTA]=nlpredci(’model’,x,beta,r,J)
求nlinfit或nlintool所得的回归函数在x处的预测值Y
例2出钢时所用的盛钢水的钢包,由于钢水对耐火材料的侵蚀,
容积不断增大.我们希望知道使用次数与增大的容积之间的关
系.对一钢包作试验,测得的数据列于下表:
使用次数
增大容积
使用次数
增大容积
2
3
4
5
6
7
8
9
6.42
8.20
9.58
9.50
9.70
10.00
9.93
9.99
10
11
12
13
14
15
16
10.49
10.59
10.60
10.80
10.60
10.90
10.76
答:
1、对将要拟合的非线性模型y=a
,建立m-文件volum.m(文件名为volum.m)如下:
functionyhat=volum(beta,x)
yhat=beta
(1)*exp(beta
(2)./x);
2、输入数据:
x=2:
16;
y=[6.428.209.589.59.7109.939.9910.4910.5910.6010.8010.60
10.9010.76];
beta0=[82]';
3、求回归系数:
[beta,r,J]=nlinfit(x',y','volum',beta0);
beta
得结果:
beta=
11.6036
-1.0641
即得回归模型为:
4、预测及作图:
[YY,delta]=nlpredci('volum',x',beta,r,J);
plot(x,y,'k+',x,YY,'r')
例5财政收入预测问题:
财政收入与国民收入、工业总产值、农业总产值、总人口、就业人口、固定资产投资等因素有关。
下表列出了1952-1981年的原始数据,试构造预测模型。
解设国民收入、工业总产值、农业总产值、总人口、就业人口、固定资产投资分别为x1、x2、x3、x4、x5、x6,财政收入为y,设变量之间的关系为:
y=ax1+bx2+cx3+dx4+ex5+fx6
使用非线性回归方法求解。
1. 对回归模型建立M文件model.m如下:
functionyy=model(beta0,X)
a=beta0
(1);
b=beta0
(2);
c=beta0(3);
d=beta0(4);
e=beta0(5);
f=beta0(6);
x1=X(:
1);
x2=X(:
2);
x3=X(:
3);
x4=X(:
4);
x5=X(:
5);
x6=X(:
6);
yy=a*x1+b*x2+c*x3+d*x4+e*x5+f*x6;
2.主程序liti6.m如下:
X=[598.00349.00461.0057482.0020729.0044.00
…………………………………………………………..
2927.006862.001273.00100072.043280.00496.00];
y=[184.00216.00248.00254.00268.00286.00357.00444.00506.00...
271.00230.00266.00323.00393.00466.00352.00303.00447.00...
564.00638.00658.00691.00655.00692.00657.00723.00922.00...
890.00826.00810.0]';
beta0=[0.50-0.03-0.600.01-0.020.35];
betafit=nlinfit(X,y,'model',beta0)
逐步回归
逐步回归的命令是:
stepwise(x,y,inmodel,alpha)
x—自变量数据,为n×m矩阵(m为自变量个数,n为每个自变量的数据量)
y—因变量数据,为n×1矩阵
inmodel—自变量初始集合的指标
inmodel矩阵的列数的指标,给出初始模型中包括的子集(缺省时设定为全部自变量)
运行stepwise命令时产生三个图形窗口:
StepwisePlot,StepwiseTable,StepwiseHistory
在StepwisePlot窗口,显示出各项的回归系数及其置信区间.
StepwiseTable窗口中列出了一个统计表,包括回归系数及其置信区间,以及模型的统计量剩余标准差(RMSE)、相关系数(R-square)、F值、与F对应的概率P.
例6水泥凝固时放出的热量y与水泥中4种化学成分x1、x2、x3、x4
有关,今测得一组数据如下,试用逐步回归法确定一个线性模
型.
序号
1
2
3
4
5
6
7
8
9
10
11
12
13
x1
7
1
11
11
7
11
3
1
2
21
1
11
10
x2
26
29
56
31
52
55
71
31
54
47
40
66
68
x3
6
15
8
8
6
9
17
22
18
4
23
9
8
x4
60
52
20
47
33
22
6
44
22
26
34
12
12
y
78.5
74.3
104.3
87.6
95.9
109.2
102.7
72.5
93.1
115.9
83.8
113.3
109.4
答:
1、数据输入:
x1=[7111117113122111110]';
x2=[26295631525571315447406668]';
x3=[615886917221842398]';
x4=[6052204733226442226341212]';
y=[78.574.3104.387.695.9109.2102.772.593.1115.983.8113.3
109.4]';
x=[x1x2x3x4];
2、逐步回归:
(1)先在初始模型中取全部自变量:
stepwise(x,y)
(3)对变量y和x1、x2作线性回归:
X=[ones(13,1)x1x2];
b=regress(y,X)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 回归 分析