matlab 假设检验
转自:http://blog.csdn.net/colddie/article/details/7773278
|
函数名称 |
函数说明 |
调用格式 |
正态总体的参数检验 |
ztest |
单样本均值的z检验 (总体服从正态分布) |
[h,sig,ci,zval] = ztest(x,mu0,sigma,alpha,tail) |
ttest |
单样本均值t检验 (总体服从正态分布) |
[h,sig,ci,tval] = ttest(x,mu0,alpha,tail) |
|
ttest2 |
双样本均值差t检验 (两个总体均服从正态分布) |
[h,sig,ci,tval] = ttest2(x,y,alpha,tail) |
|
非 参 数 假 设 检 验 |
jbtest |
单样本正态分布Jarque-Bera检验 (H0: 样本来自正态分布) |
[h,p,jbstat,cv]=jbtest(x,alpha) |
lillietest |
单样本正态分布Lilliefors检验 (H0: 样本来自正态分布) |
[h,p,lstat,cv]= lillietest(x,alpha) |
|
kstest |
单样本分布的Kolmogorov-Smirnov检验 |
[h,p,ksstat,cv] = kstest(x,cdf,alpha,tail) |
|
kstest2 |
双样本同分布Kolmogorov-Smirnov检验 (H0: 两样本来自同一连续分布) |
h = kstest2(x1,x2,alpha,tail) |
|
ranksum |
双不匹配样本同分布Wilcoxon秩和检验 (H0: 两样本来自同一分布) |
[p,h,stats] = ranksum(x,y,alpha) |
|
绘图检验 |
normplot |
单样本正态分布概率纸检验 (H0: 样本来自正态分布) |
normplot(x) |
qqplot |
画双样本同分布检验的分位数—分位数图(简称qq图) (H0: 两样本来自同一分布) |
qqplot(x,y) |
1、jbtest, lillietest与kstest的比较:
(1) jbtest与lillietest均是检验样本是否来自正态分布, 而kstest可检验样本来自任意指定的分布;
(2) jbtest是利用偏度峰度来检验, 适用于大样本; 而对于小样本, 则用lillietest来检验;
(3) lillietest与kstest的检验原理均是用x的经验分布函数与一个有相同均值与方差的正态分布的分布函数进行比较, 不同的是lisllietest中正态分布的参数是由x估计得来, 而kstest中正态分布的参数是事先指定的.
2、kstest2对应于斯米尔诺夫检验.
3、命令说明:
(1) [h,sig,ci,zval] = ztest(x,mu0,sigma,alpha,tail) 对已知方差的单个总体均值进行Z检验. 进行显著性水平为 的Z假设检验, 以检验标准差为 的正态分布样本的均值与 的关系. 并可通过指定tail的值来控制备择假设的类型. tail 的取值及表示意义如下:
tail=0 备择假设为 (缺省值);
tail=1备择假设为 ;
tail= -1备择假设为 . (原假设则为 )
·输出变量含义:
h——如果h=0, 则接受 ; 如果h=1, 则拒绝 而接受备择假设 ;
sig——Z的观察值在 下较大或统计意义上较大的概率值;
ci——方差 未知时均值 的 的置信区间.
zval——Z统计量 的观测值.
·单边检验对应单侧区间估计.
(2) [h,sig,ci,tval] = ttest(x,mu0,alpha,tail) 格式调用中无“tval”这个输出变量, 但可加上此项.
tval——包含两个结果: tstat表示t统计量 的值; df表示t分布的自由度.
(3) [h,p,jbstat,cv] = jbtest(x,alpha) 对“单个总体服从正态分布(未指定均值和方差)”假设进行显著水平为 的Jarque-Bera检验. 此检验基于x的偏度与峰度. 对于真实的正态分布, 样本偏度应接近于0, 样本峰度应接近于3. Jarque-Bera检验通过 统计量来判定样本偏度和峰度是否与它们的期望值显著不同.
·输出变量含义:
h——如果h=0, 则接受“ : 认为x来自正态总体”; 如果h=1, 则接受备择假设“ : 认为x不是来自正态总体”;
p——检验的概率p-值;
jbstat——检验统计量的值;
cv——判断是否拒绝原假设的关键值.
(4) [h,p,ksstat,cv] = kstest(x,cdf,alpha,tail) 对“x的总体服从由两列矩阵cdf指定的分布G”假设进行显著水平为 的Kolmogorov-Smirnov检验. 矩阵cdf的第一列包含可能的x值, 第二列包含相应的理论累积分布函数值G(x0). 在可能的情况下, 应定义cdf使每一列包含x中的值. 如果cdf=[ ], kstest( )将使用标准正态分布.
(5) [h,p,ksstat] = kstest2(x,cdf,alpha,tail) 对“两个样本来自同一连续分布”假设进行显著水平为的Kolmogorov-Smirnov检验. 对于大容量的样本来说, p-值将很精确, 一般来说, 当样本容量N1和N2满足 时, p-值即可认为是精确的.
(6) normplot(x) 绘出x中数据的正态检验概率图. 如果x是一个矩阵, 则对每一列绘出一条线. 图中样本数据用符号‘+’来表示, 叠加在数据上的实线是数据的第一个与第三个四分位点之间的连线 (为样本顺序统计量的鲁棒线性拟合). 这条线延伸到样本数据的两端, 以便估计数据的线性度. 如果数据是来自一个正态分布,则‘+’线近似地在一直线上. 一般地, 中间的点离直线位置的偏差不能过大, 两头的点的偏差可以允许大一些. 当中间的点离直线位置偏差太大时, 就认为x来自其它分布.
(7) qqplot(x,y) 绘出两样本的分位数-分位数图. 图中样本数据用符号‘+’来表示, 叠加在数据上的实线是各分布的第一个与第三个四分位点之间的连线 (为两个样本顺序统计量的鲁棒线性拟合). 这条线延伸到样本数据的两端以便估计数据的线性度. 如果两个样本来源于同一个分布, 则‘+’线近似地在一直线上.
qqplot(x) 绘出样本x的分位数-正态分布的理论分位数图. 如x为正态分布, 则‘+’线近似地在一直线上.
【例3-1】(例3.4) 一台包装机装洗衣粉, 额定标准重量为500g, 根据以往经验, 包装机的实际装袋重量服从正态分布 , 其中 g, 为检验包装机工作是否正常, 随机抽取9袋, 称得洗衣粉净重数据如下 (单位: g):
497 506 518 524 488 517 510 515 516
若取显著性水平 , 问这包装机工作是否正常?
>> x=[497,506,518,524,488,517,510,515,516];
>> [h,sig,ci,zval]=ztest(x,500,15,0.01,0)
h = 0 %接受
sig = 0.0432 % 为真条件下P( )的值
ci = 497.2320 522.9903 % 未知时 的置信水平为0.95的双侧置信区间
zval = 2.0222 %Z统计量 的值.
所以认为包装机工作正常.
【例3-2】(例3.5) 某部门对当前市场的价格情况进行调查. 以鸡蛋为例, 所抽查的全省20个集市上, 售价分别为 (单位: 元/500克)
3.05, 3.31, 3.34, 3.82, 3.30, 3.16, 3.84, 3.10, 3.90, 3.18,
3.88, 3.22, 3.28, 3.34, 3.62, 3.28, 3.30, 3.22, 3.54, 3.30.
已知往年的平均售价一直稳定在3.25元/500克左右, 在显著性水平 下, 能否认为全省当前的鸡蛋售价明显高于往年?
>> x=[3.05,3.31,3.34,3.82,3.30,3.16,3.84,3.10,3.90,3.18,...
3.88,3.22,3.28,3.34,3.62,3.28,3.30,3.22,3.54,3.30];
>> [h,sig,ci,tval]=ttest(x,3.25,0.025,1)
h = 1
sig = 0.0114
ci = 3.2731 Inf
tval = tstat: 2.4763 df: 19
所以认为全省当前的鸡蛋售价明显高于往年.