matlab实验11.docx
- 文档编号:30192394
- 上传时间:2023-08-07
- 格式:DOCX
- 页数:26
- 大小:162.98KB
matlab实验11.docx
《matlab实验11.docx》由会员分享,可在线阅读,更多相关《matlab实验11.docx(26页珍藏版)》请在冰豆网上搜索。
matlab实验11
成绩
辽宁工程技术大学上机实验报告
实验名称
实验十一回归分析
院系
理学院
专业
信科
班级
姓名
学号
日期
20131121
实验
目的
简述本次实验目的:
1、了解回归分析基本内容
2、掌握用matlab软件求解回归分析问题。
实验
准备
你为本次实验做了哪些准备:
经过看书和看ppt完成了此次实验。
实验
进度
本次共有6个练习,完成6个。
实验
总结
日
本次实验的收获、体会、经验、问题和教训:
通过本次实验学会了有关回归分析的有关知识,怎么求线性与非线性回归模型,知道了怎么找β系数和置信区间,知道了有关回归分析有关的matlab命令,在实验的过程中遇到了很多的难题,比如怎么观察模型是不是线性的,比如怎么找到最合适的模型,这时通过看书和认真思考学会了怎么做。
本次实验收获了很多,知道了自己的不足,以后还需要勤加训练!
教师
评语
1、考察温度x对产量y的影响,测得下列10组数据:
温度(℃)
20
25
30
35
40
45
50
55
60
65
产量(kg)
13.2
15.1
16.4
17.1
17.9
18.7
19.6
21.2
22.5
24.3
求y关于x的线性回归方程,检验回归效果是否显著,并预测x=42℃时产量的估值及预测区间(置信度95%).
>>x=[20253035404550556065]';
>>X=[ones(10,1)x];
>>y=[13.215.116.417.117.918.719.621.222.524.3]’;
r=
-0.3818
0.4030
0.5879
0.1727
-0.1424
-0.4576
-0.6727
-0.1879
-0.0030
0.6818
rint=
-1.28580.5221
-0.56751.3736
-0.36391.5397
-0.92931.2748
-1.26320.9783
-1.51230.5972
-1.61790.2725
-1.25630.8806
-1.03521.0291
-0.07631.4399
>>corrcoef(x,y)
ans=
1.00000.9910
0.99101.0000
>>[b,bint,r,rint,stats]=regress(y,X)
b=
9.1212
0.2230
bint=
8.021110.2214
0.19850.2476
stats=
0.9821439.83110.00000.2333
置信区间[8.0211,10.2214]
置信区间[0.1985,0.2476]
r2=0.9821F=439.8311p=0.0000p<0.05回归模型:
y=9.1212+0.2230x成立
r2=0.9821接近1回归方程显著
X=42时y=18.4872
2、某零件上有一段曲线,为了在程序控制机床上加工这一零件,需要求这段曲线的解析表达式,在曲线横坐标xi处测得纵坐标yi共11对数据如下:
xi
0
2
4
6
8
10
12
14
16
18
20
yi
0.6
2.0
4.4
7.5
11.8
17.1
23.3
31.2
39.6
49.7
61.7
求这段曲线的纵坐标y关于横坐标x的二次多项式回归方程.(并画出图形)
>>x=[02468101214161820];
>>y=[0.62.04.47.511.817.123.331.239.649.761.7];
X=
100
124
1416
1636
1864
110100
112144
114196
116256
118324
120400
>>[p,S]=polyfit(x,y,2)
p=
0.14030.19711.0105
S=
R:
[3x3double]
df:
8
normr:
1.1097
>>Y=polyconf(x,y,S)
回归模型:
y=0.1403x2+0.1971x+1.0105
>>X=[ones(11,1)x'(x.^2)']
[b,bint,r,rint,stats]=regress(y',X);
>>Y=polyconf(p,x,S)
>>plot(x,y,'k+',x,Y,'r')
Y=
1.01051.96604.04417.244911.568317.014223.582831.274040.087850.024261.0832
3、在研究化学动力学反应过程中,建立了一个反应速度和反应物含量的数学模型,形式为
其中
是未知参数,
是三种反应物(氢,n戊烷,异构戊烷)的含量,y是反应速度.今测得一组数据如下表,试由此确定参数
,并给出置信区间.
的参考值为(1,0.05,0.02,0.1,2).
序号
反应速度y
氢x1
n戊烷x2
异构戊烷x3
1
8.55
470
300
10
2
3.79
285
80
10
3
4.82
470
300
120
4
0.02
470
80
120
5
2.75
470
80
10
6
14.39
100
190
10
7
2.54
100
80
65
8
4.35
470
190
65
9
13.00
100
300
54
10
8.50
100
300
120
11
0.05
100
80
120
12
11.32
285
300
10
13
3.13
285
190
120
解:
>>x1=[470285470470470100100470100100100285285]';
>>x2=[3008030080801908019030030080300190]';
>>x3=[1010120120101065655412012010120]';
>>x=[x1x2x3];
>>y=[8.553.794.820.022.7514.392.544.3513.008.500.0511.323.13]';
>>f=@(beta,x)(beta
(1).*x(:
2)-(1/beta(5)).*x(:
3)).*((1+beta
(2).*x(:
1)+beta(3).*x(:
2)+beta(4).*x(:
3))).^(-1);
bint=
0.1254
-0.1508
-0.0823
0.0399
0.1202
0.0702
0.0008
0.3200
-0.0282
0.1270
0.0891
-0.1619
-0.2862
>>beta0=[10.050.020.12]';
>>opt=optimset('TolFun',1e-3,'TolX',1e-3);
>>[beta,bint]=nlinfit(x,y,f,beta0,opt)
beta=
1.1292
0.0566
0.0357
0.1018
1.3160
得到beta的拟合值及95%的置信区间
4、混凝土的抗压强度随养护时间的延长而增加,现将一批混凝土作成12个试块,记录了养护日期x(日)及抗压强度y(kg/cm2)的数据:
养护时间x
2
3
4
5
7
9
12
14
17
21
28
56
抗压强度y
35
42
47
53
59
65
68
73
76
82
86
99
试求
型回归方程.
对将要拟合的非线性模型
,建立M文件volum.m如下
>>x=[234579121417212856];
>>y=[354247535965687376828699];
>>beta0=[51]';
>>[beta,r,J]=nlinfit(x',y','volum',beta0);
beta=
21.0053
19.5287
functionyhat=volum(beta,x)
yhat=beta
(1)+beta
(2)*log(x);
即得回规模型为
5、下表给出了某工厂产品的生产批量与单位成本(元)的数据,从散点图,可以明显的发现,生产批量在500以内时,单位成本对生产批量服从一种线性关系,生产批量超过500时服从另一种线性关系,此时单位成本明显下降。
希望你构造一个合适的回归模型全面地描述生产批量与单位成本的关系。
生产批量
650
340
400
800
300
600
720
480
440
540
750
单位成本
2.48
4.45
4.52
1.38
4.65
2.96
2.18
4.04
4.20
3.10
1.50
记生产批量x1<500时,单位成本为y1,生产批量x2>500时,单位成本为y2。
为了大致地分析y与x的关系,首先利用表中表中数据分别作出y1对x1和y2对x2的散点图。
由图像可知两段程线性关系,所以做以下程序:
两段直线,x小于500时:
r=
-0.0831
0.1728
-0.0070
-0.0594
-0.0233
rint=
-0.40610.2399
0.05530.2902
-0.29510.2811
-0.32850.2097
-0.39810.3514
>>x1=[340,400,300,480,440]';
>>y1=[4.45,4.52,4.65,4.04,4.20]';
>>X=[ones(size(x1))x1];
>>[b,bint,r,rint,stats]=regress(y1,X)
b=
5.5863
-0.0031
bint=
4.57436.5983
-0.0056-0.0006
stats=
0.833214.98680.03050.0136
>>stepwise(X,y1,[1,2])
回归模型:
y=5.5863-0.0031x
>>rcoplot(r,rint)
从结果可以看出,应将第二个点去掉后再进行拟合;
两段直线,x大于500时:
r=
0.0222
-0.0028
0.1439
0.2239
-0.1460
-0.2411
rint=
-0.53980.5843
-0.44940.4437
-0.32720.6151
-0.19910.6469
-0.48740.1953
-0.60150.1192
>>x2=[650,800,600,720,540,750]';
>>y2=[2.48,1.38,2.96,2.18,3.10,1.50]';
>>X=[ones(size(x2))x2];
>>[b,bint,r,rint,stats]=regress(y2,X)
b=
7.1158
-0.0072
bint=
5.43168.8000
-0.0096-0.0047
stats=
0.942065.01530.00130.0377
回归模型:
y=7.1158-0.0072x
>>stepwise(X,y2,[1,2])
>>rcoplot(r,rint)
由图可知,数据无异常点。
若直接考虑全组数据,对整个11组数据直接拟合。
整组数据:
>>x1=[650,340,400,800,300,600,720,480,440,540,750]';
>>y1=[2.48,4.45,4.52,1.38,4.65,2.96,2.18,4.04,4.20,3.10,1.50]';
r=
-0.0202
-0.2334
0.2592
-0.0638
-0.3151
0.1077
0.1728
0.3426
0.2209
-0.1749
-0.2959
rint=
-0.57460.5343
-0.71650.2498
-0.24200.7603
-0.55390.4264
-0.74250.1123
-0.44880.6642
-0.34210.6877
-0.14720.8324
-0.30380.7456
-0.72340.3737
-0.75910.1673
>>X=[ones(size(x1))x1];
>>[b,bint,r,rint,stats]=regress(y1,X)
b=
7.0779
-0.0070
bint=
6.48457.6713
-0.0081-0.0060
stats=
0.9631234.89360.00000.0612
回归模型:
y=7.10779-0.0070x
>>stepwise(X,y1,[1,2])
>>rcoplot(r,rint)
我们已经可以发现整组数据本身就服从置信度较高的线性关系。
但是题目却仍然告诉我们:
生产批量在500以内时,单位成本对生产批量服从一种线性关系,生产批量超过500时服从另一种线性关系。
于是我们开始考虑再引入一个虚拟变量A。
并加入一项
再次进行拟合。
>>y=[2.48004.45004.52001.38004.65002.96002.18004.04004.20003.10001.5000]';
>>x=[11111111111
650340400800300600720480440540750
1500030001002200040250]';
r=
-0.0632
-0.1036
0.2502
0.0904
-0.0929
-0.0010
0.2218
0.1487
0.1194
-0.3624
-0.2074
rint=
-0.54190.4156
-0.52030.3130
-0.17020.6706
-0.29250.4733
-0.43030.2446
-0.47620.4742
-0.19790.6416
-0.26630.5637
-0.33770.5766
-0.6734-0.0515
-0.61120.1964
>>[b,bint,r,rint,stats]=regress(y,x)
b=
6.1621
-0.0047
-0.0036
bint=
5.03687.2874
-0.0074-0.0020
-0.00760.0003
stats=
0.9763164.71430.00000.0443
>>stepwise(x,y,[1,2,3])
能高达97.63%。
是所有模型中准确度最高的。
6、一矿脉有13个相邻样本点,人为设定一个原点,现测得各样本点对原点的距离x,与该样本点某种金属含量y的一组数据如下,画出散点图观察二者的关系,试建立合适的回归模型,如二次曲线,双曲线,对数曲线等.
x
2
3
4
5
7
8
10
y
106.42
109.20
109.58
109.50
110.00
109.93
110.49
x
11
14
15
15
18
19
y
110.59
110.60
110.90
110.76
111.00
111.20
>>x=[23457810111415151819];
>>y=[106.42109.20109.58109.50110.00109.93110.49110.59110.60110.90110.76111.00111.20];
rint=
-2.5001-1.8727
-1.14571.9846
-0.94012.1906
-1.26042.0026
-1.12832.1739
-1.41311.9704
-1.18822.1688
-1.27002.1023
-1.77171.5790
-1.62591.6849
-1.76421.5433
-1.92891.1429
-1.86191.1276
>>plot(x,y)
排除第一个点,很明显成线性关系,采用一元线性回归分析:
>>x=[23457810111415151819];
>>y=[106.42109.2109.58109.5110109.93110.49110.59110.6110.9110.76111111.2];
>>X=[ones(size(x')),x'];
r=
-2.1864
0.4194
0.6253
0.3711
0.5228
0.2786
0.4903
0.4162
-0.0963
0.0295
-0.1105
-0.3930
-0.3671
>>[c,cint,r,rint,stats]=regress(y',X,0.05);
c=
108.2581
0.1742
cint=
107.2794109.2367
0.08910.2593
stats=
0.648420.28660.00090.5965
回归模型:
y=108.2581+0.1742x
>>rcoplot(r,rint)
若将第一个点去掉,重复上述操作,输出结果;
>>x=[3457810111415151819];
>>y=[109.2109.58109.5110109.93110.49110.59110.6110.9110.76111111.2];
>>X=[ones(size(x')),x'];
rint=
-0.50230.0735
-0.28710.3864
-0.47570.1833
-0.22540.4695
-0.42380.2962
-0.04610.5749
-0.06950.5666
-0.44420.2660
-0.25450.4445
-0.40000.3100
-0.46690.1616
-0.38800.2510
r=
-0.2144
0.0497
-0.1462
0.1220
-0.0638
0.2644
0.2485
-0.0891
0.0950
-0.0450
-0.1526
-0.0685
>>[c,cint,r,rint,stats]=regress(y',X,0.05);
c=
109.0668
0.1159
cint=
108.8264109.3072
0.09580.1360
stats=
0.9428164.80600.00000.0267
回归模型:
y=109.0668+0.1159x
>>rcoplot(r,rint)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 实验 11
![提示](https://static.bdocx.com/images/bang_tan.gif)