关于假设检验matlab代码例题_如何用matlab对数据进行拟合[通俗易懂]

关于假设检验matlab代码例题_如何用matlab对数据进行拟合[通俗易懂]参考资料:https://wenku.baidu.com/view/e3b59496988fcc22bcd126fff705cc1754275f42.html?fr=search-1-wk_se

关于假设检验matlab代码例题_如何用matlab对数据进行拟合[通俗易懂]

单个正态总体的假设检验

关于假设检验matlab代码例题_如何用matlab对数据进行拟合[通俗易懂]

调用格式 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] 。

关于假设检验matlab代码例题_如何用matlab对数据进行拟合[通俗易懂]

关于假设检验matlab代码例题_如何用matlab对数据进行拟合[通俗易懂]

关于假设检验matlab代码例题_如何用matlab对数据进行拟合[通俗易懂]

例:

化肥厂用自动包装机包装化肥,某日测得 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  检验

 关于假设检验matlab代码例题_如何用matlab对数据进行拟合[通俗易懂]

   例:

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

   甲机床: 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)

今天的文章关于假设检验matlab代码例题_如何用matlab对数据进行拟合[通俗易懂]分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/70040.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注