本博文源于matlab概率论运用。学过《概率论》的同学都知道,极大似然估计一般用于区间估计的。而matlab已经将其封装好由我们自己调用。
参数估计的MATLAB函数
函数 | 功能 |
---|---|
[mu,sigma,muci,sigmaci] = normfit(x,alpha) | 正态总体的均值、标准差的极大似然估计mu和sigma,返回在显著性水平alpha下的均值、标准差的置信区间muci和sigmaci,x是样本(数组或矩阵),alpha默认设定为0.05 |
[mu,muci]= expfit(x,alpha) | 指数分布的极大似然估计,返回显著性水平alpha下的置信区间muci,x是样本(数组或矩阵),alpha默认设定为0.05 |
[a,b,aci,bci] = unifig(x,alpha) | 均匀分布的极大似然估计,返回显著性水平alpha下的置信区间aci,x是样本(数组或矩阵),alpha默认设定为0.05 |
[p,pci] = binofit(x,n,alpha) | 二项分布的极大似然估计,返回显著性水平alpha下的置信区间pci,x是样本(数组或矩阵),alpha默认设定为0.05 |
[lambda,labdaci] = poissfit(x,alpha) | 泊松分布的极大似然估计,返回显著性水平alpha下的置信区间lambdaci,x是样本(数组或矩阵),alpha默认设定为0.05 |
例子:下面是某厂的瓶装运动饮料体积,求均值、标准差的极大似然估计值及置信水平为0.90的置信区间
数据如下:
595 602 610 585 618 615 605 620 600 606
我们运用表格中的第一个函数即可求得
>> x=[595 602 610 585 618 615 605 620 600 606]
x =
595 602 610 585 618 615 605 620 600 606
>> [mu,sigma,muci,sigmaci] = normfit(x,0.90)
mu =
605.6000
sigma =
10.8033
muci =
605.1584
606.0416
sigmaci =
10.8864
11.5724
>>
答:置信水平为0.90时,均值及标准差的极大似然估计值分别是605.6000与10.8033.均值及标准差的置信区间分别为(605.1584,606.0416)和(10.8864,11.5724)