常见分布的参数估计

通过指定分布类型,使用mle函数可以求得服从多种分布的总体的参数估计量。但MATLAB的统计工具箱中还提供了具体函数的参数估计函数,如表1-13所示。

表1-13 常见分布的参数估计函数及其语法格式

函 数 名 参数估计对应的分布 调 用 格 式
betafit 贝塔分布 phat = betafit(x) [phat, pci] = betafit(x, alpha)
betalike 贝塔对数似然函数 logL=betalike(params, data) [logL, info]=betalike(params, data)
binofit 二项分布 phat=binofit(x, n) [phat, pci]=binofit(x, n) [phat, pci]=binofit(x, n, alpha)
expfit 指数分布 muhat=expfit(x) [muhat, muci]=expfit(x) [muhat, muci]=expfit(x, alpha)
gamfit 伽马分布 phat=gamfit(x) [phat, pci]=gmfit(x) [phat, pci]=gamfit(x, alpha)
gamlike 伽马似然函数 logL=gamlike(params, data) [logL, info]=gamlike(params, data)
mle 最大似然估计 phat=mle(‘dist’, data) [phat, pci]=mle(‘dist’, data) [phat, pci]=mle(‘dist’, data, alpha) [phat, pci]=mle(‘dist’,data, alpha, p1)
normlike 正态对数似然函数 L=normlike(params,data)
normfit 正态分布 [muhat,sigmahat,muci,sigmaci]=normfit(X) [muhat,sigmahat,muci,sigmaci]=normfit(X,alpha)
poissfit 泊松分布 lambdahat=poissfit(X) [lambdahat,lambdaci]=poissfit(X) [lambdahat,lambdaci]=poissfit(X,alpha)
unifit 均匀分布 [ahat,bhat]=unifit(X) [ahat,bhat,ACI,BCI]=unifit(X) [ahat,bhat,ACI,BCI]=unifit(X,alpha)
weibfit 韦伯分布 phat=weibfit(x) [phat,pci]=weibfit(x) [phat,pci]=weibfit(x,alpha)
weiblike 韦伯对数似然函数 logL=weiblike(params,data) [logL,info]=weiblike(params,data)

例如,用normfit函数对正态分布总体进行参数估计。其语法格式和说明如下所示。

[muhat, sigmahat, muci, sigmaci] = normfit(X):对于给定的服从正态分布的矩阵X,返回参数 和 的估计值muhat和sigmahat。muci和sigmaci为 和 的95%置信区间。 muci和sigmaci向量分别有两行,其列数与矩阵X的列数相同。上下两行的数据分别为置信区间的下限和上限。

[muhat, sigmahat, muci, sigmaci] = normfit(X, alpha):进行参数估计并计算100(1-alpha)置信区间。如当alpha = 0.01时,给出99%置信区间。

用normfit函数求解例1-37。

code.matlab
>> X=[1050 1100 1120 1250 1280];
>> [muhat, sigmahat, muci, sigmaci] = normfit(X, 0.05)
muhat =
        1160
sigmahat =
   99.7497
muci =
  1.0e+003 *
    1.0361
    1.2839
sigmaci =
   59.7633
  286.6363

现在求得灯泡寿命平均值的置信区间为[1036.1 1283.9],与用mle函数计算的结果相比略宽一些。