发布网友 发布时间:2022-04-27 12:48
共1个回答
热心网友 时间:2023-09-20 20:02
4.6统计作图4.6.1正整数的频率表命令正整数的频率表函数tabulate格式table=tabulate(X)%X为正整数构成的向量,返回3列:第1列中包含X的值第2列为这些值的个数,第3列为这些值的频率。例4-49>>A=[1225638]A=1225638>>tabulate(A)ValueCountPercent1114.29%2228.57%3114.29%400.00%5114.29%6114.29%700.00%8114.29%4.6.2经验累积分布函数图形函数cdfplot格式cdfplot(X)%作样本X(向量)的累积分布函数图形h=cdfplot(X)%h表示曲线的环柄[h,stats]=cdfplot(X)%stats表示样本的一些特征例4-50>>X=normrnd(0,1,50,1);>>[h,stats]=cdfplot(X)h=3.0013stats=min:-1.8740%样本最小值max:1.6924%最大值mean:0.0565%平均值median:0.1032%中间值std:0.7559%样本标准差图4-104.6.3最小二乘拟合直线函数lsline格式lsline%最小二乘拟合直线h=lsline%h为直线的句柄例4-51>>X=[23.45.681112.313.81618.819.9]';>>plot(X,'+')>>lsline4.6.4绘制正态分布概率图形函数normplot格式normplot(X)%若X为向量,则显示正态分布概率图形,若X为矩阵,则显示每一列的正态分布概率图形。h=normplot(X)%返回绘图直线的句柄说明样本数据在图中用“+”显示;如果数据来自正态分布,则图形显示为直线,而其它分布可能在图中产生弯曲。例4-53>>X=normrnd(0,1,50,1);>>normplot(X)图4-124.6.5绘制威布尔(Weibull)概率图形函数weibplot格式weibplot(X)%若X为向量,则显示威布尔(Weibull)概率图形,若X为矩阵,则显示每一列的威布尔概率图形。h=weibplot(X)%返回绘图直线的柄说明绘制威布尔(Weibull)概率图形的目的是用图解法估计来自威布尔分布的数据X,如果X是威布尔分布数据,其图形是直线的,否则图形中可能产生弯曲。例4-54>>r=weibrnd(1.2,1.5,50,1);>>weibplot(r)图4-134.6.6样本数据的盒图函数boxplot格式boxplot(X)%产生矩阵X的每一列的盒图和“须”图,“须”是从盒的尾部延伸出来,并表示盒外数据长度的线,如果“须”的外面没有数据,则在“须”的底部有一个点。boxplot(X,notch)%当notch=1时,产生一凹盒图,notch=0时产生一矩箱图。boxplot(X,notch,'sym')%sym表示图形符号,默认值为“+”。boxplot(X,notch,'sym',vert)%当vert=0时,生成水平盒图,vert=1时,生成竖直盒图(默认值vert=1)。boxplot(X,notch,'sym',vert,whis)%whis定义“须”图的长度,默认值为1.5,若whis=0则boxplot函数通过绘制sym符号图来显示盒外的所有数据值。例4-55>>x1=normrnd(5,1,100,1);>>x2=normrnd(6,1,100,1);>>x=[x1x2];>>boxplot(x,1,'g+',1,0)图4-144.6.7给当前图形加一条参考线函数refline格式refline(slope,intercept)%slope表示直线斜率,intercept表示截距refline(slope)slope=[ab],图中加一条直线:y=b+ax。例4-56>>y=[3.22.63.13.42.42.93.03.33.22.12.6]';>>plot(y,'+')>>refline(0,3)图4-154.6.8在当前图形中加入一条多项式曲线函数refcurve格式h=refcurve(p)%在图中加入一条多项式曲线,h为曲线的环柄,p为多项式系数向量,p=[p1,p2,p3,…,pn],其中p1为最高幂项系数。例4-57火箭的高度与时间图形,加入一条理论高度曲线,火箭初速为100m/秒。>>h=[85162230289339381413437452458456440400356];>>plot(h,'+')>>refcurve([-4.91000])图4-164.6.9样本的概率图形函数capaplot格式p=capaplot(data,specs)�ta为所给样本数据,specs指定范围,p表示在指定范围内的概率。说明该函数返回来自于估计分布的随机变量落在指定范围内的概率例4-58>>data=normrnd(0,1,30,1);>>p=capaplot(data,[-2,2])p=0.9199图4-174.6.10附加有正态密度曲线的直方图函数histfit格式histfit(data)�ta为向量,返回直方图和正态曲线。histfit(data,nbins)%nbins指定bar的个数,缺省时为data中数据个数的平方根。例4-59>>r=normrnd(10,1,100,1);>>histfit(r)4.6.11在指定的界线之间画正态密度曲线函数normspec格式p=normspec(specs,mu,sigma)%specs指定界线,mu,sigma为正态分布的参数p为样本落在上、下界之间的概率。例4-60>>normspec([10Inf],11.5,1.25)图4-194.7参数估计4.7.1常见分布的参数估计命令β分布的参数a和b的最大似然估计值和置信区间函数betafit格式PHAT=betafit(X)[PHAT,PCI]=betafit(X,ALPHA)说明PHAT为样本X的β分布的参数a和b的估计量PCI为样本X的β分布参数a和b的置信区间,是一个2×2矩阵,其第1例为参数a的置信下界和上界,第2例为b的置信下界和上界,ALPHA为显著水平,(1-α)×100%为置信度。例4-61随机产生100个β分布数据,相应的分布参数真值为4和3。则4和3的最大似然估计值和置信度为99%的置信区间为:解:>>X=betarnd(4,3,100,1);%产生100个β分布的随机数>>[PHAT,PCI]=betafit(X,0.01)%求置信度为99%的置信区间和参数a、b的估计值结果显示PHAT=3.90102.6193PCI=2.52441.74885.27763.4898说明估计值3.9010的置信区间是[2.52445.2776],估计值2.6193的置信区间是[1.74883.4898]。命令正态分布的参数估计函数normfit格式[muhat,sigmahat,muci,sigmaci]=normfit(X)[muhat,sigmahat,muci,sigmaci]=normfit(X,alpha)说明muhat,sigmahat分别为正态分布的参数μ和σ的估计值,muci,sigmaci分别为置信区间,其置信度为;alpha给出显著水平α,缺省时默认为0.05,即置信度为95%。例4-62有两组(每组100个元素)正态随机数据,其均值为10,均方差为2,求95%的置信区间和参数估计值。解:>>r=normrnd(10,2,100,2);%产生两列正态随机数据>>[mu,sigma,muci,sigmaci]=normfit(r)则结果为mu=10.145510.0527%各列的均值的估计值sigma=1.90722.1256%各列的均方差的估计值muci=9.76529.628810.525810.4766sigmaci=1.67451.86632.21552.4693说明muci,sigmaci中各列分别为原随机数据各列估计值的置信区间,置信度为95%。例4-63分别使用金球和铂球测定引力常数(1)用金球测定观察值为:6.6836.6816.6766.6786.6796.672(2)用铂球测定观察值为:6.6616.6616.6676.6676.664设测定值总体为,μ和σ为未知。对(1)、(2)两种情况分别求μ和σ的置信度为0.9的置信区间。解:建立M文件:LX0833.mX=[6.6836.6816.6766.6786.6796.672];Y=[6.6616.6616.6676.6676.664];[mu,sigma,muci,sigmaci]=normfit(X,0.1)%金球测定的估计[MU,SIGMA,MUCI,SIGMACI]=normfit(Y,0.1)%铂球测定的估计运行后结果显示如下:mu=6.6782sigma=0.0039muci=6.67506.6813sigmaci=0.00260.0081MU=6.6640SIGMA=0.0030MUCI=6.66116.6669SIGMACI=0.00190.0071由上可知,金球测定的μ估计值为6.6782,置信区间为[6.6750,6.6813];σ的估计值为0.0039,置信区间为[0.0026,0.0081]。泊球测定的μ估计值为6.6640,置信区间为[6.6611,6.6669];σ的估计值为0.0030,置信区间为[0.0019,0.0071]。命令利用mle函数进行参数估计函数mle格式phat=mle%返回用dist指定分布的最大似然估计值[phat,pci]=mle%置信度为95%[phat,pci]=mle%置信度由alpha确定[phat,pci]=mle%仅用于二项分布,pl为试验次数。说明dist为分布函数名,如:beta(分布)、bino(二项分布)等,X为数据样本,alpha为显著水平α,为置信度。例4-64>>X=binornd(20,0.75)%产生二项分布的随机数X=16>>[p,pci]=mle('bino',X,0.05,20)%求概率的估计值和置信区间,置信度为95%p=0.8000pci=0.56340.9427常用分布的参数估计函数表4-7参数估计函数表函数名调用形式函数说明binofitPHAT=binofit(X,N)[PHAT,PCI]=binofit(X,N)[PHAT,PCI]=binofit(X,N,ALPHA)二项分布的概率的最大似然估计置信度为95%的参数估计和置信区间返回水平α的参数估计和置信区间poissfitLambdahat=poissfit(X)[Lambdahat,Lambdaci]=poissfit(X)[Lambdahat,Lambdaci]=poissfit(X,ALPHA)泊松分布的参数的最大似然估计置信度为95%的参数估计和置信区间返回水平α的λ参数和置信区间normfit[muhat,sigmahat,muci,sigmaci]=normfit(X)[muhat,sigmahat,muci,sigmaci]=normfit(X,ALPHA)正态分布的最大似然估计,置信度为95%返回水平α的期望、方差值和置信区间betafitPHAT=betafit(X)[PHAT,PCI]=betafit(X,ALPHA)返回β分布参数a和b的最大似然估计返回最大似然估计值和水平α的置信区间unifit[ahat,bhat]=unifit(X)[ahat,bhat,ACI,BCI]=unifit(X)[ahat,bhat,ACI,BCI]=unifit(X,ALPHA)均匀分布参数的最大似然估计置信度为95%的参数估计和置信区间返回水平α的参数估计和置信区间expfitmuhat=expfit(X)[muhat,muci]=expfit(X)[muhat,muci]=expfit(X,alpha)指数分布参数的最大似然估计置信度为95%的参数估计和置信区间返回水平α的参数估计和置信区间gamfitphat=gamfit(X)[phat,pci]=gamfit(X)[phat,pci]=gamfit(X,alpha)γ分布参数的最大似然估计置信度为95%的参数估计和置信区间返回最大似然估计值和水平α的置信区间weibfitphat=weibfit(X)[phat,pci]=weibfit(X)[phat,pci]=weibfit(X,alpha)韦伯分布参数的最大似然估计置信度为95%的参数估计和置信区间返回水平α的参数估计及其区间估计Mlephat=mle('dist',data)[phat,pci]=mle('dist',data)[phat,pci]=mle('dist',data,alpha)[phat,pci]=mle('dist',data,alpha,p1)分布函数名为dist的最大似然估计置信度为95%的参数估计和置信区间返回水平α的最大似然估计值和置信区间仅用于二项分布,pl为试验总次数说明各函数返回已给数据向量X的参数最大似然估计值和置信度为(1-α)×100%的置信区间。α的默认值为0.05,即置信度为95%。4.7.2非线性模型置信区间预测命令高斯—牛顿法的非线性最小二乘数据拟合函数nlinfit格式beta=nlinfit(X,y,FUN,beta0)%返回在FUN中描述的非线性函数的系数。FUN为用户提供形如的函数,该函数返回已给初始参数估计值β和自变量X的y的预测值。[beta,r,J]=nlinfit(X,y,FUN,beta0)�ta为拟合系数,r为残差,J为Jacobi矩阵,beta0为初始预测值。说明若X为矩阵,则X的每一列为自变量的取值,y是一个相应的列向量。如果FUN中使用了@,则表示函数的柄。例4-65调用MATLAB提供的数据文件reaction.mat>>loadreaction>>betafit=nlinfit(reactants,rate,@hougen,beta)betafit=1.25260.06280.04000.11241.1914命令非线性模型的参数估计的置信区间函数nlparci格式ci=nlparci(beta,r,J)%返回置信度为95%的置信区间,beta为非线性最小二乘法估计的参数值,r为残差,J为Jacobian矩阵。nlparci可以用nlinfit函数的输出作为其输入。例4-66调用MATLAB中的数据reaction。>>loadreaction>>[beta,resids,J]=nlinfit(reactants,rate,'hougen',beta)beta=1.25260.06280.04000.11241.1914resids=0.1321-0.1642-0.09090.03100.11420.0498-0.02620.3115-0.02920.10960.0716-0.1501-0.3026J=6.8739-90.6536-57.8640-1.92880.16143.4454-48.5357-13.6240-1.70300.30345.3563-41.2099-26.3042-10.52171.50951.69500.10910.01860.02791.79132.2967-35.5658-6.0537-0.75670.202311.8670-89.5655-170.1745-8.95660.44004.4973-14.4262-11.5409-9.37702.57444.1831-41.7896-16.8937-5.77941.008211.8286-51.3721-154.1164-27.74101.50019.1514-25.5948-76.7844-30.71382.57903.33730.09000.07200.10803.52699.3663-102.0611-107.4327-3.58110.22004.7512-24.4631-16.3087-10.30022.1141>>ci=nlparci(beta,resids,J)ci=-0.74673.2519-0.03770.1632-0.03120.1113-0.06090.2857-0.73813.1208命令非线性拟合和显示交互图形函数nlintool格式nlintool(x,y,FUN,beta0)%返回数据(x,y)的非线性曲线的预测图形,它用2条红色曲线预测全局置信区间。beta0为参数的初始预测值,置信度为95%。nlintool(x,y,FUN,beta0,alpha)%置信度为(1-alpha)×100%例4-67调用MATLAB数据>>loadreaction>>nlintool(reactants,rate,'hougen',beta)