56 节 概率论与数理统计.ppt
5.6节节 概率论与数理统计概率论与数理统计一一 各种统计分布函数各种统计分布函数表5-6-1中列出了20种分布函数,统计工具箱提供了包括分布函数cdf(Cumulattive Distribution Function)、概率密度函数pdf(Probability Distribution Function)、分布函数的逆函数inv(Inverse Cumulattive Distribution Function)以及这些分布的理论统计特性(均值和方差)计算函数stat。表5-6-1 MATLAB中表示各种概率分布的前缀文字连续(数据)连续(统计量)离散(数据)贝塔分布(beta)2分布(Chi2)二项式分布(bino).指数分布(exp)非中心2分布(ncx2)离散均匀分布(unid)-分布(gam)F-分布(f).几何分布(geo).对数正态分布(logn)非中心F-分布(ncf)超几何分布(hyge)正态分布(norm)T-分布(t).负二项式分布(nbin)瑞利分布(rayl)非中心T分布-(nct)泊松分布(poiss)均匀分布(unif)韦伯.分布(weib)表5-6-1的使用方法把表中不同分布后面括号中的文字作为前缀,把所需计算的特性作为后缀,就可以组合成一个函数。例如离散类的二项式分布有binopdf,binocdf,binoinv,binostat四个函数,连续类数据的标准正态分布有normpdf,normcdf,norminv,normstat四个函数,连续类统计量的2分布有chi2pdf,chi2cdf,chi2inv,chi2stat四个函数,等等,20种分布就有80个函数。由于各种分布函数的解析形式都是已知的,这些子程序的编写并不困难。【例5-6-1】概率分布曲线的绘制【例5-6-1】(a)求标准正态分布N(0,1),自由度V=10的2分布和N=10,p=0.2的二项式分布B(10,0.2)的分布函数,并画出其概率密度曲线和分布曲线;(b)。求出分布函数为0.05和0.95处的随机变量值;(c)。求出这几个分布的均值和方差。解:分别键入help normpdf,help binopdf,help chi2pdf 以了解它们的用法,特别是了解输入变元的意义,得知:f=normpdf(x,mu,sigma)其中x为随机变量数组,mu为均值,sigma为标准差。f=chi2pdf(x,V)其中x为随机变量数组,V为自由度数(整数),f=binopdf(x,N,p)其中x为随机变量整数数组,N为次数,0p1为成功概率概率分布参数的选择题目中给出的变元参数应足以用来调用这些概率密度函数,只有随机变量x的取值及范围,需要事先对该分布的特性有所了解。首先要弄清它是离散量还是连续量,其次要取适当的范围。范围取小了不能显示分布的全局,取大了又可能显示不出细节。正确的取法应该使该范围内分布函数F(x)的左边界值略小于0.025,右边界值略大于0.975,这就可以基本涵盖随机变量以概率95%存在的主要区域,又不致涉及关系不大的区域。初学者往往要作几次试探才能做到。好在在计算机上改几个参数、作几次试探是很简便的事。绘制概率分布函数的程序exn561x1=-3:0.1:3;%标准正态随机变量取值范围f1=normpdf(x1,0,1);%标准正态分布的概率密度函数F1=normcdf(x1,0,1);%标准正态分布的分布函数subplot(2,2,1),plot(x1,f1,:,x1,F1,-),grid on%绘曲线line(-4,4,0.025,0.025),line(-4,4,0.975,0.975)%画横线x2=0:0.1:20;%试探得出的范围f2=chi2pdf(x2,10);%2分布的概率密度函数F2=chi2cdf(x2,10);%2分布的分布函数subplot(2,2,2),plot(x2,f2,:,x2,F2,-),grid on%绘曲线line(0,20,0.025,0.025),line(0,20,0.975,0.975)%画横线);.运行程序得出图5-40,其中实线是分布函数的曲线,虚线则是密度函数的曲线。上下两根横线分别为0.975和0.025,三种分布的概率密度和分布曲线 对分布函数图形的改进第三个子图中,随机变量是离散取值的,在两个相邻的取值点之间的概率不会变化,所以它的分布函数表现为阶梯形。密度函数是分布函数的导数,所以在阶梯突变处导数为无穷大,宽度又为无穷小,面积等于阶梯的高度,通常用一个脉冲表示。脉冲的高度表示它所包含的面积,也就等于阶梯波形的高度。而plot函数画图是把各离散点之间用直线联接,所得的曲线是不对的。应该要用stairs命令画阶梯图,用stem命令画脉冲图。改正后的程序如下:subplot(2,2,4),stairs(x3,F3,-),stem(x3,f3,:),图中第四子图给出了改正后的结果,可见其概率密度函数是离散的脉冲。从中还可以判断,x3的取值范围不必为0:10,取0:5就够了。另外,第二子图上的密度函数波形太小,如果对f和F取不同的纵坐标,那样可以得出更好的图形。分布函数逆函数的用途(b)给定分布函数F=(1)求出的x,简称下分位点,习惯上用表示。这和已知x求cdf恰好是逆函数的关系,即输入变元与输出变元恰好调换了位置,对正态分布情况,逆函数norminv的调用格式为X=NORMINV(F,MU,SIGMA)其中F为给定的分布函数值,而X为对应的随机变量边界值。题目中给定了的两个边界值Fb=0.05,0.95,即求对应的随机变量x的边界值xb。,随机变量在上下两个边界值xb(即/2,1-/2)之间取值的置信度等于1-,其他参数与normpdf和normcdf中的相同。对于其他分布,可依此类推,不再赘述。用逆函数求上下分位点将边界值Fb作为输入变元,可求得相应的分位点。:alpha=0.1;%取双边90%的置信区间Fb=alpha/2,1-alpha/2%输入变元%三种分布的双侧分位点lambda1=norminv(Fb,0,1)lambda2=chi2inv(Fb,10)lambda3=binoinv(Fb,10,0.2)程序运行后得到lambda1=-1.6449 1.6449lambda2=3.9403 18.3070lambda3=0 4这就是三种分布函数下的双边90%置信区间改变alpha的值,可得到各种不同置信度下的置信区间。各种分布理论统计特性的计算(c)。对以上3种分布,MATLAB还给出了它们的理论统计参数,即理论均值Mu和方差值var的计算方法,所用的命令为stat。例如:Mu1,var1=normstat(0,1)Mu2,var2=chi2stat(10)Mu3,var3=binostat(10,.2)运行结果为:Mu1=0,var1=1Mu2=10,var2=20Mu3=2,var3=1.6000本题虽然只给出了3种分布的计算,这些概念和方法可以类推到表5-6-1中20种分布的理论计算中。概率分布演示工具disttool 键入disttool就会出现一个图形界面(右图),其中有分布曲线,周围有各种参数和类型的选择窗。可以很方便地用鼠标操作改变参数和选择类型,得到相应的曲线。二二 随机样本数据的生成随机样本数据的生成stats工具箱同时也提供了这20种分布的随机数生成程序rnd。均匀分布随机数的计算机生成本身就是一个研究了几十年的专题,其他分布的随机数通常又由均匀分布随机数进行变换而得。本书将不讨论它们的编程,只着重于它们的应用。下面的例子将说明这类函数的调用方法。【例5-6-2】按例5-6-1的三种分布,分别生成10000个随机数,画出它们的直方图(分布图),并计算各自的数学期望和方差。随机数生成及其直方图绘制各种分布的随机数生成函数名为rnd。其中表示分布类型的前缀由表5-6-1给出。绘制统计数据Y直方图的命令为hist(Y,N),其中N为直方图的分区数目,其缺省值为10。例如:Y1=normrnd(0,1,1,10000);subplot(2,2,1),hist(Y1,50)Y2=chi2rnd(10,1,10000);subplot(2,2,2),hist(Y2,50)Y3=binornd(10,0.2,1,10000);subplot(2,2,3),hist(Y3,50)subplot(2,2,4),hist(Y3,8)得出的图5-42。三种分布的随机数统计分布图 实际统计参数的计算其中第三个分图的直方图各条宽度不均匀,这是由于二项式分布是离散数据,它的取值最大只可能到10。在目前实际数据中,最大只到8。因此,可改用以下的命令:subplot(2,2,4),hist(Y3,8)得到符合一般直方图要求的第四个分图。把这些图与图5-40中的密度分布曲线相比,可见是非常相似的。实际随机变量的样本均值Xbar,样本的标准差sigma和样本方差s2(标准差的平方)可用以下命令计算Xbar1=mean(Y1),sigma1=std(Y1),s21=var(Y1)得出Xbar1=0.0246,sigma1=1.0059,s21=1.0119Xbar2=mean(Y2),sigma2=std(Y2),s22=var(Y2)得出Xbar2=9.9947,sigma2=4.4453,s22=19.7605Xbar3=mean(Y3),sigma3=std(Y3),s23=var(Y3)得出Xbar3=1.9745,sigma3=1.2520,s23=1.5676演示工具randtool生成的图形界面 键入randtool也会出现一个图形界面,如右图。其中有实际生成的随机数样本分布的曲线,周围有各种参数和类型的选择窗。可以方便地用鼠标和键盘改变参数,得到相应的曲线。三三 用样本推断总体的统计量用样本推断总体的统计量 由实际样本值算出的统计量与例5-6-1中的理论值之间存在误差,而且样本统计量也是随机量。计算机每运行一次,所得到一组观察值Yi的统计量也会不同。它们也有各自的分布规律,比如对于,2相同的正态分布总体,各样本组的标准化均值按Z-分布,各样本组的标准化方差按2分布。当样本数取得很大时,根据中心极限定理,分布的误差就很小。这样得出的是总体统计量的一个(有误差的)估值,称为点估计法。如果样本数小,点估计法误差就会很大,甚至对人们造成误导。这时较好的方法是给出总体统计量一个取值区间(置信区间),并给出它在此区间取值的概率(置信度)。在实际工程中,做试验往往是很费时费钱的。通常希望用最小的试验样本集来推断总体的统计量所取的数值范围,并且希望有相当的精度和可信度。正态分布样本与总体统计量的关系(a)。已知总体方差2,但均值未知。要由样本均值 和方差S2推断总体均值。这时,样本均值标准化后的Z值满足正态分布:(5.6.1)(b)。总体均值和方差2均未知,要由样本方差S2推断总体方差2。这时,样本方差S2标准化值满足2分布:(5.6.2)(c)。总体均值和方差2均未知,要由样本均值 和样本方差S2估计总体均值。经过样本均值和样本方差S2标准化后满足T-分布:(5.6.3)【例例5-6-3】对某种产品的尺寸进行检验,由长期的统计知道其总体方差为2=4(微米2),当日抽测其中10个工件的偏差分别为2;1;-2;3;2;4;-2;5;3;4(微米),试对零件长度偏差的平均值(总体的数学期望)作出置信度为90的区间估计。解:在MATLAB程序中,用Xbar表示均值 ,s2表示S2,则样本均值和样本方差分别为:x=2;1;-2;3;2;4;-2;5;3;4;Xbar=mean(x),s2=var(x)得到:Xbar =2,s2=5.7778因为对于正态分布的随机样本,其样本均值Xbar和总体均值误差的标准化结果Z也服从正态分布。要估计总体均值的范围。要先找到其90置信区间边界点0.05,0.95,这可用正态分布逆函数查出,其语句为:lambdam=norminv(0.05,1-0.05)【例5-6-3a】总体均值的区间估值根据Z的这样两个边界,可以计算相应的的估值区间。把(5.6.1)式进行移项,得到,把公式中的Z用它的两个置信区间边界点来置换,在MATLAB中令varx=2,并利用数组计算方法,同时计算两个边界的值,即把公式表达为:相应的MATLAB程序exn563就是:x=2;1;-2;3;2;4;-2;5;3;4;Xbar=mean(x),s2=var(x)lambdam=norminv(0.05,0.95)n=length(x),varx=4Mut=Xbar-lambdam*sqrt(varx/n)%Mut表示总体均值的估计范围程序的运行结果为:lambdam=-1.6449 1.6449n=10varx=4Mut=3.0403 0.9597于是根据这十个样本,我们有90%的把握来断定,该工件尺寸的总体平均值将大于标称值0.95973.0403(微米)。如果我们只取一个误差为+2的样本,其他参数都不变,这时算出的置信区间将为:Mut=5.2898 -1.2898这意味着,我们甚至无法估计工件的尺寸总体值是正偏差还是负偏差。所以取的样本太少,是很难有信心较准确地推断工件的总体偏差的。例例5-6-4最大飞行速度方差的估计飞机的最大飞行速度XN(,2),但,2未知。现对飞机的速度进行14次独立测试,测得数据如下(单位:m/s):422,419,426,420,426,423,432,428,438,434,412,417,414,441;试按置信度0.95对总体X的均值和方差2进行区间估计。解:先求标准差的区间估值,总体均值和方差2均未知,要由样本方差S2推断总体方差2,属于情况(b),方差按2分布。其区间估值可以分成两个步骤:(1)由 ,找到的置信区间边界点,(2)把上式移项整理为:求得2的估值区间。求总体方差估值的程序exn564先用MATLAB语句输入数据,然后进行这两个步骤。在程序中设样本方差为s2,样本标准差为sigma,总体标准差为sigmat。所对应的MATLAB程序exn564如下x=422,419,426,420,426,423,432,428,438,434,412,417,414,441;n=length(x),s2=var(x),Xbar=mean(x)%根据给出的,反查2的置信区间边界点。因已知置信度为0.95,故应取1-0.95=0.05alpha=input(alpha=),%由查2置信区间lambdach=chi2inv(alpha/2,1-alpha/2,n-1)%由置信区间求估值区间sigmat=sqrt(n-1)*s2./lambdach)程序exn564运行结果程序运行时,若按其提问alpha=,键入0.05,则所得的结果为:n=14s2=76.4396Xbar =425.1429alpha=0.0500lambdach=5.0088 24.7356sigmat=14.0853 6.3383再求总体均值的估值区间,因为我们对于总体方差并不知道,而要靠样本数据来估计总体均值。这就属于上述情况(c)。例例5-6-4最大飞行速度均值的估计解:由找到的置信区间边界点,再由求出相应的估值区间。这两个步骤所对应的语句为%由查T-置信区间lambdat=tinv(alpha/2,1-alpha/2,n-1)%由置信区间求估值区间Mut=Xbar-sqrt(s2/n)*lambdat运行的结果为:Mut=430.1909 420.0948可见最大速度按95的置信度应在420430【米/秒】之间。用工具箱函数进行估计用MATLAB提供的normfit函数来根据样本集的数据x直接估计出总体统计量。其调用格式为:Xbar,sigma,mut,sigmat=normfit(x,alpha)在本题中,用测得的x为输入变元,键入:Xbar,sigma,mut,sigmat=normfit(x,0.05)即可得到样本的统计量为:Xbar=425.1429sigma=8.7898(注意,即sigma=sqrt(s2))总体的估计量为mut=420.0678 430.2180sigmat=6.3722 14.1608如取置信度为90%,则用下列语句Xbar,sigma,mut,sigmat=normfit(x,0.1)四。四。蒙特蒙特-卡罗随机实验法卡罗随机实验法【例例5-6-5】用随机实验法求圆周率估计值。解:先生成在-1(x,y)1中均匀分布的随机数作为坐标系(x,y)中x,y的值,这样两个坐标就决定图5-44所示的正方形中一个点,如果随机数的分布是均匀的,则落入圆中和方形区域中点的数目之比,就代表了圆面积和正方形面积之比。又已知正方形面积为4,这样就可以求出圆的面积,这个面积就等于圆周率的估计值。随机实验求pi程序exn565N=input(取的总点数=);%生成均值为零,在-11间均匀分布的随机数x,y%点(x,y)全在方形区域内,k为落入圆内部的点数,初值为零x=2*(rand(1,N)-0.5);y=2*(rand(1,N)-0.5);k=0;for i=1:N if x(i)*x(i)+y(i)*y(i)M”;若TAIL-1,表示:“总体均值M”;CI为置信区间,其置信度为1-ALPHAP 表示出现H=0的概率,P愈小说明假设成立的概率愈小。STATS为样本的统计特性,它由两项组成:第一项为样本的T-值,,第二项为样本的自由度数df。将本题的数据代入的结果(1)程序exn566,例5.6.3的数据为x1,M1=0;例5.6.4的数据为x2,M2=425,置信度均取90%,数据输入语句从略:%对例5.6.3,均值为零的假设成立否?只要一条语句:h1,pvalue1,ci1,stats1=ttest(x1,M1,0.1),pause 运行结果为,对例5.6.3的数据:h1=1,pvalue1=0.0273,ci1=0.6066 3.3934stats=tstat:2.6312,df:9说明本例“均值为零”的假设不成立,假设成立的概率仅为0.0273。总体均值的90%置信区间为0.6066,3.3934,样本的t值为2.6312,自由度为9(样本数-1)。将本题的数据代入的结果(2)%对例5.6.4,均值为425的假设成立否?h2,pvalue2,ci2,stats2=ttest(x2,M2,0.1)对例5.6.4的数据,运行结果为,:h2=0,pvalue2=0.9522,ci2=421.0048 429.2809stats2=tstat:0.0611 df:13说明本例“均值为425”的假设成立,假设成立的概率为0.9522。总体均值的90%置信区间为421.0048,429.2809,样本的t值为0.0611,自由度为13(样本数-1)。怎样用好stats工具箱中的函数从本例可以看出,这种专业工具箱中的函数完全以应用为目标。用户必须根据任务,选择正确的函数,并理解其输入输出变元,代进去就可得出结果,没有什么编程技巧。所以不宜在教学中多花时间。其中还有许多内容超出了大学基础课程的要求,因此本书不作更多讨论。其实懂了MATLAB的基本语法,又懂得了本节所介绍的基本统计函数,只要读者掌握了相关的理论,是不难自己编写解题程序的。如果是为了解决工程中的问题,要避免自己编程差错,就应该利用现成的函数。结合阅读本工具箱的手册,同时利用help命令查找其相关函数的功能与调用方法。最好有几个已经有了答案的例题,反复试验,以求用这些函数得到同样的正确结果,同时也掌握了这些函数的正确用法。stats工具箱中的演示程序stats工具箱中还有一些演示程序,如分析方差的交互工具(aoctool),通用线性模型(glmdemo),预测拟合多项式的交互图形工具(polytool),反应器仿真演示程序(rsmdemo),鲁棒性演示(robustdemo)等,运行这些程序可以帮助读者学习统计工具箱中各种函数的用法,并形象地理解统计分析中的许多新概念。【应用篇中与本节内容相关的例题应用篇中与本节内容相关的例题】【例6.3.1】气体中的分子做的是随机运动,大量的分子在进行杂乱无章的相互碰撞,不断地改变着单个分子的速度的方向和大小。从总体来看,它们要服从统计的规律,就速度大小而言,它们要满足麦克斯韦速度分布律,它给出了取不同速度的分子在总体中所占的比例,也就是它们的概率密度。