参数估计分为点估计和区间估计,在matlab中可以调用namefit()函数来计算参数的极大似然估计值和置信区间。而数据分析中用得最多的是正态分布参数估计。
例1
从某厂生产的滚珠中抽取10个,测得滚珠的直径(单位:mm)为x=[15.14 14.81 15.11 15.26 15.08 15.17 15.12 14.95 15.05 14.87];
若滚珠直径服从N(μ,σ2),其中μ,σ未知,求μ、σ的最大似然估计以及90%的置信区间。
>> [miu,sigma,miuci,sigmaci]=normfit(x,0.1) miu = 15.0560 sigma = 0.1397 miuci = 14.9750 15.1370 sigmaci = 0.1019 0.2298
例2
某切割机正常工作时,切割的金属棒的长度服从N(100,4),从该切割机切割的一批金属棒中随机抽取15根,测得它们的长度(单位:mm)为: x=[97 102 105 112 99 103 102 94 100 95 105 98 102 100 103];
假设总体方差不变,试检验该切割机工作是否正常,即总体均值是否还等于100mm,取显著水平5%。
>> clear >> x=[97 102 105 112 99 103 102 94 100 95 105 98 102 100 103]; >> [h,p,muci,zval]=ztest(x,100,2,0.05) h = 1 %1拒绝H0,0接受H0 p = 0.0282 %p<5%,拒绝 muci = 100.1212 102.1455 %95%置信区间 zval = 2.1947 %统计量的观测值
例3
某化肥厂用自动包装机包装化肥,某日测得9包化肥的质量(单位:kg)为x=[49.4 50.5 50.7 51.7 49.8 47.0 49.2 51.4 48.9];设化肥包装的质量服从正态分布,是否认为每包化肥平均质量为50kg,取显著水平为5%。(方差未知)
>> clear >> x=[49.4 50.5 50.7 51.7 49.8 47.0 49.2 51.4 48.9]; >> [h,p,muci,stats]=ttest(x,50,0.05) h = 0 %接受H0 p = 0.7544 muci = 48.7364 50.9524 stats = 包含以下字段的 struct: tstat: -0.3237 df: 8 sd: 1.4414
例4
甲、乙两台机床加工同一产品,从这两台机床加工的产品中抽取若干件,测得直径(单位:mm)为x=[20.1 20.0 19.3 20.6 20.2 19.9 20.0 19.9 19.1 19.9]; y=[18.6 19.1 20.0 20.0 20.0 19.7 19.9 19.6 20.2];
设甲、乙两台机床加工的产品直径分别服从正态分布试比较甲、乙两台机床加工的产品的直径是否有显著差异?取显著水平为5%.
>> x=[20.1 20.0 19.3 20.6 20.2 19.9 20.0 19.9 19.1 19.9]; >> y=[18.6 19.1 20.0 20.0 20.0 19.7 19.9 19.6 20.2]; >> alhpa=0.05;tail='both';vartype='equal'; >> [h,p,muci,stats]=ttest2(x,y,alhpa,tail,vartype) h = 0 p = 0.3191 muci = -0.2346 0.6791 stats = 包含以下字段的 struct: tstat: 1.0263 df: 17 sd: 0.4713