分布的拟合与检验的matlab实现

上传人:壹****1 文档编号:489101852 上传时间:2023-02-06 格式:DOCX 页数:12 大小:16.20KB
返回 下载 相关 举报
分布的拟合与检验的matlab实现_第1页
第1页 / 共12页
分布的拟合与检验的matlab实现_第2页
第2页 / 共12页
分布的拟合与检验的matlab实现_第3页
第3页 / 共12页
分布的拟合与检验的matlab实现_第4页
第4页 / 共12页
分布的拟合与检验的matlab实现_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《分布的拟合与检验的matlab实现》由会员分享,可在线阅读,更多相关《分布的拟合与检验的matlab实现(12页珍藏版)》请在金锄头文库上搜索。

1、精品%分布的拟合与检验%描述性统计量和统计图% 读取文件中数据% 读取文件 examp02_14.xls 的第 1 个工作表中的 G2G52 中的数据,即总成绩数据score = xlsread(examp02_14.xls,Sheet1,G2G52);% 去掉总成绩中的 0 ,即缺考成绩score = score(score 0);% 计算描述性统计量score_mean = mean(score) % 计算平均成绩s1 = std(score) % 计算 (5.1) 式的标准差s1 = std(score,0)% 也是计算 (5.1) 式的标准差s2 = std(score,1)% 计算(

2、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(score)% 计算变异系数score_skewness = skewness(score)% 计算样本偏度score_kurtosis = kurtosis(score)% 计

3、算样本峰度% 绘制箱线图figure; % 新建图形窗口boxlabel = 考试成绩箱线图 ;% 箱线图的标签% 绘制带有刻槽的水平箱线图boxplot(score,boxlabel,notch,on,orientation,horizontal)xlabel( 考试成绩 ); % 为 X 轴加标签% 绘制频率直方图% 调用 ecdf 函数计算 xc 处的经验分布函数值ff, xc = ecdf(score);figure; % 新建图形窗口% 绘制频率直方图ecdfhist(f, xc, 7);xlabel( 考试成绩 ); % 为 X 轴加标签ylabel(f(x); % 为 Y 轴加标

4、签% 绘制理论正态分布密度函数图% 产生一个新的横坐标向量xx = 400.5100;% 计算均值为 mean(score) ,标准差为 std(score) 的正态分布在向量x 处的密度函数值y = normpdf(x,mean(score),std(score);hold onplot(x,y,k,LineWidth,2) % 绘制正态分布的密度函数曲线,并设置线条为黑色实线,线宽为 2% 添加标注框,并设置标注框的位置在图形窗口的左上角legend( 频率直方图 ,正态分布密度曲线,Location,NorthWest);% 绘制经验分布函数图figure; % 新建图形窗口% 绘制经验

5、分布函数图,并返回图形句柄 h 和结构体变量stats ,% 结构体变量stats 有 5 个字段,分别对应最小值、最大值、平均值、中位数和标准差h,stats = cdfplot(score)set(h,color,k,LineWidth,2);% 设置线条颜色为黑色,线宽为 2% 绘制理论正态分布函数图x = 400.5100;% 产生一个新的横坐标向量x% 计算均值为 stats.mean ,标准差为stats.std 的正态分布在向量x 处的分布函数值y = normcdf(x,stats.mean,stats.std);hold on% 绘制正态分布的分布函数曲线,并设置线条为品红色

6、虚线,线宽为 2plot(x,y,k,LineWidth,2);% 添加标注框,并设置标注框的位置在图形窗口的左上角legend( 经验分布函数,理论正态分布,Location,NorthWest);% 绘制正态概率图figure; % 新建图形窗口normplot(score); % 绘制正态概率图%分布的检验% 读取文件中数据% 读取文件 examp02_14.xls 的第 1 个工作表中的 G2G52 中的数据,即总成绩数据score = xlsread(examp02_14.xls,Sheet1,G2G52);% 去掉总成绩中的 0 ,即缺考成绩score = score(score

7、0);% 调用 chi2gof 函数进行卡方拟合优度检验% 进行卡方拟合优度检验h,p,stats = chi2gof(score)% 指定各初始小区间的中点ctrs = 50 60 70 78 85 94;% 指定 ctrs 参数,进行卡方拟合优度检验% 指定 nbins 参数,进行卡方拟合优度检验h,p,stats = chi2gof(score,ctrs,ctrs)h,p,stats = chi2gof(score,nbins,6)% 指定分布为默认的正态分布,分布参数由 x 进行估计h,p,stats = chi2gof(score,nbins,6);% 求平均成绩ms 和标准差 ss

8、ms = mean(score);ss = std(score);% 参数 cdf 的值是由函数名字符串与函数中所含参数的参数值构成的元胞数组h,p,stats = chi2gof(score,nbins,6,cdf,normcdf, ms, ss);% 参数 cdf 的值是由函数句柄与函数中所含参数的参数值构成的元胞数组h,p,stats = chi2gof(score,nbins,6,cdf,normcdf, ms, ss);% 同时指定 cdf 和 nparams 参数h,p,stats = chi2gof(score,nbins,6,cdf,normcdf,ms,ss,nparams,

9、2)h,p = chi2gof(score,cdf,normcdf) %调用 chi2gof 函数检验数据是否服从标准正态 分布% 指定初始分组数为6 ,检验总成绩数据是否服从参数为 ms = 79 的泊松分布h,p = chi2gof(score,nbins,6,cdf,poisscdf, ms)% 指定初始分组数为6 ,最小理论频数为 3 ,检验总成绩数据是否服从正态分布h = chi2gof(score,nbins,6,cdf,normcdf, ms, ss,emin,3)% 调用jbtest 函数进行正态性检验randn(seed,0) % 指定随机数生成器的初始种子为 0x = ra

10、ndn(10000,1);% 生成 10000 个服从标准正态分布的随机数h = jbtest(x) % 调用 jbtest 函数进行正态性检验x(end) = 5;% 将向量 x 的最后一个元素改为 5h = jbtest(x) % 再次调用 jbtest 函数进行正态性检验% 调用 jbtest 函数进行 Jarque-Bera 检验h,p,jbstat,critval = jbtest(score)% 调用kstest 函数进行正态性检验% 生成 cdf 矩阵,用来指定分布:均值为 79 ,标准差为10.1489 的正态分布cdf = score, normcdf(score, 79,

11、10.1489);% 调用kstest 函数,检验总成绩是否服从由cdf 指定的分布h,p,ksstat,cv = kstest(score,cdf)% 调用kstest2 函数检验两个班的总成绩是否服从相同的分布% 读取文件 examp02_14.xls 的第 1 个工作表中的 B2B52 中的数据,即班级数据banji = xlsread(examp02_14.xls,Sheet1,B2B52);% 读取文件 examp02_14.xls 的第 1 个工作表中的 G2G52 中的数据,即总成绩数据score = xlsread(examp02_14.xls,Sheet1,G2G52);%

12、去除缺考数据score = score(score 0);banji = banji(score 0);% 分别提取 60101 和 60102 班的总成绩score1 = score(banji = 60101);score2 = score(banji = 60102);% 调用 kstest2 函数检验两个班的总成绩是否服从相同的分布h,p,ks2stat = kstest2(score1,score2)% 分别绘制两个班的总成绩的经验分布图figure; % 新建图形窗口% 绘制 60101 班总成绩的经验分布函数图F1 = cdfplot(score1);% 设置线宽为 2 ,颜色为

13、红色set(F1,LineWidth,2,Color,r)hold on% 绘制 60102 班总成绩的经验分布函数图F2 = cdfplot(score2);% 设置线型为点划线,线宽为 2 ,颜色为黑色set(F2,LineStyle,-.,LineWidth,2,Color,k)% 为图形加标注框,标注框的位置在坐标系的左上角legend(60101 班总成绩的经验分布函数,60102 班总成绩的经验分布函数,.Location,NorthWest)% 调用 kstest2 函数进行正态性检验randn(seed,0) % 指定随机数生成器的初始种子为 0% 产生 10000 个服从均值

14、为 79 ,标准差为 10.1489 的正态分布的随机数,构成一个列向量xx = normrnd(mean(score),std(score),10000,1);% 调用 kstest2 函数检验总成绩数据 score 与随机数向量x 是否服从相同的分布h,p = kstest2(score,x,0.05)% 调用 lillietest 函数进行分布的检验% 调用lillietest函数进行Lilliefors 检验,检验总成绩数据是否服从正态分布h,p,kstat,critval = lillietest(score)% 调用lillietest函数进行Lilliefors 检验,检验总成绩数据是否服从指数分布h, p = lillietest(score,0.05,exp)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 机械/制造/汽车 > 工业自动化

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号