MATLAB实现假设检验-初学者必备

2023-05-16

单个正态总体的假设检验

调用格式 ztest

 [h,p,muci,zval]=ztest(x,mu0,Sigma,Alpha,Tail)

x: 是输入的观测向量

mu0 :假设的均值

Sigma :总体标准差

Alpha :显著性水平,默认 0.05

Tail :尾部类型变量 ,‘both’ 双侧检验(默认), u 不等于 uo ; ‘right’ 右侧检验, u>u0; ‘left’ 左侧检验 ,u<u0 ;

返回值:

h :假设的结果( 0,1 ), h=0 时,接受假设 H0 ; h=1, 拒绝假设 H0

p :检验的 p 值, p>Alpha 时,接受原假设 H0 ; p<=Alpha 时,拒绝原假设 H0.

muci :总体均值 u 的置信水平为 1-Alpha 的置信区间

zval :检验统计量的观测值

x=[97 102 105 112 99 103 102 94 100 95 105 98 102 100 103];
mu0=100;       % 原假设中的 mu0
sigma=2;       % 总体标准差
Alpha=0.05;    % 显著性水平
% 调用 ztest 函数做总体均值的双侧检验(默认) ,
% 返回变量 h ,检验的 p 值,均值的置信区间 muci ,检验统计量的观测值 zval
 [h,p,muci,zval]=ztest(x,mu0,sigma,Alpha)
h =
     1
p =
    0.0282
muci =
  100.1212  102.1455
zval =
    2.1947
由 ztest 函数返回值可以看到, h=1 ,且 p=0.0282<0.05 ,所以在显著性水平 =0.05 下拒绝的原假设 H0:u=u0=100 ,因此认为该切割机不能正常工作,同时还返回了总体均值的置信水平为 95% ( 1-0.05 )的置信区间为 [100.1212  102.1455] 。


例:

化肥厂用自动包装机包装化肥,某日测得 9 包化肥的质量如下:

49.4  50.5  50.7  51.7  49.8  47.9  49.2  51.4  48.9 

设每包化肥的质量服从正态分布,是否可以认为每包化肥的平均质量为 50 ?取显著性水平 a=0.05 。

分析:这是总体标准差未知时的单个正态总体均值的检验,根据题目要求可以写出如下假设:

 H0 : u=u0=50 ,                       H1 : u/=u0(u 不等于 u0)

MATLAB 统计工具箱中提供了 ttest 函数 用来做总体标准差未知时的正态总体均值的检验,调用格式和 ztest 类似,返回值有点不同

 [h,p,muci,stats]=ttest(x,mu0,Alpha,Tail)

输入参数中没有标准差,其它都一样

返回值 stats 是一个结构体变量,包括 t 检验统计量的观测值,自由度,和样本的标准差; 其它都一样

% 定义样本观测值向量
x=[49.9 50.5 50.7 51.7 49.8 47.9 49.2 51.4 48.9];
mu0=50;    % 原假设中的均值 u0=50
Alpha=0.05;  % 显著性水平 alpha
% 调用 ttest 函数做总体均值的双侧检验
% 返回变量 h ,检验值 p ,均值的置信空间 muci ,结构体变量 stats
 [h,p,muci,stats]=ttest(x,mu0,Alpha)
h =
     0
p =
    1.0000
muci =
   49.0625   50.9375
stats =
    tstat: -1.7478e-14
       df: 8
       sd: 1.2196
由于返回值 h=0 , p=1>0.05, 所以在显著性水平 =0.05 下接受原假设 H0 : u=u0=50 ,认为每包化肥的平均质量为 50 ,并且总体均值 u 的置信水平为 95% 的置信区间为 [49.0625 50.9375]

 总体标准差未知时的两个正态总体均值的比较  t  检验 

两独立样本的  t  检验

 

   例:

   甲、乙两台机床加工同一种产品,从这两台机床加工的产品中随机抽取若干件,测得产品直径为:

   甲机床: 20.1,20.0,19.3,20.6,20.2,19.9,20.0,19.9,19.1,19.9

   乙机床: 18.6, 19.1,20.0,20.0,20.0,19.7,19.9,19.6,20.2

   设甲、乙两机床加工的产品的直径分布服从正态分布 N ( u1 , a1^2 )和 N(u2,a2^2) ,试比较甲、乙两台机床加工的产品的直径均值是否有显著性差异,取显著性水平 a=0.05

  H0 : u1=u2                       H1:u1/=u2(u1 不等于 u2)

 MATLAB 统计工具箱中的 ttest2 函数可以用来做总体标准差未知时的两个正态总体均值的比较检验;

调用格式:

 [h,p,muci,stats]=ttest(x,y,Alpha,Tail,vartype)

x , y 为输入的两个样本观测值

Alpha 为显著性水平

tail 为尾部类型

cartype :为方差类型,用来指定两总体方差是否相等, ‘equal’ 表示等方差, ‘unequal’ 表示异方差

返回值与 ttest 函数一致, muci 是指均值差的置信空间

% 定义甲机床的样本观测值向量
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;               % 显著性水平
tail='both';              % 尾部类型为双侧
vartype='equal';          % 方差类型为等方差
% 调用 ttest2 函数作两个正态总体均值的比较检验
% 返回变量 h ,检验的 p 值,均值差的置信区间,结构体变量 stats
 [h,p,muci,stats]=ttest2(x,y,Alpha,tail,vartype)
h =
     0
p =
    0.3191
muci =
   -0.2346    0.6791
stats =
    tstat: 1.0263
       df: 17
       sd: 0.4713
返回的检验值 p>0.05, 所以在显著性水平 =0.05 下,接受原假设 H0 : u1=u2 ,认为甲、乙两台机床加工的产品的直径没有显著差异。此时, u1-u2 的置信水平为 95% 的置信区间为 [-0.2346    0.6791]

 ( 2 )配对样本的  t  检验

     (两样本不是独立的)

  例:

  两组(各 10 名)有资质的评酒员分别对 12 种不同的酒进行品评,每个评酒员在品尝后进行评分,然后对每组的每个样品计算其平均分,评分结果如下

                 样品 1       样本 2       样品 3     样品 4      样品 5       样品 6       样品 7       样品 8       样品 9       样品 10     样品 11      样品 12   

第一组      80.3      68.6          72.2     71.5      72.3          70.1         74.6        73.0        58.7        78.6         85.6           78.0

第二组      74.0       71.2        66.3      65.3     66.0           61.6        68.8          72.6        65.7        72.6         77.1           71.5

设两组评酒员的评分分布服从正态分布 N(u1,a1^2) 和 N(u2,a2^2) ,试比较两组评酒员的评分是否有显著差异,取显著性水平 a=0.05

分析:由于每个红酒样本都对应两个评分,显然样本等长,并且两样本不独立,这是配对样本的比较问题,根据题目要求可写出如下的假设:

  H0 : u1=u2 ,                       H1 : u1/=u2(u1 不等于 u2)

  由于两个样本不独立,通常的做法是将两个样本对应数据最差,把两个正态总体均值的比较检验转化为单个正态总体均值的检验,然后就可用 ttest 函数进行检验

  上面的假设改写为如下假设

  H0 : u=u1-u2=0 ,                    H1 : u/=0(u 不等于 0)

然后调用 ttest 函作配对样本的比较  t  检验

 [h,p,muci,stats]=ttest(x,y,Alpha,Tail)
x , y 为输入的观测样本观测值向量,其它参数与 ttest 一致
% 样本 1
x=[80.3,68.6,72.2,71.5,72.3,70.1,74.6,73.0,58.7,78.6,85.6,78.0];
% 样本 2
y=[74.0,71.2,66.3,65.3,66.0,61.6,68.8,72.6,65.7,72.6,77.1,71.5];
Alpha=0.05;     % 显著性水平
tail='both';    % 尾部类型为双侧
% 调用 ttest 函数作配对样本的比较 t 检验
% 返回变量 h ,检验的 p 值,均值差的置信区间 muci ,结构体变量 stats
 [h,p,muci,stats]=ttest(x,y,Alpha,tail)
h =
     1
p =
    0.0105
muci =
    1.2050    7.2617
stats =
    tstat: 3.0768
       df: 11
       sd: 4.7662
返回值 p=0.0105<0.05, 所以在显著性水平 a=0.05 下拒绝原假设 H0:u=u1-u2=0 ,认为两组评酒员的评分有显著差异。此时两总体均值差的置信水平为 95% 的置信区间为
  [  1.2050    7.2617], 该区间不包含 0 ,说明第一组评酒员的评分明显高于第二组评酒员的评分。

总体均值未知时的单个正态总体方差的卡方检验

化肥厂用自动包装机包装化肥,某日测得 9 包化肥的质量如下:

49.4  50.5  50.7  51.7  49.8  47.9  49.2  51.4  48.9 

设每包化肥的质量服从正态分布,是否可以认为每包化肥的质量的方差等于 1.5 ?取显著性水平 a=0.05 。

分析:这是总体均值未知时的单个正态总体方差的检验,根据题目要求可以写出如下假设:

H0 : a^2=a0^2=1.5,                      H1:a^2/=a0^2(a^2 不等于 a0^2)

MATLAB 统计工具箱中的 vartest 函数可用来做总体均值未知时的单个正态总体方差的检验

调用格式:

  [h,p,varci,stats]=vattest(x,v,alpha,tail)

输出参数

x :样本观测值向量

v :原假设中的方差

alpha :显著性水平

tail :尾部类型

输出参数

varci 为方差的置信区间,其他都一样

x=[49.9,50.5,50.7,51.7,49.8,47.9,49.2,51.4,48.9];
var0=1.5;    % 原假设中的方差
Alpha=0.05;  % 显著性水平
tail='both'; % 尾部类型为双侧
% 调用 vartest 函数作单个正态总体方差的双侧检验
% 返回值变量 h ,检验值 p ,方差的置信区间 varci ,结构体变量 stats
  [h,p,varci,stats]=vartest(x,var0,Alpha,tail)
h =
     0
p =
    0.8800
varci =
    0.6787    5.4594
stats =
    chisqstat: 7.9333    % 卡方检验统计量的观测值
           df: 8                     % 卡方检验统计量的自由度
返回值 p=0.88>0.05, 所以在显著性水平 a=0.05 下接受原假设 H0 : a^2=a0^2=1.5, 认为每包化肥的质量的方差等于 1.5 ,此时总体方差 a^2 的置信水平为 95% 的置信区间为 [0.6787    5.4594]

 总体均值未知时的两个正态总体方差的比较 F 检验

5  总体均值未知时的两个正态总体方差的比较 F 检验

甲、乙两台机床加工同一种产品,从这两台机床加工的产品中随机抽取若干件,测得产品直径为:

   甲机床: 20.1,20.0,19.3,20.6,20.2,19.9,20.0,19.9,19.1,19.9

   乙机床: 18.6, 19.1,20.0,20.0,20.0,19.7,19.9,19.6,20.2

   设甲、乙两机床加工的产品的直径分布服从正态分布 N ( u1 , a1^2 )和 N(u2,a2^2) ,试比较甲、乙两台机床加工的产品的直径方差是否有显著性差异,取显著性水平 a=0.05

分析:这是总体均值未知时的两个正态总体方差的比较检验,根据题目要求可写出如下假设:

H0 : a1^2=a2^2,                         H1:a1^2/=a2^2(a1^2 不等于 a2^2)'

MATLAB 统计工具箱中的 vartest2 函数 可以用来做总体均值未知时的两个正态总体方差的比较检验

调用格式:

  [h,p,varci,stats]=vattest2(x,y,alpha,tail)

输入参数:

x , y 为样本观测值向量

alpha :显著性水平

tail :尾部类型

返回值与 vartest 函数一致,置信区间 varci 是 a1^2/a2^2 的置信区间

% 定义甲机床的样本观测值向量

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;               % 显著性水平

tail='both';              % 尾部类型为双侧

  [h,p,varci,stats]=vartest2(x,y,Alpha,tail)

h =

     0

p =

    0.5798

varci =

    0.1567    2.8001

stats =

    fstat: 0.6826    %F 检验统计量的观测值

      df1: 9               %F 检验统计量的分子自由度

      df2: 8              %F 检验统计量的分母自由度

返回的检验的 p 值 p=0.5789>0.05 ,所以在显著性水平 a=0.05 下接受原假设 H0 : a1^2=a2^2 ,认为甲乙两台机床加工产品的直径的方差相等。此时 a1^2/a2^2 的置信水平为 95% 的置信区间为 [  0.1567    2.8001]

6  检验功效与样本容量的计算

  ( 1 )假设检验的两类错误

    假设检验可能会犯两类错误:第一类错误是本来原假设 H0 正确,却由于抽样的原因拒绝了 H0 ,这类错误又称之为 “ 拒真 ” 错误,犯第一类错误的概率记为 a ;第二类错误是本来 H0 不正确,却由于抽样的原因接受了 H0 ,这类错误又称为 “ 取伪 ” 错误,犯第二类错误的概率记为 b ,假设检验需要控制犯两类错误的概率均在一个较低的水平,而实际上在样本容量固定的前提下,降低 a 的同时会增加 b ,,降低 b 的同时 a 也会增加,为了平衡这一矛盾,提出了显著性检验的概念,也就是在控制犯第一类错误的概率不超过某一水平(即显著性水平)的前提下去制约 b 。

  ( 2 )检验功效与样本容量的关系

  原假设不成立的条件下,拒绝原假设的概率(即 1-b )称为检验的功效,它反映了一个显著性检验能够区分原假设和备择假设的能力,通常情况下,应使得检验功效达到一个较高的水平(例如 90% 以上)。

  当给定样本容量时可以求得检验功效,样本容量越大,检验功效越高,即区分原假设与备择假设的能力越强;反之,给定检验功效,也可求出样本容量

( 3 )   调用 sampsizepwr 函数求样本容量和检验功效

 MATLAB 统计工具箱中提供了 sampsizepwr 函数,用来求样本容量和检验功效,其调用格式如下:

   <1> n=sampsizepwr(testtype,p0,p1)

     对于不同类型的双侧检验,在显著性水平 0.05 下,求使得检验功效不低于 90% 的最小的样本容量 n 。输入参数 p0 和 p1 分别用来指定原假设和备择假设中的参数值, testtype 用来指定检验类型,是字符串变量,其取值如下表

            

<2>n=sampsizepwr ( testtype , p0 , p1 , power )

         求样本容量,用 power 参数指定参数功效,其值介于 0-1 之间

 <3>power=sampsizepwr ( testtype , p0 , p1 , [ ],n )

    给定样本容量 n ,求检验功效 power

 <4>p1=sampsizepwr ( testtype , p0 , [  ] , power , n )

   给定样本容量 n 和检验功效 power ,求备择假设中的参数 p1.

 <5> [......]=sampsizepwr ( ..... , n , param1 , val1 , param2 , val2 , ...... )

   用可选的成对出现的参数名和参数值控制计算结果,可用的参数名与参数值如下

参数名                        参数值及说明

  ‘alpha’                    检验的显著性水平,取值 0--1 之间,默认值 0.05

  ‘tail’                         尾部类型变量,用来指定备择假设的形式,   

                                    可取值 ‘both’ , ‘right’ , ‘left’

例:设需要对某一正态总体的均值进行如下检验:

         H0 : u=100 ,                 H1 : u>104

   已知总体标准差 a=6.58, 取显著性水平 =0.05 ,同时要求检验功效达到 90% 以上,求所需要的样本容量

   调用 sampsizepwr 函数求解

mu0=100;       % 原假设对应的总体均值

sigma0=6.58;   % 原假设对应的标准差

mu1=104;       % 备择假设对应的总体均值

pow=0.9;       % 检验功效

% 调用 sampsizepwr 函数求样本容量

 n=sampsizepwr('z',[mu0,sigma0],mu1,pow,[],'tail','right')

n =

    24

要检验功效达到 90% 以上,需要的样本容量至少为 24 ,如果指定不同的样本容量,还可求得相应的检验功效

n=1:60;   % 指定不同的样本容量, 1,2 , ....60

mu0=100;  % 原假设对应的总体均值

sigma0=6.58;  % 原假设对应的标准差

mu1=104;      % 备择假设对应的总体均值

% 调用 sampsizepwr 函数求不同样本容量对应的检验功效

pow=sampsizepwr('z',[mu0,sigma0],mu1,[],n,'tail','right');

plot(n,pow,'k');   % 绘制检验功效与样本容量关系曲线

xlabel(' 样本容量 ');

ylabel(' 检验功效 ');

可知,随着样本容量的增大,   检验功效逐渐趋向于 1.

参考资料:https://wenku.baidu.com/view/e3b59496988fcc22bcd126fff705cc1754275f42.html?fr=search-1-wk_sea_es-income3

%%已知σ2,检验u
%eg140  σ2=0.05 H0:u=u0=100
x=[99.3,98.7,100.5,101.2,98.3,99.7,99.5,102.1,100.5];
[H,sig,ci]=ztest(x,100,0.5,0.05,0)%已知σ2,检验u
%检验结果 H=0接受假设,H=1拒绝假设
%%
%未知σ2,检验u
%p144
x=[1269,1271,1256,1265,1254];
[H,sig,ci]=ttest(x,1260,0.05,0)
%9
x=[42,65,75,78,59,71,57,68,54,55];
%[h,p,muci,stats]=ttest(x,65,0.05,0)
[h,p,varci,stats]=vartest(x,80,0.05,0)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MATLAB实现假设检验-初学者必备 的相关文章

  • Coursera 吴恩达《Machine Learning》课堂笔记 + 作业

    记录一下最近学习的资源 xff0c 方便寻找 xff1a Github 上已经有人把作业整理成为 Python 的形式了 有 py 和 ipynb 两种格式 https github com nsoojin coursera ml py h
  • tensflow学习小知识tf.train.exponential_decay

    tf train exponential decay是tensflow1 X版本的2 版本使用以下语句 tf compat v1 train exponential decay 将指数衰减应用于学习率 tf compat v1 train
  • PyTorch学习系列之PyTorch:nn和PyTorch:optim优化

    PyTorch xff1a nn 在构建神经网络时 xff0c 我们经常考虑将计算分为几层 xff0c 其中一些层具有可学习的参数 xff0c 这些参数将在学习过程中进行优化 在TensorFlow xff0c 像包 Keras xff0c
  • tf.gather()用法详解

    tf gather params indices validate indices 61 None axis 61 None batch dims 61 0 name 61 None 请注意 xff0c 在CPU上 xff0c 如果找到超出
  • 代码学习之Python冒号详解

    最近看代码发现对冒号用法理解不够透彻 xff0c 记录学习一下 xff1a 1 冒号的用法 1 1 一个冒号 a i j 这里的i指起始位置 xff0c 默认为0 xff1b j是终止位置 xff0c 默认为len a xff0c 在取出数
  • Jupyter Notebook导入和删除虚拟环境 超详细

    记录一下Jupyter Notebook导入和删除虚拟环境的步骤 xff0c 网上博客参差不齐 xff0c 每次找好几个才看到简明容易理解的 方法一步骤 为不同的环境配置kernel 有时候使用conda命令创建了新的python环境 xf
  • tf.expand_dims用法详解

    看官方讲解一些博客感觉一直不是很懂 xff0c 下面是我的个人理解结合官方文档 xff0c 有问题欢迎指出 tf expand dims tf expand dims input axis 61 None name 61 None dim
  • argparse 命令行选项、参数和子命令解析器

    最近看到很多论文代码都是用解析器写的 argparse 命令行选项 参数和子命令解析器 argparse 模块可以让人轻松编写用户友好的命令行接口 程序定义它需要的参数 xff0c 然后 argparse 将弄清如何从 sys argv 解
  • torch.unsqueeze和 torch.squeeze() 详解

    1 torch unsqueeze 详解 torch unsqueeze input dim out 61 None 作用 xff1a 扩展维度 返回一个新的张量 xff0c 对输入的既定位置插入维度 1 注意 xff1a 返回张量与输入张
  • Android中获取唯一的id

    文章目录 Android唯一设备ID现状IMEIMAC地址唯一Id实现方案那些硬件适合硬件标识工具类 Android唯一设备ID现状 设备ID xff0c 简单来说就是一串符号 xff08 或者数字 xff09 xff0c 映射现实中硬件设
  • debian虚拟机下如何安装增强功能

    1 安装gcc和kernel headers gcc有可能默认安装的有 xff08 如果没有还需要安装gcc xff09 xff0c 但是还需要安装build essential sudo apt get install build ess
  • PyTorch学习系统之 scatter() 函数详解 one hot 编码

    torch Tensor scatter scatter 和 scatter 的作用是一样的 xff0c 只不过 scatter 不会直接修改原来的 Tensor xff0c 而 scatter 会 torch Tensor scatter
  • 最新RNN相关模型

    最近在看最新RNN相关模型 找到很多论文 Fundamentals of Recurrent Neural Network RNN and Long Short Term Memory LSTM network 递归神经网络 xff08 R
  • 知识追踪模型的应用

    背景 MOOC 近年来 xff0c 随着在线学习系统在教育环境中越来越普及 xff0c 在线学习人数越来越多 xff0c 教育者不可能追踪每一个学习者的知识状态并提供个性化的学习指导 xff1b 在线学习系统中的知识需要学习者通过各种冗余信
  • 自然语言处理之语料库

    语料库 定义 xff1a 语料库 corpus 就是存放语言材料的仓库 语言数据库 xff09 语料库技术的发展 早期 xff1a 语料库在语言研究中被广泛使用 xff1a 语言习得 方言学 语言教学 句法和语义 音系研究等 沉寂时期 xf
  • 知识追踪入门系列-论文资料汇总

    Paper xff1a 知识追踪相关论文 下载论文和代码见reference第一个链接 Deep Knowledge Tracing 首次提出将RNN用于知识追踪 xff0c 并能够基于复杂的知识联系进行建模 xff08 如构建知识图谱 x
  • 知识追踪方法比较

    DKT xff1a Deep knowledge tracing In Advances in neural information processing systems 这是一种开创性的方法 xff0c 它使用单层LSTM模型来预测学生的
  • 机器学习 注意力 笔记资料贴

    Self Attention与Transformer详解 https zhuanlan zhihu com p 47282410 写的非常详细 https jalammar github io illustrated transformer
  • 图像的几何变换maketform imtransform imresize imcrop

    背景 几何变换是将图像像素从一个位置映射到另一个位置 几何变换有五种常见类型 xff1a 剪切变换 平移变换 缩放变换 旋转变换和投影变换 它们如图4 1所示 在该图中 xff0c 原始图像显示在 A 中 xff0c 而变换后的图像显示在
  •  决策树(Decision Tree)原理及实现

    决策树 xff08 Decision Tree xff09 原理及实现 一 算法简介 1 1 基本模型介绍 决策树是一类常见的机器学习方法 xff0c 可以帮助我们解决分类与回归两类问题 模型可解释性强 xff0c 模型符合人类思维方式 x

随机推荐