data=[78,79,80,81,82,83,84,85,86,87;
23.8,27.6,31.6,32.4,33.7,34.9,43.2,52.8,63.8,73.4; 41.4,51.8,61.7,67.9,68.7,77.5,95.9,137.4,155.0,175.0]
2.将矩阵data的数据保存在文件data1中:save data1 data 3.进行统计分析时,先用命令:load data1
调用数据文件data1中的数据,再用以下命令分别将矩阵data的第一、二、三行的数据赋给变量t、x、y: t=data(1,:) x=data(2,:) y=data(3,:)
若要调用矩阵data的第j列的数据,可用命令: data(:,j)
例10 一道工序用自动化车床连续加工某种零件,由于刀具损坏等会出现故障.故障是完全随机的,并假定生产任一零件时出现故障机会均相同.工作人员是通过检查零件来确定工序是否出现故障的.现积累有100次故障纪录,故障出现时该刀具完成的零件数如下: 459 362 624 542 509 584 433 748 815 505 612 452 434 982 640 742 565 706 593 680 926 653 164 487 734 608 428 1153 593 844 527 552 513 781 474 388 824 538 862 659 775 859 755 49 697 515 628 954 771 609 402 960 885 610 292 837 473 677 358 638 699 634 555 570 84 416 606 1062 484 120 447 654 564 339 280 246 687 539 790 581 621 724 531 512 577 496 468 499 544 645 764 558 378 765 666 763 217 715 310 851 试观察该刀具出现故障时完成的零件数属于哪种分布.
x=[459 362 624 542 509 584 433 748 815 505.... 612 452 434 982 640 742 565 706 593 680.... 926 653 164 487 734 608 428 1153 593 844.... 527 552 513 781 474 388 824 538 862 659.... 775 859 755 49 697 515 628 954 771 609.... 402 960 885 610 292 837 473 677 358 638.... 699 634 555 570 84 416 606 1062 484 120.... 447 654 564 339 280 246 687 539 790 581.... 621 724 531 512 577 496 468 499 544 645.... 764 558 378 765 666 763 217 715 310 851]
作频数直方图 hist(x,10)
分布的正态性检验 normplot(x) 4.参数估计:
[muhat,sigmahat,muci,sigmaci]=normfit(x)
[h,sig,ci] = ttest(x)
检验结果: 1. 布尔变量h=0, 表示不拒绝零假设. 说
明提出的假设寿命均值594是合理的. 2. 95%的置信区间为[553.5,634.5], 它 完全包括594, 且精度很高.
3. sig值为1, 远超过0.5, 不能拒绝零假 设.
练习:1.某校60名学生的一次考试成绩如下:
93 75 83 93 91 85 84 82 77 76 77 95 94 89 91 88 86 83 96 81 79 97 78 75 67 69 68 84 83 81 75 66 85 70 94 84 83 82 80 78 74 73 76 70 86 76 90 89 71 66 86 73 80 94 79 78 77 63 53 55 1)计算均值、标准差、极差、偏度、峰度,画出直方图; 2)检验分布的正态性;
3)若检验符合正态分布,估计正态分布的参数并检验参数.
练习2.据说某地汽油的价格是每加仑115美分,为了验证这种说法,一位学者开车随机选择了一些加油站,得到某年1月和2月的数据如下:
1月:119 117 115 116 112 121 115 122 116 118 109 112 119 112 117 113 114 109 109 118 2月:118 119 115 122 118 121 120 122 128 116 120 123 121 119 117 119 128 126 118 125 1)分别用两个月的数据验证这种说法的可靠性; 2)分别给出1月和2月汽油价格的置信区间; 3)给出1月和2月汽油价格差的置信区间.
回归分析: 1.输入数据:
x=[143 145 146 147 149 150 153 154 155 156 157 158 159 160 162 164]'; X=[ones(16,1) x];
Y=[88 85 88 91 92 93 93 95 96 98 97 96 98 99 100 102]'; 2.回归分析及检验:
[b,bint,r,rint,stats]=regress(Y,X) 3.残差分析,作残差图:
rcoplot(r,rint)
从残差图可以看出,除第二个数据外,其余数据的残差离零点均较近,且残差的置信区间均包含零点,这说明回归模型 y=-16.073+0.7194x能较好的符合原始数据,而第二个数据可视为异常点.
4.预测及作图:
z=b(1)+b(2) *x b(1) 为参数值 plot(x,Y,'k+',x,z,'r')
5.物体降落t 与s 关系
t=1/30:1/30:14/30;
s=[11.86 15.67 20.60 26.69 33.71 41.93 51.13 61.49 72.90 85.44 99.08 113.77 129.54 146.48]; [p,S]=polyfit(t,s,2) 预测及作图
Y=polyconf(p,t,S) plot(t,s,'k+',t,Y,'r')
6.例 设某商品的需求量与消费者的平均收入、商品价格的统计数 据如下,建立回归模型,预测平均收入为1000、价格为6时 的商品需求量.
直接用多元二项式回归:
x1=[1000 600 1200 500 300 400 1300 1100 1300 300]; x2=[5 7 6 6 8 7 5 4 3 9];
y=[100 75 80 70 50 65 90 100 110 60]'; x=[x1' x2'];
rstool(x,y,'purequadratic') 解释在回归分析ppt中
法二 多元线性回归
X=[ones(10,1) x1' x2' (x1.^2)' (x2.^2)']; [b,bint,r,rint,stats]=regress(y,X);
非线性回归
例 出钢时所用的盛钢水的钢包,由于钢水对耐火材料的侵蚀,
容积不断增大.我们希望知道使用次数与增大的容积之间的关 系.对一钢包作试验,测得的数据列于下表: 使用次数增大容积使用次数增大容积 26.421010.49 38.201110.59
9.581210.60 49.501310.80 5 69.701410.60 710.001510.90899.939.991610.76建立M文件
function yhat=volum(beta,x) yhat=beta(1)*exp(beta(2)./x); >>x=2:16;
y=[6.42 8.20 9.58 9.5 9.7 10 9.93 9.99 10.49 10.59 10.60 10.80 10.60 10.90 10.76]; beta0=[8 2]';
[beta,r,J]=nlinfit(x,y,'volum',beta0)
例 财政收入预测问题:财政收入与国民收入、工业总产值、农业总产值、总人口、就业人口、固定资产投资等因素有关.下表列出了1952—1981年的原始数据,试构造预测模型.
年份 国民收入(亿元) 工业总产值(亿元) 农业总产总人口 值(亿元) (万人) 就业人口(万人) 固定资产投资(亿元) 财政收入(亿元) 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 598 586 707 737 825 837 1028 1114 1079 757 677 779 943 1152 1322 1249 1187 1372 1638 1780 1833 1978 1993 2121 2052 2189 2475 2702 2791 2927 349 455 520 558 715 798 1235 1681 1870 1156 964 1046 1250 1581 1911 1647 1565 2101 2747 3156 3365 3684 3696 4254 4309 4925 5590 6065 6592 6862 461 475 491 529 556 575 598 509 444 434 461 514 584 632 687 697 680 688 767 790 789 855 891 932 955 971 1058 1150 1194 1273 57482 58796 60266 61465 62828 64653 65994 67207 66207 65859 67295 69172 70499 72538 74542 76368 78534 80671 82992 85229 87177 89211 90859 92421 93717 94974 96259 97542 98705 100072 20729 21364 21832 22328 23018 23711 26600 26173 25880 25590 25110 26640 27736 28670 29805 30814 31915 33225 34432 35620 35854 36652 37369 38168 38834 39377 39856 40581 41896 43280 44 89 97 98 150 139 256 338 380 138 66 85 129 175 212 156 127 207 312 355 354 374 393 462 443 454 550 564 568 496 184 216 248 254 268 286 357 444 506 271 230 266 323 393 466 352 303 447 564 638 658 691 655 692 657 723 922 890 826 810
X=[598.00 349.00 461.00 57482.00 20729.00 44.00
………………………………………………………….. 2927.00 6862.00 1273.00 100072.0 43280.00 496.00];
y=[184.00 216.00 248.00 254.00 268.00 286.00 357.00 444.00 506.00 ... 271.00 230.00 266.00 323.00 393.00 466.00 352.00 303.00 447.00 ... 564.00 638.00 658.00 691.00 655.00 692.00 657.00 723.00 922.00 ... 890.00 826.00 810.0]';
beta0=[0.50 -0.03 -0.60 0.01 -0.02 0.35]; betafit = nlinfit(X,y,'model',beta0)
betafit = 0.5243 -0.0294 -0.6304 0.0112 -0.0230 0.3658
即y= 0.5243x1-0.0294x2-0.6304x3+0.0112x4-0.0230x5+0.3658x6
逐步回归
例 水泥凝固时放出的热量y与水泥中4种化学成分x1、x2、x3、 x4有关,今测得一组数据如下,试用逐步回归法确定一个线性模型. 序号 1 7 26 6 60 78.5 2 1 29 15 52 74.3 3 11 56 8 20 104.3 4 11 31 8 47 87.6 5 7 52 6 33 95.9 6 11 55 9 22 109.2 7 3 71 17 6 102.7 8 1 31 22 44 72.5 9 2 54 18 22 93.1 10 21 47 4 26 115.9 11 1 40 23 34 83.8 12 11 66 9 12 113.3 13 10 68 8 12 109.4 x1 x2 x3 x4 y
1.数据输入:
>> 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]'; >> x=[x1 x2 x3 x4]; >> stepwise(x,y)
>> X=[ones(13,1) x1 x2]; >> b=regress(y,X) b =
52.5773 1.4683 0.6623
因篇幅问题不能全部显示,请点此查看更多更全内容