本章介紹MATLAB在機率統計中的若幹指令和使用格式,這些指令存放于MatlabR12\Toolbox\Stats中。
指令 參數為N,P的二項随機資料
函數 binornd
格式 R = binornd(N,P) %N、P為二項分布的兩個參數,傳回服從參數為N、P的二項分布的随機數,N、P大小相同。
R = binornd(N,P,m) %m指定随機數的個數,與R同維數。
R = binornd(N,P,m,n) %m,n分别表示R的行數和列數
例4-1
>> R=binornd(10,0.5)
R =
3
>> R=binornd(10,0.5,1,6)
8 1 3 7 6 4
>> R=binornd(10,0.5,[1,10])
6 8 4 6 7 5 3 5 6 2
>> R=binornd(10,0.5,[2,3])
7 5 8
6 5 6
>>n = 10:10:60;
>>r1 = binornd(n,1./n)
r1 =
2 1 0 1 1 2
>>r2 = binornd(n,1./n,[1 6])
r2 =
0 1 2 1 3 1
指令 參數為μ、σ的正态分布的随機資料
函數 normrnd
格式 R = normrnd(MU,SIGMA) %傳回均值為MU,标準差為SIGMA的正态分布的随機資料,R可以是向量或矩陣。
R = normrnd(MU,SIGMA,m) %m指定随機數的個數,與R同維數。
R = normrnd(MU,SIGMA,m,n) %m,n分别表示R的行數和列數
例4-2
>>n1 = normrnd(1:6,1./(1:6))
n1 =
2.1650 2.3134 3.0250 4.0879 4.8607 6.2827
>>n2 = normrnd(0,1,[1 5])
n2 =
0.0591 1.7971 0.2641 0.8717 -1.4462
>>n3 = normrnd([1 2 3;4 5 6],0.1,2,3) %mu為均值矩陣
n3 =
0.9299 1.9361 2.9640
4.1246 5.0577 5.9864
>> R=normrnd(10,0.5,[2,3]) %mu為10,sigma為0.5的2行3列個正态随機數
9.7837 10.0627 9.4268
9.1672 10.1438 10.5955
常見分布的随機數的使用格式與上面相同
表4-1 随機數産生函數表
函數名
調用形式
注 釋
Unifrnd
unifrnd ( A,B,m,n)
[A,B]上均勻分布(連續) 随機數
Unidrnd
unidrnd(N,m,n)
均勻分布(離散)随機數
Exprnd
exprnd(Lambda,m,n)
參數為Lambda的指數分布随機數
Normrnd
normrnd(MU,SIGMA,m,n)
參數為MU,SIGMA的正态分布随機數
chi2rnd
chi2rnd(N,m,n)
自由度為N的卡方分布随機數
Trnd
trnd(N,m,n)
自由度為N的t分布随機數
Frnd
frnd(N1, N2,m,n)
第一自由度為N1,第二自由度為N2的F分布随機數
gamrnd
gamrnd(A, B,m,n)
參數為A, B的分布随機數
betarnd
betarnd(A, B,m,n)
lognrnd
lognrnd(MU, SIGMA,m,n)
參數為MU, SIGMA的對數正态分布随機數
nbinrnd
nbinrnd(R, P,m,n)
參數為R,P的負二項式分布随機數
ncfrnd
ncfrnd(N1, N2, delta,m,n)
參數為N1,N2,delta的非中心F分布随機數
nctrnd
nctrnd(N, delta,m,n)
參數為N,delta的非中心t分布随機數
ncx2rnd
ncx2rnd(N, delta,m,n)
參數為N,delta的非中心卡方分布随機數
raylrnd
raylrnd(B,m,n)
參數為B的瑞利分布随機數
weibrnd
weibrnd(A, B,m,n)
參數為A, B的韋伯分布随機數
binornd
binornd(N,P,m,n)
參數為N, p的二項分布随機數
geornd
geornd(P,m,n)
參數為 p的幾何分布随機數
hygernd
hygernd(M,K,N,m,n)
參數為 M,K,N的超幾何分布随機數
Poissrnd
poissrnd(Lambda,m,n)
參數為Lambda的泊松分布随機數
指令 求指定分布的随機數
函數 random
格式 y = random('name',A1,A2,A3,m,n) %name的取值見表4-2;A1,A2,A3為分布的參數;m,n指定随機數的行和列
例4-3 産生12(3行4列)個均值為2,标準差為0.3的正态分布随機數
>> y=random('norm',2,0.3,3,4)
y =
2.3567 2.0524 1.8235 2.0342
1.9887 1.9440 2.6550 2.3200
2.0982 2.2177 1.9591 2.0178
指令 通用函數計算機率密度函數值
函數 pdf
格式 Y=pdf(name,K,A)
Y=pdf(name,K,A,B)
Y=pdf(name,K,A,B,C)
說明 傳回在X=K處、參數為A、B、C的機率密度值,對于不同的分布,參數個數是不同;name為分布函數名,其取值如表4-2。
表4-2 常見分布函數表
name的取值
函數說明
'beta'
或
'Beta'
Beta分布
'bino'
'Binomial'
二項分布
'chi2'
'Chisquare'
卡方分布
'exp'
'Exponential'
指數分布
'f'
'F'
F分布
'gam'
'Gamma'
GAMMA分布
'geo'
'Geometric'
幾何分布
'hyge'
'Hypergeometric'
超幾何分布
'logn'
'Lognormal'
對數正态分布
'nbin'
'Negative Binomial'
負二項式分布
'ncf'
'Noncentral F'
非中心F分布
'nct'
'Noncentral t'
非中心t分布
'ncx2'
'Noncentral Chi-square'
非中心卡方分布
'norm'
'Normal'
正态分布
'poiss'
'Poisson'
泊松分布
'rayl'
'Rayleigh'
瑞利分布
't'
'T'
T分布
'unif'
'Uniform'
均勻分布
'unid'
'Discrete Uniform'
離散均勻分布
'weib'
'Weibull'
Weibull分布
例如二項分布:設一次試驗,事件A發生的機率為p,那麼,在n次獨立重複試驗中,事件A恰好發生K次的機率P_K為:P_K=P{X=K}=pdf('bino',K,n,p)
例4-4 計算正态分布N(0,1)的随機變量X在點0.6578的密度函數值。
解:>> pdf('norm',0.6578,0,1)
ans =
0.3213
例4-5 自由度為8的卡方分布,在點2.18處的密度函數值。
解:>> pdf('chi2',2.18,8)
0.0363
指令 二項分布的機率值
函數 binopdf
格式 binopdf (k, n, p) %等同于, p — 每次試驗事件A發生的機率;K—事件A發生K次;n—試驗總次數
指令 泊松分布的機率值
函數 poisspdf
格式 poisspdf(k, Lambda) %等同于
指令 正态分布的機率值
函數 normpdf(K,mu,sigma) %計算參數為μ=mu,σ=sigma的正态分布密度函數在K處的值
專用函數計算機率密度函數清單如表4-3。
表4-3 專用函數計算機率密度函數表
注 釋
Unifpdf
unifpdf (x, a, b)
[a,b]上均勻分布(連續)機率密度在X=x處的函數值
unidpdf
Unidpdf(x,n)
均勻分布(離散)機率密度函數值
Exppdf
exppdf(x, Lambda)
參數為Lambda的指數分布機率密度函數值
normpdf
normpdf(x, mu, sigma)
參數為mu,sigma的正态分布機率密度函數值
chi2pdf
chi2pdf(x, n)
自由度為n的卡方分布機率密度函數值
Tpdf
tpdf(x, n)
自由度為n的t分布機率密度函數值
Fpdf
fpdf(x, n1, n2)
第一自由度為n1,第二自由度為n2的F分布機率密度函數值
gampdf
gampdf(x, a, b)
參數為a, b的分布機率密度函數值
betapdf
betapdf(x, a, b)
lognpdf
lognpdf(x, mu, sigma)
參數為mu, sigma的對數正态分布機率密度函數值
nbinpdf
nbinpdf(x, R, P)
參數為R,P的負二項式分布機率密度函數值
Ncfpdf
ncfpdf(x, n1, n2, delta)
參數為n1,n2,delta的非中心F分布機率密度函數值
Nctpdf
nctpdf(x, n, delta)
參數為n,delta的非中心t分布機率密度函數值
ncx2pdf
ncx2pdf(x, n, delta)
參數為n,delta的非中心卡方分布機率密度函數值
raylpdf
raylpdf(x, b)
參數為b的瑞利分布機率密度函數值
weibpdf
weibpdf(x, a, b)
參數為a, b的韋伯分布機率密度函數值
binopdf
binopdf(x,n,p)
參數為n, p的二項分布的機率密度函數值
geopdf
geopdf(x,p)
參數為 p的幾何分布的機率密度函數值
hygepdf
hygepdf(x,M,K,N)
參數為 M,K,N的超幾何分布的機率密度函數值
poisspdf
poisspdf(x,Lambda)
參數為Lambda的泊松分布的機率密度函數值
例4-6 繪制卡方分布密度函數在自由度分别為1、5、15的圖形
>> x=0:0.1:30;
>> y1=chi2pdf(x,1); plot(x,y1,':')
>> hold on
>> y2=chi2pdf(x,5);plot(x,y2,'+')
>> y3=chi2pdf(x,15);plot(x,y3,'o')
>> axis([0,30,0,0.2]) %指定顯示的圖形區域
則圖形為圖4-1。

1.二項分布
例4-7
>>x = 0:10;
>>y = binopdf(x,10,0.5);
>>plot(x,y,'+')
2.卡方分布
例4-8
>> x = 0:0.2:15;
>>y = chi2pdf(x,4);
>>plot(x,y)
圖4-2
3.非中心卡方分布
例4-9
>>x = (0:0.1:10)';
>>p1 = ncx2pdf(x,4,2);
>>p = chi2pdf(x,4);
>>plot(x,p,'--',x,p1,'-')
4.指數分布
例4-10
>>x = 0:0.1:10;
>>y = exppdf(x,2);
圖4-3
5.F分布
例4-11
>>x = 0:0.01:10;
>>y = fpdf(x,5,3);
6.非中心F分布
例4-12
>>x = (0.01:0.1:10.01)';
>>p1 = ncfpdf(x,5,20,10);
>>p = fpdf(x,5,20);
圖4-4
7.Γ分布
例4-13
>>x = gaminv((0.005:0.01:0.995),100,10);
>>y = gampdf(x,100,10);
>>y1 = normpdf(x,1000,100);
>>plot(x,y,'-',x,y1,'-.')
8.對數正态分布
例4-14
>>x = (10:1000:125010)';
>>y = lognpdf(x,log(20000),1.0);
>>set(gca,'xtick',[0 30000 60000 90000 120000])
>>set(gca,'xticklabel',str2mat('0','$30,000','$60,000',…
'$90,000','$120,000'))
圖4-5
9.負二項分布
例4-15
>>x = (0:10);
>>y = nbinpdf(x,3,0.5);
10.正态分布
例4-16
>> x=-3:0.2:3;
>> y=normpdf(x,0,1);
>> plot(x,y)
圖4-6
11.泊松分布
例4-17
>>x = 0:15;
>>y = poisspdf(x,5);
12.瑞利分布
例4-18
>>x = [0:0.01:2];
>>p = raylpdf(x,0.5);
>>plot(x,p)
圖4-7
13.T分布
例4-19
>>x = -5:0.1:5;
>>y = tpdf(x,5);
>>z = normpdf(x,0,1);
>>plot(x,y,'-',x,z,'-.')
14.威布爾分布
例4-20
>> t=0:0.1:3;
>> y=weibpdf(t,2,2);
>> plot(y)
圖4-8
指令 通用函數cdf用來計算随機變量的機率之和(累積機率值)
函數 cdf
格式
cdf('name',K,A)
cdf('name',K,A,B)
cdf('name',K,A,B,C)
說明 傳回以name為分布、随機變量X≤K的機率之和的累積機率值,name的取值見表4-1 常見分布函數表
例4-21 求标準正态分布随機變量X落在區間(-∞,0.4)内的機率(該值就是機率統計教材中的附表:标準正态數值表)。
解:
>> cdf('norm',0.4,0,1)
0.6554
例4-22 求自由度為16的卡方分布随機變量落在[0,6.91]内的機率
>> cdf('chi2',6.91,16)
0.0250
指令 二項分布的累積機率值
函數 binocdf
格式 binocdf (k, n, p) %n為試驗總次數,p為每次試驗事件A發生的機率,k為n次試驗中事件A發生的次數,該指令傳回n次試驗中事件A恰好發生k次的機率。
指令 正态分布的累積機率值
函數 normcdf
格式 normcdf() %傳回F(x)=的值,mu、sigma為正态分布的兩個參數
例4-23 設X~N(3, 22)
(1)求
(2)确定c,使得
解(1) p1=
p2=
p3=
p4=
則有:
>>p1=normcdf(5,3,2)-normcdf(2,3,2)
p1 =
0.5328
>>p2=normcdf(10,3,2)-normcdf(-4,3,2)
p2 =
0.9995
>>p3=1-normcdf(2,3,2)-normcdf(-2,3,2)
p3 =
0.6853
>>p4=1-normcdf(3,3,2)
p4 =
0.5000
專用函數計算累積機率值函數清單如表4-4。
表4-4 專用函數的累積機率值函數表
注 釋
unifcdf
unifcdf (x, a, b)
[a,b]上均勻分布(連續)累積分布函數值 F(x)=P{X≤x}
unidcdf
unidcdf(x,n)
均勻分布(離散)累積分布函數值 F(x)=P{X≤x}
expcdf
expcdf(x, Lambda)
參數為Lambda的指數分布累積分布函數值 F(x)=P{X≤x}
normcdf
normcdf(x, mu, sigma)
參數為mu,sigma的正态分布累積分布函數值 F(x)=P{X≤x}
chi2cdf
chi2cdf(x, n)
自由度為n的卡方分布累積分布函數值 F(x)=P{X≤x}
tcdf
tcdf(x, n)
自由度為n的t分布累積分布函數值 F(x)=P{X≤x}
fcdf
fcdf(x, n1, n2)
第一自由度為n1,第二自由度為n2的F分布累積分布函數值
gamcdf
gamcdf(x, a, b)
參數為a, b的分布累積分布函數值 F(x)=P{X≤x}
betacdf
betacdf(x, a, b)
logncdf
logncdf(x, mu, sigma)
參數為mu, sigma的對數正态分布累積分布函數值
nbincdf
nbincdf(x, R, P)
參數為R,P的負二項式分布概累積分布函數值 F(x)=P{X≤x}
ncfcdf
ncfcdf(x, n1, n2, delta)
參數為n1,n2,delta的非中心F分布累積分布函數值
nctcdf
nctcdf(x, n, delta)
參數為n,delta的非中心t分布累積分布函數值 F(x)=P{X≤x}
ncx2cdf
ncx2cdf(x, n, delta)
參數為n,delta的非中心卡方分布累積分布函數值
raylcdf
raylcdf(x, b)
參數為b的瑞利分布累積分布函數值 F(x)=P{X≤x}
weibcdf
weibcdf(x, a, b)
參數為a, b的韋伯分布累積分布函數值 F(x)=P{X≤x}
binocdf
binocdf(x,n,p)
參數為n, p的二項分布的累積分布函數值 F(x)=P{X≤x}
geocdf
geocdf(x,p)
參數為 p的幾何分布的累積分布函數值 F(x)=P{X≤x}
hygecdf
hygecdf(x,M,K,N)
參數為 M,K,N的超幾何分布的累積分布函數值
poisscdf
poisscdf(x,Lambda)
參數為Lambda的泊松分布的累積分布函數值 F(x)=P{X≤x}
說明 累積機率函數就是分布函數F(x)=P{X≤x}在x處的值。
MATLAB中的逆累積分布函數是已知,求x。
逆累積分布函數值的計算有兩種方法
指令 icdf 計算逆累積分布函數
格式 icdf('name',P,a1,a2,a3)
說明 傳回分布為name,參數為,累積機率值為P的臨界值,這裡name與前面表4.1相同。
如果,則
例4-24 在标準正态分布表中,若已知=0.975,求x
解:>> x=icdf('norm',0.975,0,1)
x =
1.9600
例4-25 在分布表中,若自由度為10,=0.975,求臨界值Lambda。
解:因為表中給出的值滿足,而逆累積分布函數icdf求滿足的臨界值。是以,這裡的取為0.025,即
>> Lambda=icdf('chi2',0.025,10)
Lambda =
3.2470
例4-26 在假設檢驗中,求臨界值問題:
已知:,查自由度為10的雙邊界檢驗t分布臨界值
>>lambda=icdf('t',0.025,10)
lambda =
-2.2281
指令 正态分布逆累積分布函數
函數 norminv
格式 X=norminv(p,mu,sigma) %p為累積機率值,mu為均值,sigma為标準差,X為臨界值,滿足:p=P{X≤x}。
例4-27 設,确定c使得。
解:由得,=0.5,是以
>>X=norminv(0.5, 3, 2)
X=
3
關于常用臨界值函數可查下表4-5。
表4-5 常用臨界值函數表
unifinv
x=unifinv (p, a, b)
均勻分布(連續)逆累積分布函數(P=P{X≤x},求x)
unidinv
x=unidinv (p,n)
均勻分布(離散)逆累積分布函數,x為臨界值
expinv
x=expinv (p, Lambda)
指數分布逆累積分布函數
norminv
x=Norminv(x,mu,sigma)
正态分布逆累積分布函數
chi2inv
x=chi2inv (x, n)
卡方分布逆累積分布函數
tinv
x=tinv (x, n)
t分布累積分布函數
finv
x=finv (x, n1, n2)
F分布逆累積分布函數
gaminv
x=gaminv (x, a, b)
分布逆累積分布函數
betainv
x=betainv (x, a, b)
logninv
x=logninv (x, mu, sigma)
對數正态分布逆累積分布函數
nbininv
x=nbininv (x, R, P)
負二項式分布逆累積分布函數
ncfinv
x=ncfinv (x, n1, n2, delta)
非中心F分布逆累積分布函數
nctinv
x=nctinv (x, n, delta)
非中心t分布逆累積分布函數
ncx2inv
x=ncx2inv (x, n, delta)
非中心卡方分布逆累積分布函數
raylinv
x=raylinv (x, b)
瑞利分布逆累積分布函數
weibinv
x=weibinv (x, a, b)
韋伯分布逆累積分布函數
binoinv
x=binoinv (x,n,p)
二項分布的逆累積分布函數
geoinv
x=geoinv (x,p)
幾何分布的逆累積分布函數
hygeinv
x=hygeinv (x,M,K,N)
超幾何分布的逆累積分布函數
poissinv
x=poissinv (x,Lambda)
泊松分布的逆累積分布函數
例4-28 公共汽車門的高度是按成年男子與車門頂碰頭的機會不超過1%設計的。設男子身高X(機關:cm)服從正态分布N(175,36),求車門的最低高度。
解:設h為車門高度,X為身高
求滿足條件的h,即,是以
>>h=norminv(0.99, 175, 6)
h =
188.9581
例4-29 卡方分布的逆累積分布函數的應用
在MATLAB的編輯器下建立M檔案如下:
n=5; a=0.9; %n為自由度,a為置信水準或累積機率
x_a=chi2inv(a,n); %x