MATLAB中的引數估計函式詳解及呼叫示例【聯合整理】
前言
因為最近專案上的需要,才發現MATLAB的統計工具箱中的引數估計函式,覺得很簡單很好用,現在把所有的引數估計函式整理一下,並在最後面附上呼叫示例。
參與人員
由於時間關係,這篇隨筆是兩個人一起整理的,下面是分工列表:
- 文字整理:鵬老師 部落格:https://www.cnblogs.com/PengLaoShi/
- 程式碼整理:CL_Pan_DUT 部落格:https://www.cnblogs.com/CL-Pan/
引數估計函式
引數估計式統計推斷問題,即當總體分佈的數學形式已知,用有限個引數表示估計的問題。它可以分為點估計和區間估計兩個方面。在引數模型中,最常用的是極大似然法。MATLAB的統計工具箱提供了很多引數估計函式,這些函式通常以$"fit"$結尾並採用極大似然法給出了對應概率分佈模型引數的點估計和區間估計值。常用分佈的引數估計函如下表(表一)所示:
表一:$MATLAB$引數估計函式表
函式名 |
呼叫形式 |
函式說明 |
$binofit$ |
$phat=binofit(x,n)$ $[phat,pci]=binofit(x,n)$ $[phat,pci]=binofit(x,n,\alpha)$ |
返回二項分佈的概率的最大似然估計 返回置信度為$95%$的引數估計和置信區間 返回水平$\alpha$的引數估計和置信區間 |
$poissfit$ |
$lambdahat=poissit(x)$ $[lambdahat,lambdaci]=poissfit(x)$ $[lambdahat,lambdaci]=poissfit(x,\alpha)$ |
返回泊松分佈的引數的最大似然估計
返回置信度為$95%%的引數估計和置信區間 返回水平$\alpha$的$\lambda$引數和置信區間 |
$normfit$ |
$[muhat,sigmahat,muci,sigmaci]=normfit(x)$ $[muhat,sigmahat,muci,sigmaci]=normfit(x,\alpha)$ |
返回正態分佈的最大似然估計,置信度為$95%$的置信區間
返回水平$\alpha$的期望、方差值和置信區間 |
$betafit$ |
$phat=betafit(x)$
$[phat,pci]=betafit(x,\alpha)$ |
返回$\beta$分佈引數$a$和$b$的最大似然估計 返回最大似然估計值和水平$\alpha$的置信區間 |
$unifit$ |
$[ahat,bhat]=unifit(x)$
$[ahat,bhat,aci,bci]=unifit(x)$ $[ahat,bhat,aci,bci]=unifit(x,\alpha)$ |
返回均勻分佈引數的最大似然估計
返回置信度為$95%$的引數估計和置信區間 返回水平$\alpha$的引數估計和置信區間 |
$expfit$ |
$muhat=expfit(x)$ $[muhat,muci]=expfit(x)$ $[muhat,muci]=expfit(x,\alpha)$ |
返回指數分佈引數的最大似然估計
返回置信度為$95%$的引數估計和置信區間 返回水平$\alpha$的引數估計和置信區間 |
$gamfit$ |
$phat=gamfit(x)$ $[phat,pci]=gamfit(x)$ $[phat,pci]=gamfit(x,\alpha)$ |
返回$\gamma$分佈引數的最大似然估計 返回置信度為$95%$的引數估計和置信區間 返回最大似然估計值和水平$\alpha$的置信區間 |
$weibfit$ |
$phat=weibft(x)$
$[phat,pci]=weibfit(x)$ $[phat,pci]=weibit(x,\alpha)$ |
返回韋伯分佈引數的最大似然估計 返回置信度為$95%$的引數估計和置信區間 返回返回水平$\alpha$的引數估計及其區間估計 |
$mle$ |
$phat=mle('dist',data)$
$[phat,pci]=mle('dist',data)$ $[phat,pci]=mle('dist',data,\alpha)$ $[phat,pci]=mle('dist',data,\alpha,pl)$ |
返回分佈函式名為$dist$的最大似然估計 返回置信度為$95%$的引數估計和置信區間 返回水平$\alpha$的最大似然估計值和置信區間 僅用於二項分佈,$pl$為試驗總次數 |
說明:各函式返回已給資料向量$x$的引數最大似然估計值和置信度為$\left ( 1-\alpha \right )\times 100%$的置信區間。$\alpha$的預設值為$0.05$,即置信度為$95$。
呼叫示例
clear all;
clc;
X=round(rand(1,100)*99+1);
ALPHA=0.95;
%% 二項分佈
N=100;
[PHAT,PCI]=binofit(X,N,ALPHA)
%% 泊松分佈
[lambdahat,lambdaci]=poissfit(X,ALPHA)
%% 正態分佈
[muhat,sigmahat,muci,sigmaci]=normfit(X,ALPHA)
%% beta分佈
[PHAT,PCI]=betafit(X/max(X),ALPHA)%beta分佈資料必須在0-1之間
%% 均勻分佈
[ahat,bhat,ACI,BCI]=unifit(X,ALPHA)
%% 指數分佈
[muhat,muci]=expfit(X,ALPHA)
%% 伽馬分佈
[PHAT,PCI]=gamfit(X,ALPHA)
%% 韋伯分佈
[PHAT,PCI]=wblfit(X,ALPHA)%高版本weibfit被刪了,換成了這個
%% 分佈函式為‘dist’
a=0.05;
N=100;
X=10;
[PHAT,PCI]=mle('bino',10,a,N)
參考文獻連結
統計工具箱簡介 - 豆丁網 https://www.docin.com/p-613905503.html