《Matlab参数估计与假设检验.ppt》由会员分享,可在线阅读,更多相关《Matlab参数估计与假设检验.ppt(70页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、参数估计与假设检验,教 材,主要内容 常见分布的参数估计 正态总体参数的检验 分布的拟合与检验 核密度估计,第一节 常见分布的参数估计,一、分布参数估计的MATLAB函数,% 定义样本观测值向量 x = 15.14 14.81 15.11 15.26 15.08 15.17 15.12 14.95 15.05 14.87; % 调用normfit函数求正态总体参数的最大似然估计和置信区间 % 返回总体均值的最大似然估计muhat和90%置信区间muci, % 还返回总体标准差的最大似然估计sigmahat和90%置信区间sigmaci muhat,sigmahat,muci,sigmaci =
2、 normfit(x,0.1), x = normrnd(10,4,100,1); phat,pci = mle(x) phat,pci = mle(x,distribution,normal) phat,pci = mle(x,pdf,normpdf,start,0,1) phat,pci = mle(x,cdf,normcdf,start,0,1),【例5.1-2】调用normrnd函数生成100个服从均值为10,标准差为4的正态分布的随机数,然后调用mle函数求均值和标准差的最大似然估计。,phat = mle(data) phat,pci = mle(data) . = mle(dat
3、a,distribution,dist) . = mle(data,.,name1,val1,name2,val2,.) . = mle(data,pdf,pdf,cdf,cdf,start,start,.) . = mle(data,logpdf,logpdf,logsf,logsf,start,start,.) . = mle(data,nloglf,nloglf,start,start,.),补充: mle函数的调用格式:,第二节 正态总体参数的检验,一、总体标准差已知时的单个正态总体均值的U检验,调用格式: h = ztest(x,m,sigma) h = ztest(.,alpha)
4、 h = ztest(.,alpha,tail) h = ztest(.,alpha,tail,dim) h,p = ztest(.) h,p,ci = ztest(.) h,p,ci,zval = ztest(.),ztest函数, x = 97 102 105 112 99 103 102 94 100 95 105 98 102 100 103; % 调用ztest函数作总体均值的双侧检验, % 返回变量h,检验的p值,均值的置信区间muci,检验统计量的观测值zval h,p,muci,zval = ztest(x,100,2,0.05) % 调用ztest函数作总体均值的单侧检验 h
5、,p,muci,zval = ztest(x,100,2,0.05,right),二、总体标准差未知时的单个正态总体均值的t检验,调用格式: h = ttest(x) h = ttest(x,m) h = ttest(x,y) h = ttest(.,alpha) h = ttest(.,alpha,tail) h = ttest(.,alpha,tail,dim) h,p = ttest(.) h,p,ci = ttest(.) h,p,ci,stats = ttest(.),ttest函数,% 定义样本观测值向量 x = 49.4 50.5 50.7 51.7 49.8 47.9 49.2
6、 51.4 48.9; % 调用ttest函数作总体均值的双侧检验, % 返回变量h,检验的p值,均值的置信区间muci,结构体变量stats h,p,muci,stats = ttest(x,50,0.05),三、总体标准差未知时的两个正态总体均值的比较 t检验,调用格式: h = ttest2(x,y) h = ttest2(x,y,alpha) h = ttest2(x,y,alpha,tail) h = ttest2(x,y,alpha,tail,vartype) h = ttest2(x,y,alpha,tail,vartype,dim) h,p = ttest2(.) h,p,ci
7、 = ttest2(.) h,p,ci,stats = ttest2(.),ttest2函数,% 定义甲机床对应的样本观测值向量 x = 20.1, 20.0, 19.3, 20.6, 20.2, 19.9, 20.0, 19.9, 19.1, 19.9; % 定义乙机床对应的样本观测值向量 y = 18.6, 19.1, 20.0, 20.0, 20.0, 19.7, 19.9, 19.6, 20.2; alpha = 0.05; % 显著性水平为0.05 tail = both; % 尾部类型为双侧 vartype = equal; % 方差类型为等方差 % 调用ttest2函数作两个正态
8、总体均值的比较检验, % 返回变量h,检验的p值,均值差的置信区间muci,结构体变量stats h,p,muci,stats = ttest2(x,y,alpha,tail,vartype),四、总体均值未知时的单个正态总体方差的卡方检验,调用格式: H = vartest(X,V) H = vartest(X,V,alpha) H = vartest(X,V,alpha,tail) H,P = vartest(.) H,P,CI = vartest(.) H,P,CI,STATS = vartest(.) . = vartest(X,V,alpha,tail,dim),vartest函数,
9、% 定义样本观测值向量 x = 49.4 50.5 50.7 51.7 49.8 47.9 49.2 51.4 48.9; var0 = 1.5; % 原假设中的常数 alpha = 0.05; % 显著性水平为0.05 tail = both; % 尾部类型为双侧 % 调用vartest函数作单个正态总体方差的双侧检验, % 返回变量h,检验的p值,方差的置信区间varci,结构体变量stats h,p,varci,stats = vartest(x,var0,alpha,tail),五、总体均值未知时的两个正态总体方差的比较 F 检验,调用格式: H = vartest2(X,Y) H =
10、 vartest2(X,Y,alpha) H = vartest2(X,Y,alpha,tail) H,P = vartest2(.) H,P,CI = vartest2(.) H,P,CI,STATS = vartest2(.) . = vartest2(X,Y,alpha,tail,dim),vartest2函数,% 定义甲机床对应的样本观测值向量 x = 20.1, 20.0, 19.3, 20.6, 20.2, 19.9, 20.0, 19.9, 19.1, 19.9; % 定义乙机床对应的样本观测值向量 y = 18.6, 19.1, 20.0, 20.0, 20.0, 19.7,
11、19.9, 19.6, 20.2; alpha = 0.05; % 显著性水平为0.05 tail = both; % 尾部类型为双侧 % 调用vartest2函数作两个正态总体方差的比较检验, % 返回变量h,检验的p值,方差之比的置信区间varci,结构体变量stats h,p,varci,stats = vartest2(x,y,alpha,tail),第三节 分布的拟合与检验,一、案例描述,现有某两个班的某门课程的考试成绩,如下表,试根据以上数据,推断总成绩数据所服从的分布。,二、描述性统计量,1. 均值:,2. 方差:,3. 标准差:,4. 最大值和最小值:,5. 极差:,6. p分
12、位数:,7. k阶原点矩:,8. k阶中心矩:,9. 偏度:,10. 峰度:,三、统计图,1. 样本的频数分布与频率分布,将样本观测值,从小到大排列得:,,列出样本频率分布表如下,(1) 称函数,为样本分布函数(或经验分布函数)。它满足分布函数所具有的性质。,2. 样本经验分布函数图,(2) 格里汶科定理,设总体X 的分布函数为F(x),样本,此定理表明:当样本容量n相当大时,经验分布函数是总体分布函数的一个良好的近似。,的经验分布函数为Fn(x),则有,(1)找出样本观测值的最小值x(1)和最大值x(l) ;,(2)取ax(1)和bx(l) ,将区间a,b分成k个子区间;,(3)计算样本观测
13、值落入各子区间内的频数ni 和频 率 ;,(4)在x 轴上以各子区间为底边,以ni(或 ) 为高作小矩形即得频数(或频率)直方图。,3. 频数与频率直方图,4. 箱线图,设 为总体X 的一个样本,样本观测值,则可得出如下箱线图。,为:,Matlab命令 boxplot(x),5. 正态概率图,正态概率图用于正态分布的检验,实际上就是纵坐标经过变换后的正态分布的分布函数图,正常情况下,正态分布的分布函数曲线是一条S形曲线,而在正态概率图上描绘的则是一条直线。 如果采用手工绘制正态概率图的话,可以在正态概率纸上描绘,正态概率纸上有根据正态分布构造的坐标系,其横坐标是均匀的,纵坐标是不均匀的,以保证
14、正态分布的分布函数图形是一条直线。,四、卡方拟合优度检验,1. 简单假设检验问题,2. 复合假设检验问题,检验统计量,拒绝域,3. chi2gof函数,调用格式: h = chi2gof(x) h,p = chi2gof(.) h,p,stats = chi2gof(.) . = chi2gof(X,Name,value),五、Kolmogorov-Smirnov检验,1. Kolmogorov检验,检验统计量,拒绝域,2. Lilliefors检验,检验统计量,拒绝域,3. Smirnov检验,检验统计量,拒绝域,4. kstest函数,调用格式: h = kstest(x) h = kst
15、est(x,CDF) h = kstest(x,CDF,alpha) h = kstest(x,CDF,alpha,type) h,p,ksstat,cv = kstest(.),5. kstest2函数,调用格式: h = kstest2(x1,x2) h = kstest2(x1,x2,alpha,type) h,p = kstest2(.) h,p,ks2stat = kstest2(.),6. lillietest函数,调用格式: h = lillietest(x) h = lillietest(x,alpha) h = lillietest(x,alpha,distr) h,p =
16、lillietest(.) h,p,kstat = lillietest(.) h,p,kstat,critval = lillietest(.) h,p,. = lillietest(x,alpha,distr,mctol),% 读取文件examp02_14.xls的第1个工作表中的G2:G52中的数据,即总成绩数据 score = xlsread(examp02_14.xls,Sheet1,G2:G52); % 去掉总成绩中的0,即缺考成绩 score = score(score 0); %*计算描述性统计量* score_mean = mean(score) % 计算平均成绩 s1 =
17、std(score) % 计算(5.1)式的标准差 s1 = std(score,0) % 也是计算(5.1)式的标准差 s2 = std(score,1) % 计算(5.2)式的标准差 score_max = max(score) % 计算样本最大值 score_min = min(score) % 计算样本最小值 score_range = range(score) % 计算样本极差 score_median = median(score) % 计算样本中位数 score_mode = mode(score) % 计算样本众数 score_cvar = std(score)/mean(sc
18、ore) % 计算变异系数 score_skewness = skewness(score) % 计算样本偏度 score_kurtosis = kurtosis(score) % 计算样本峰度,%*绘制箱线图* figure; % 新建图形窗口 boxlabel = 考试成绩箱线图; % 箱线图的标签 % 绘制带有刻槽的水平箱线图 boxplot(score,boxlabel,notch,on,orientation,horizontal) xlabel(考试成绩); % 为X轴加标签 %*绘制频率直方图* % 调用ecdf函数计算xc处的经验分布函数值f f, xc = ecdf(scor
19、e); figure; % 新建图形窗口 % 绘制频率直方图 ecdfhist(f, xc, 7); xlabel(考试成绩); % 为X轴加标签 ylabel(f(x); % 为Y轴加标签,%*绘制理论正态分布密度函数图* % 产生一个新的横坐标向量x x = 40:0.5:100; % 计算均值为mean(score),标准差为std(score)的正态分布在向量x处的密度函数值 y = normpdf(x,mean(score),std(score); hold on % 绘制正态分布的密度函数曲线,并设置线条为黑色实线,线宽为2 plot(x,y,k,LineWidth,2) % 添加
20、标注框,并设置标注框的位置在图形窗口的左上角 legend(频率直方图,正态分布密度曲线,Location,NorthWest); %*绘制经验分布函数图* figure; % 新建图形窗口 % 绘制经验分布函数图,并返回图形句柄h和结构体变量stats, % stats有5个字段,分别对应最小值、最大值、平均值、中位数和标准差 h,stats = cdfplot(score) set(h,color,k,LineWidth,2); % 设置线条颜色为黑色,线宽为2,%*绘制理论正态分布函数图* x = 40:0.5:100; % 产生一个新的横坐标向量x % 计算均值为stats.mean,
21、标准差为stats.std的正态分布在向量x处的分布函数值 y = normcdf(x,stats.mean,stats.std); hold on % 绘制正态分布的分布函数曲线,并设置线条为品红色虚线,线宽为2 plot(x,y,:k,LineWidth,2); % 添加标注框,并设置标注框的位置在图形窗口的左上角 legend(经验分布函数,理论正态分布,Location,NorthWest); %*绘制正态概率图* figure; % 新建图形窗口 normplot(score); % 绘制正态概率图,% -分布的检验- %*调用chi2gof函数进行卡方拟合优度检验* h,p,sta
22、ts = chi2gof(score) % 指定分布为默认的正态分布,分布参数由x进行估计 h,p,stats = chi2gof(score,nbins,6); % 求平均成绩ms和标准差ss ms = mean(score); ss = std(score); % 参数cdf的值是由函数句柄与函数中所含参数的参数值构成的元胞数组 h,p,stats = chi2gof(score,nbins,6,cdf,normcdf, ms, ss); % 指定初始分组数为6,最小理论频数为3,检验总成绩数据是否服从正态分布 h = chi2gof(score,nbins,6,cdf,normcdf,
23、ms, ss,emin,3),%*调用kstest函数进行正态性检验* % 生成cdf矩阵,用来指定分布:均值为79,标准差为10.1489的正态分布 cdf = score, normcdf(score, 79, 10.1489); % 调用kstest函数,检验总成绩是否服从由cdf指定的分布 h,p,ksstat,cv = kstest(score,cdf) %*调用kstest2函数检验两个班的总成绩是否服从相同的分布* % 读取文件examp02_14.xls的第1个工作表中的B2:B52中的数据,即班级数据 banji = xlsread(examp02_14.xls,Sheet1
24、,B2:B52); % 读取文件examp02_14.xls的第1个工作表中的G2:G52中的数据,即总成绩数据 score = xlsread(examp02_14.xls,Sheet1,G2:G52); % 去除缺考数据 score = score(score 0); banji = banji(score 0); % 分别提取60101和60102班的总成绩 score1 = score(banji = 60101); score2 = score(banji = 60102); % 调用kstest2函数检验两个班的总成绩是否服从相同的分布 h,p,ks2stat = kstest2(
25、score1,score2),%*分别绘制两个班的总成绩的经验分布图* figure; % 新建图形窗口 F1 = cdfplot(score1); % 绘制60101班总成绩的经验分布函数图 set(F1,LineWidth,2,Color,r) % 设置线宽为2,颜色为红色 hold on F2 = cdfplot(score2); % 绘制60102班总成绩的经验分布函数图 % 设置线型为点划线,线宽为2,颜色为黑色 set(F2,LineStyle,-.,LineWidth,2,Color,k) % 为图形加标注框,标注框的位置在坐标系的左上角 legend(60101班总成绩的经验分
26、布函数,60102班总成绩的经验分布函数,. Location,NorthWest) %*调用lillietest函数进行分布的检验* % 调用lillietest函数进行Lilliefors检验,检验总成绩数据是否服从正态分布 h,p,kstat,critval = lillietest(score) % 调用lillietest函数进行Lilliefors检验,检验总成绩数据是否服从指数分布 h, p = lillietest(score,0.05,exp),第四节 核密度估计,一、经验密度函数,1. 经验密度函数,二、核密度估计,1. Parzen窗密度估计法,2. 核密度估计的一般定义
27、,3. 常用核函数,4. 窗宽对核密度估计的影响,5. 如何选择最佳窗宽,MISE(mean integrated squared error)是关于窗宽 h 的函数,求它的最小值点,可以得出最佳窗宽的估计值。,调用格式: f,xi = ksdensity(x) f = ksdensity(x,xi) ksdensity() ksdensity(ax,) f,xi,u = ksdensity() = ksdensity(,param1,val1,param2,val2,) 参数与参数值列表见下一页。,三、ksdensity函数,ksdensity函数支持的参数名与参数值列表,四、核密度估计的案
28、例分析,1. 总成绩数据的核密度估计, score = xlsread(examp02_14.xls,Sheet1,G2:G52); score = score(score 0); % 调用ecdf函数计算xc处的经验分布函数值f_ecdf f_ecdf, xc = ecdf(score); % 新建图形窗口,然后绘制频率直方图,直方图对应7个小区间 figure; ecdfhist(f_ecdf, xc, 7); hold on; xlabel(考试成绩); ylabel(f(x) ); % 为X,Y轴加标签 % 调用ksdensity函数进行核密度估计 f_ks1,xi1,u1 = ksd
29、ensity(score); % 绘制核密度估计图,并设置线条为黑色实线,线宽为3 plot(xi1,f_ks1,k,linewidth,3),2. 窗宽对核密度估计的影响,% 设置窗宽分别为0.1,1,5和9,调用ksdensity函数进行核密度估计 f_ks1,xi1 = ksdensity(score,width,0.1); f_ks2,xi2 = ksdensity(score,width,1); f_ks3,xi3 = ksdensity(score,width,5); f_ks4,xi4 = ksdensity(score,width,9); figure; % 新建图形窗口 %
30、分别绘制不同窗宽对应的核密度估计图,它们对应不同的线型和颜色 plot(xi1,f_ks1,c-.,linewidth,2); hold on; xlabel(考试成绩); ylabel(核密度估计); % 为X,Y轴加标签 plot(xi2,f_ks2,r:,linewidth,2); plot(xi3,f_ks3,k,linewidth,2); plot(xi4,f_ks4,b-,linewidth,2); legend(窗宽为0.1,窗宽为1,窗宽为5,窗宽为9,Location,NorthWest);,3. 核函数对核密度估计的影响,% 设置核函数分别为Gaussian、Uniform
31、、Triangle和Epanechnikov核函数 f_ks1,xi1 = ksdensity(score,kernel,normal); f_ks2,xi2 = ksdensity(score,kernel,box); f_ks3,xi3 = ksdensity(score,kernel,triangle); f_ks4,xi4 = ksdensity(score,kernel,epanechnikov); figure; % 新建图形窗口 % 分别绘制不同核函数对应的核密度估计图,它们对应不同的线型和颜色 plot(xi1,f_ks1,k,linewidth,2) hold on xlab
32、el(考试成绩); ylabel(核密度估计); plot(xi2,f_ks2,r:,linewidth,2) plot(xi3,f_ks3,b-.,linewidth,2) plot(xi4,f_ks4,c-,linewidth,2) legend(Gaussian,Uniform,Triangle,Epanechnikov,Location,NorthWest);,4. 累积分布的核估计, figure; % 新建图形窗口 % 绘制经验分布函数图,并返回图形句柄h和结构体变量stats, % 结构体变量stats有5个字段,分别对应最小值、最大值、平均值、中位数和标准差 h,stats = cdfplot(score); % 设置线条为红色虚线,线宽为2 set(h,color,r, LineStyle, :,LineWidth,2); hold on title (); % 去掉图中标题 xlabel(考试成绩); % 为X轴加标签 ylabel(F(x); % 为Y轴加标签 % 调用ksdensity函数对累积分布函数进行估计 f_ks, xi = ksdensity(score,function,cdf); % 绘制估计的分布函数图,并设置线条为黑色实线,线宽为2 plot(xi,f_ks,k,linewidth,2);,