精华内容
下载资源
问答
  • 网站首页对于新访客跳出率65.26%,老访客跳出率64.92%,是否说明新老访客在首页跳出率存在显著差异?男性用户在注册流程中退出率为15.99%,女性用户退出率为14.83%,是否说明男女用户在网站的注册流程中的表现有显著...

    三个网站分析中常见的场景:A,B两版广告创意,A版本转化率4.94%,B版本转化率5.75%,是否说明B版本比A版本转化效果好?网站首页对于新访客跳出率65.26%,老访客跳出率64.92%,是否说明新老访客在首页跳出率存在显著差异?男性用户在注册流程中退出率为15.99%,女性用户退出率为14.83%,是否说明男女用户在网站的注册流程中的表现有显著差异?

    ChiSquareWordle

    本篇文章通过卡方检验来对网站分析中这三个常见的场景进行检验,用来说明这些指标间的差异是由偶然因素引起的还是在统计学上具有显著性意义。卡方检验主要用来检验实际数据与理论数据分布是否一致,或说有无显著差异问题。

    A/B版本广告转化率效果是否有差异?

    A,B两版广告创意,A版本转化率4.94%,B版本转化率5.75%,是否能说明B版本转化效果比A版好?

    建立假设

    首先建立假设:

    • 虚无假设:A B两版广告创意在转化率上不存在显著差异。
    • 备择假设:A B两版广告创意在转化率上存在显著差异。

    实测值

    以下是A,B两版广告的访问量和购买数量。

    AB广告转化率

    我们将A,B版本广告的访问量数据分为产生购买的访问量和为产生购买的访问量,并进行转置,以获得用于进行卡方检验的实测值数据。以下是数据整理方法以及经过整理和分类后广告创意A,B的实测值数据。

    广告创意f01

    AB广告转化率f0

    期望值

    除了实测值以外,还需要计算A B广告创意的理论值,也就是期望值。以下是期望值的计算公式。

    AB广告转化率期望值计算公式

    • 未购买数量占总访问量的比例为2135/2254
    • 购买数量占总访问量的比例为119/2254
    • 广告创意A未购买数量的期望值为1135*2135/2254
    • 广告创意A购买数量的期望值为1135*119/2254
    • 广告创意B未购买数量的期望值为939*2135/2254
    • 广告创意B购买数量的期望值为939*119/2254

    按公式我们计算出了广告创意A和广告创意B未购买数量及购买数量的期望值数据。

    X及P值

    根据实测值和期望值,根据拟合度公式可以求出X的值

    chap1022

    这里还有另一种简化的公式,可以不必计算期望值直接求出X的值。

    chap1032

    根据已知的X值,可以求得P值为0.39。0.39>0.05。因此接受接受原假设,广告创意A和广告创意B不存在显著差异。

    AB广告转化率xp

    新老访客在跳出率上是否有差异?

    网站首页对于新访客跳出率65.26%,老访客跳出率64.92%,是否说明新老访客在首页跳出率存在显著差异?

    建立假设

    首先建立假设:

    • 虚无假设:新老访客在跳出率上不存在显著差异。
    • 备择假设:新老访客在跳出率上存在显著差异。

    实测值

    以下是新老访客的访问量和跳出量的具体数据。

    新老访客

    通过整理和行列转换我们获得了新老访客的实测值数据。

    新老访客f0

    期望值

    获得实测值数据后就可以按照前面的简化公式计算X值了。如果要使用拟合度公式,就还需要按理论分布计算出新老访客的期望值数据。以下为计算完成的期望值数据。

    新老访客fe

    X及P值

    根据实则值和期望值,计算出x值及P值。P值为0.03<0.05。因此可以认为在95%的置信区间下拒绝原假设。新访客与老访客存在显著差异。

    新老访客xp

    男性用户与女性用户流失率是否有差异?

    男性用户在注册流程中退出率为15.99%,女性用户退出率为14.83%,是否说明男女用户在网站的注册流程中的流失情况有显著差异?

    建立假设

    首先建立假设:

    • 虚无假设:男性用户与女性用户在流失率上不存在显著差异。
    • 备择假设:男性用户与女性用户在流失率上存在显著差异。

    实测值

    以下是男性用户和女性用户访问量和退出量数据。

    男女用户退出率

    通过对原始数据进行整理和行列转换我们获得了实测值数据。

    男女用户退出率f0

    期望值

    按理论分布计算出男性用户和女性用户的期望值数据。

    新老访客fe

    X及P值

    根据实际值和期望值数据计算出X值及P值,这里P值为0.005。0.005<0.01,因此可以认为在99%的置信区间下拒绝原假设。男性用户与女性用户存在显著差异。

    男女用户xp

    这里有朋友可能会有些疑问,A B版本广告转化率的差异为5.75%-4.94%=0.81%,而新老访客跳出率的差异为65.26%-64.92%=0.34%。为什么差异较大的A B版本广告在转化率上不存在显著差异,而新老访客在跳出率上则是存在显著差异呢?这和场景中访问量的绝对值有关,把广告转化率和新老访客跳出率的场景理解为抛硬币实验,把访问量理解为实验的次数。10万次实验比1千次实验中出现的差异更加显著。

    —【所有文章及图片版权归 蓝鲸(王彦平)所有。欢迎转载,但请注明转自“蓝鲸网站分析博客”。】—



    Read more: http://bluewhale.cc/2016-03-05/chi-square-test.html#ixzz45sI5ZzoQ
    展开全文
  • 无论你从事何种领域的科学研究还是统计调查,显著检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。笔者作为科研界一名新人也曾经在显著检验方面吃过许多苦头。后来醉心于统计...

    转载于 关于显著性检验,你想要的都在这儿了!!(基础篇)


    无论你从事何种领域的科学研究还是统计调查,显著性检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。笔者作为科研界一名新人也曾经在显著性检验方面吃过许多苦头。后来醉心于统计理论半载有余才摸到显著性检验的皮毛,也为显著性检验理论之精妙,品种之繁多,逻辑之严谨所折服。在此,特写下这篇博文,以供那些仍然挣扎在显著性检验泥潭的非统计专业的科研界同僚们参考。由于笔者本人也并非统计专业毕业,所持观点粗陋浅鄙,贻笑大方之处还望诸位业界前辈,领域翘楚不吝赐教。小可在此谢过诸位看官了。
    本篇博文致力于解决一下几点问题,在此罗列出来:
    1.什么是显著性检验?
    2.为什么要做显著性检验?
    3.怎么做显著性检验?

    下面就请跟随笔者的步伐一步步走入显著性检验的“前世与今生”。


    一、显著性检验前传:什么是显著性检验?它与统计假设检验有什么关系?为什么要做显著性检验?

    “显著性检验”实际上是英文 significance test 的汉语译名。在统计学中,显著性检验是“统计假设检验”(Statistical hypothesis testing)的一种,显著性检验是用于检测科学实验中实验组与对照组之间是否有差异以及差异是否显著的办法,也是为了突出实验组效果比对照组效果明显,否则的话也便没有什么意义可言。实际上,了解显著性检验的“宗门背景”(统计假设检验)更有助于一个科研新手理解显著性检验。“统计假设检验”这一正名实际上指出了“显著性检验”的前提条件是“统计假设”,换言之“无假设,不检验”。任何人在使用显著性检验之前必须在心里明白自己的科研假设是什么,否则显著性检验就是“水中月,镜中花”,可望而不可即。用更通俗的话来说就是要先对科研数据做一个假设,然后用检验来检查假设对不对。一般而言,把要检验的假设称之为原假设,记为H0;把与H0相对应(相反)的假设称之为备择假设,记为H1。
    如果原假设为真,而检验的结论却劝你放弃原假设。此时,我们把这种错误称之为第一类错误。通常把第一类错误出现的概率记为α
    如果原假设不真,而检验的结论却劝你不放弃原假设。此时,我们把这种错误称之为第二类错误。通常把第二类错误出现的概率记为β
    通常只限定犯第一类错误的最大概率α, 不考虑犯第二类错误的概率β。我们把这样的假设检验称为显著性检验,概率α称为显著性水平。 显著性水平是数学界约定俗成的,一般有α =0.05,0.025.0.01这三种情况。代表着显著性检验的结论错误率必须低于5%或2.5%或1%(统计学中,通常把在现实世界中发生几率小于5%的事件称之为“不可能事件”)。以上这一段话实际上讲授了显著性检验与统计假设检验的关系。

    为了方便接下来的讲授,这里举一个例子。赵先生开了一家日用百货公司,该公司分别在郑州和杭州开设了分公司。现在存在下列数据作为两个分公司的销售额,集合中的每一个数代表着一年中某一个月的公司销售额。
    郑州分公司Z = {23,25,26,27,23,24,22,23,25,29,30}
    杭州分公司H = {24,25,23,26,27,25,25,28,30,31,29}
    现在,赵先生想要知道两个公司的销售额是否有存在明显的差异(是否存在郑州分公司销售额>杭州分公司销售额,抑或反之),以便对接下来公司的战略业务调整做出规划。下属们知道赵老板的难处,纷纷建议“只需要求平均值就知道哪个分公司的销售额更大了”。但是作为拥有高学历的赵先生懂得这样一件哲学即“我们生活在概率的世界之中”。那也就意味着,平均值并不能够说明什么问题,即便杭州分公司的销售额平均值大于郑州分公司的销售额平均值仍然不能说明杭州分公司的销售额一定就大于郑州分公司的销售额,因为“这样一种看似存在的大于关系实质上是偶然造成的而并不是一种必然”。这也便是做显著性检验的意义所在。
    赵先生最终决定,使用方差验检查这两个数据。(请先忽略为什么用方差检验,检验方法的选择下文中会详述)
    最后赵先生发现,方差检验的p 值= 0.2027,那也就意味着,虽然杭州分公司的年平均销售额26.63大于郑州分公司的销售额25.18,但是实质上,两个分公司的销售额并没有明显的差异。(相信此时的你心中有万千草泥马奔过:方差检验是怎么做的?p值是什么鬼?为什么p=0.2027意味着销售额没有明显差异?信息量好大肿么办?)

    不要急,不要慌,让我们从头来过,整理一下赵先生这里究竟发生了什么。这里很有必要了解一下根植于赵先生思维里的“慢动作”。
    第一点:如上文所述的一样,“无假设,不检验”,赵先生做了什么样的假设(Hypothesis)?
    由于赵先生想要知道两个公司的销售额是否有存在明显的差异 ,所以他的假设就是“样本集Z(郑州分公司)和样本集H(杭州分公司)不存在显著性差异,换言之这两个集合没有任何区别(销售额间没有区别)!”这就是赵先生的假设。那么问题来了,为什么赵先生要假设这两个样本集之间不存在任何区别,而不是假设这两个样本集存在区别。因为这个假设(Hypothesis)正是方差检验的原假设(null hypothesis)。那么问题又来了,什么是原假设。所谓原假设是数学界为了方便讨论而默认的“原始的假设”。没有什么为甚么可言,约定俗成罢了。
    第二点:p值怎么回事?
    这里并不用管p值是怎样得到的,直接给出结论。在显著性水平α =0.05的情况下,p>0.05接受原假设,p值<0.05拒绝原假设。我们的原假设是样本集Z和样本集H间不存在显著性差异,但是由于p=0.2027>0.05,所以接受原假设,即样本集Z和样本集H间不存在显著性差异。当然有接受就有拒接,如果这里的p值小于0.05,那么就要拒绝原假设,即集合Z和集合H间存在显著性差异。
    第三点:怎么做方差检验以及为何做方差检验之后再细讲,这里暂且不表。

    在这一章节的最后,给出本章的两个问题的答案,相信你现在已经可以理解:
    1、什么是统计假设检验?
    所谓统计假设检验就是事先对总体(随机变量)的参数或总体分布形式做出一个假设,然后利用样本信息来判断这个假设是否合理。而把只限定第一类错误概率的统计假设检验就称之为显著性检验。 在上例中,我们的假设就是一种显著性检验。因为方差检验不适用于估计参数和估计总体分布,而是用于检验试验的两个组间是否有差异。而方差检验正是用于检测我们所关心的是这两个集合(两个分布)的均值是否存在差异。
    2、为什么要做显著性检验?
    因为我们想要判断样本与我们对总体所做的假设之间的差异是纯属机会变异,还是由我们所做的假设与总体真实情况之间不一致所引起的。 在我们的例子中,差异就是H的均值要高于Z的均值,但是最终的结论p>0.05证明,这个差异纯属机会变异(H均值>Z均值是偶然的,当H和Z的采样点数趋于无穷多时,H的均值会趋近等于Z的均值)而不是假设与真实情况不一致。如果p值<0.05,那么也就意味着我们的假设(H集合和Z集合没差别)与真实情况不一致,这就使得假设不成立,即H集合和Z集合有差别。


    二、怎么做显著性检验?(基于MATLAB)

    显著性检验可以分为参数检验非参数检验。参数检验要求样本来源于正态总体(服从正态分布),且这些正态总体拥有相同的方差,在这样的基本假定(正态性假定方差齐性假定)下检验各总体均值是否相等,属于参数检验。

    当数据不满足正态性和方差齐性假定时,参数检验可能会给出错误的答案,此时应采用基于秩的非参数检验。

    2.1 参数检验(方差分析)

    参数检验的方法及其相应知识点的解释,这里只给出参数检验中常见的方差分析(anova)

    方差分析主要分为①单因素一元方差分析;②双因素一元方差分析 ; ③多因素一元方差分析 ; ④单因素多元方差分析 。下面一节对各种方差分析的实现方法进行介绍。但在介绍之前,我要首先“剧透”一下两个重要的点,理解这些点有助于区别不同类型的方差分析。
    什么叫做因素,什么叫做元?
    先解释一下什么叫做"元"。我假定正在看这篇博文的人一定具有小学以上文化水平,那么想必你一定对“一元二次方程”“二元一次方程”“多元一次方程”这种概念不陌生。所谓的“元”,正是指未知变量的个数。在统计假设检验中,仍然把待检验的未知变量称之为“元”而把影响未知变量的行为(事件)称之为“因素”。有过机器学习基础的同学可以把“元”和“因素”分别理解成机器学习中的“特征个数”和“标签个数”。拥有多个特征便是“多元”,而拥有多个标签便是“多因素”。

    2.1.1 单因素一元方差分析的方法和案例:

    相关MATLAB函数:
    函数一:anova1( X, Group, displayopt)
    参数解释:在第一种用法中,X是一个n行1列的数组,Group也是一个n行1列的数组。X为待检验的样本集,这个样本集中包括若干个对照组和实验组的全部数据。那么机器怎么知道哪个数据属于哪个组呢?很简单,通过Group这个列向量一一对应指明即可。一下这个例子来自于MATLAB的help文档,在这里用于实例说明:
    假定现在有三组数据
    组一(st):82 86 79 83 84 85 86 87
    组二(al1):74 82 78 75 76 77
    组三(al2):79 79 77 78 82 79
    现在需要对这三组数据做方差检验,使用anova1函数的方法如下
    1.首先将所有的数据放在同一个数组strength中:

    >> strength = [82 86 79 83 84 85 86 87 74 82 78 75 76 77 79 79 77 78 82 79];
    

    2.设置对应与strength对应位置的标签为alloy:

    >> alloy = {'st','st','st','st','st','st','st','st','al1','al1','al1','al1','al1','al1','al2','al2','al2','al2','al2','al2'};
    

    3.调用anova1函数

    >> p = anova1(strength,alloy)
    

    最终得到的结果会是一个数值和两幅图,一个值是p值。p值得看法在上文已经介绍过,这里不再细细的介绍。在本例中,p的值如下
    p =1.5264e-004
    显然,从p值看,三组值之间存在显著性差异。有一点必须提一下:这里p存在显著性差异并不意味着三组之间两两都存在显著性差异,而只是说明显著性差异在这三组之间存在。
    第一幅图是一张表,这张表被称之为ANOVA (Analysis of Variance) 表。相信许多非统计专业的同学见到ANOVA表的一瞬间是崩溃的,一堆问题奔涌而出:
    Source是什么鬼?SS是什么鬼,df是什么鬼,MS是什么鬼,F是什么鬼,Prob>F是什么鬼,etc.
    这里为了解决“什么鬼”的问题,对这张表给出详细的解释:

    Source表示方差来源(谁的方差),这里的方差来源包括Groups(组间),Error(组内),Total(总计);
    SS(Sum of squares)表示平方和
    df(Degree of freedom)表示自由度
    MS(Mean squares)表示均方差
    F表示F值(F统计量),F值等于组间均方和组内均方的比值,它反映的是随机误差作用的大小。
    Prob>F表示p值
    这里需要引出两个小问题:第一个小问题是F值怎么使用,第二个小问题是p值和F值的关系是什么?
    率先普及一下p值和F值之间的关系:
    F实际值>F查表值,则p<=0.05
    F实际值<F查表值,则p>0.05
    不难看出F值在本例中等于15.4,它正是组间方差92.4和组内方差6的比值。查F分布表(下图)

    根据 n=19( Total 的df),m=2(Groups的df)
    可得F0.05( m, n-m-1) = F0.05( 2, 16) = 3.634。F实际值15.4>F查表值3.634,所以可以判定显著性差异存在,且p值小于0.05
    以上讲述了如何仅仅使用F值判断显著性差异的方法并讲述了F值同p值之间的关系。

    这里有必要提一下anova1函数中的参数displayopt 的作用。在大规模的anova1调用中(例如把anova1放在for循环中反复调用),需要把displayopt设置为’off’,否则anova1每调用一次就会绘制两幅图,这样会迅速的耗费计算机的内存,容易造成程序崩溃。
    除了上文中介绍的第一种调用anova1的方式,还有一种方式用于均衡的方差分析所谓均衡就是要求不同的组别内的统计数据个数必须相同。在上例中出现的各个组的统计个数分别为{8,6,6}就属于非均衡。在均衡状态下,每个组的数据单独构成X中的一列,这样便可以省略参数Group,调用方式就可以简化为anova1(X)

    在上文中,我们提到过。方差分析必须满足两条假设,分别是正态性假定和方差齐性假定。因此,在一个完整的统计工程中,必须首先检测数据的正态性假定和方差齐性假定,这就涉及到另外两个函数 lillietest 正态检验函数(这正是我们上文提到的分布假设检验而不是参数检验,它检验的目标是数据集服从何种分布)和 vartestn 方差齐性检验(这正是我们上文提到的参数检验而不是分布假设检验 ,它检测的目标是数据集的分布服从什么样的参数,这里就是方差)

    函数二:lillietest(X)

    >> [h,p] = lillietest (strength(1:8))
    h =
         0
    p =
        0.5000
    

    解释:h = 0可以认为数据服从正态分布,h=1则认为不服从正态分布
    p >0.05可以认为接受原假设h = 0,则数据服从正态分布

    >> [h,p] = lillietest (strength(9:14))
    h =
         0
    p =
        0.5000
    >> [h,p] = lillietest (strength(15:20))
    h =
         0
    p =
        0.5000
    

    可以得出结论,strength中三组数都服从正态分布

    函数三:vartestn(X, Group)

    >> p = vartestn(strength,alloy,'off')
    p
    =0.5142
    

    注意:X和Group必须是列向量,否则会报错
    p>0.05则说明X中的不同Group是齐次的,也就是方差性齐。

    2.1.2 双因素一元方差分析的方法和案例:

    正如上文所述,既然是双因素,那便是有多个标签了。因此双因素一元方差分析可以理解成“单特征双标签机器学习技术”。由于双因素一元方差分析要求数据是均衡的,所以它的标签可以省略,就如同上文中介绍的anova1的第二种使用方法一样。这里的例子引用于MATLAB的anova2的help文档,用于说明anova2的使用方法。
    这里有一批爆米花数据,现在我们知道这些爆米花的质量打分同两个因素相关,一个是爆米花的品牌(有三个品牌:Gourmet,National,Generic)另一个是爆米花的制作工艺(油炸,气压)。这些数据如下所述:

    brand Gourmet National Generic
    methods
    油炸 5.5000 4.5000 3.5000
    油炸 5.5000 4.5000 4.0000
    油炸 6.0000 4.0000 3.0000
    气压 6.5000 5.0000 4.0000
    气压 7.0000 5.5000 5.0000
    气压 7.0000 5.0000 4.5000

    现在需要了解的目标有三个,第一:列和列之间是否有显著性差异(品牌间的显著性差异),原假设是显著性差异不存在;第二:行与行之间是否存在显著性差异,原假设是显著性差异不存在 ;第三:品牌和方法之间的交互作用是否明显,原假设是交互作用不明显
    为了完成以上三个问题,所以特别引入anova2函数,anova2函数的参数如下:
    p = anova2( X, reps, displayopt)
    X即为待检验数组。其中,X的每列一代表一种因素,X的每若干行代表另一种因素,这里的若干使用reps指明。displayopt同anova1一样,这里不再详述。anova2的返回是一值一幅图。下面是具体的MATLAB方法:

    >> popcorn =[
      5.5000  4.5000  3.5000
      5.5000  4.5000  4.0000
      6.0000  4.0000  3.0000
      6.5000  5.0000  4.0000
      7.0000  5.5000  5.0000
      7.0000  5.0000  4.5000];
     
    >> [p,table,stats] = anova2(popcorn,3)
     
    p =
        0.0000    0.0001    0.7462
    

    解释:p(1) = 0.0000, 推翻原假设,所以列与列之间的显著性差异存在(品牌间存在显著性差异);p(2) = 0.0001,推翻原假设,所以行与行之间的显著性差异存在(方法间的显著性差异存在);p(3) = 0.7462,保留原假设,则品牌和方法间的交互作用不明显。
    图表中的Columns代表列,Rows代表行,Interaction代表交互作用,其他的与我们在anova2中讲述的完全相同,这里也不再详细分析。

    2.1.3 多因素一元方差分析的方法和案例:

    p = anovan(X, Group, Opt)
    其中,X代表着待检验数据;Group代表着X的因素,由于是多因素,所以Group是多个列组成的。Opt可以选择为’model’,model后面可以填写’full’和’interaction’。
    比如因素有三个x,y,z,那么如果model为interaction,计算结果会包括x的显著性,y的显著性,z的显著性,xy,xz,yz的交互影响显著性
    如果model为full,计算结果会包括x的显著性,y的显著性,z的显著性,xy,xz,yz的交互影响显著性以及xyz的交互显著性。

    这里的例子仍然来自于MATLAB的help文档,y是待检验的数据,g1,g2,g3是与y中数据一一对应的3个因素(数据标签)

    y = [52.7 57.5 45.9 44.5 53.0 57.0 45.9 44.0]';
    g1 = [1 2 1 2 1 2 1 2];
    g2 = {'hi';'hi';'lo';'lo';'hi';'hi';'lo';'lo'};
    g3 = {'may';'may';'may';'may';'june';'june';'june';'june'};
    
    
    
    >> p = anovan(y,{g1 g2 g3},'model','interaction')
     
    p =
     
        0.0347
        0.0048
        0.2578
        0.0158
        0.1444
        0.5000
    

    这里有一个使用的小窍门,如果你想做非平衡双因素一元方差分析那么也可以采用多因素一元方差分析函数。

    2.1.4 单因素多元方差分析的方法和案例:

    [d, p] = manova1(X, Group);

    p,X和Group与之前相同。该方差分析的原假设是“各组的组均值是相同的多元向量”这里对d做出解释:
    d=0,接受原假设
    d=1,拒绝原假设,认为各组的组均值不完全相同,但是不能拒绝它们共线的假设。
    d=2,拒绝原假设,各组的组均值向量可能共面,但是不共线。
    四种商品(x1,x2,x3,x4)按照不同的两种销售方式进行销售,数据如下:

    编号 x1 x2 x3 x4 销售方式
    1 125 60 338 210 1
    2 119 80 233 330 1
    3 63 51 260 203 1
    4 65 51 429 150 1
    5 130 65 403 205 1
    6 65 33 480 260 1
    7 100 34 468 295 2
    8 65 63 416 265 2
    9 110 69 377 260 2
    10 88 78 299 360 2
    11 73 63 390 320 2
    12 103 54 416 310 2
    13 64 51 507 320 2

    >> X =
     
       125    60   338   210
       119    80   233   330
        63    51   260   203
        65    51   429   150
       130    65   403   205
        65    33   480   260
       100    34   468   295
        65    63   416   265
       110    69   377   260
        88    78   299   360
        73    63   390   320
       103    54   416   310
        64    51   507   320
    
    
    
    >> Groups =
     
         1
         1
         1
         1
         1
         1
         2
         2
         2
         2
         2
         2
         2
    >> [d, p] = manova1(X, Groups);
     
    d =
     
         0
    p =
     
        0.0695
    

    因此,拒绝原假设,各组的组均值不是相同的多元向量。

    2.2 非参数检验(Kruskal-Wallis检验和Friedman检验):

    到这里,参数检验部分就算是说完了。我们可以回顾一下,参数检验的四种函数分为anova1,anova2,anovan,manova1。他们都基于共同的两个假设:正态性假定和方差齐性假定 ,分别对应着函数 lillietest 和 vartestn。但是,我们在实际工作中,不可能总是遇到满足这两个假定的统计数据,这时候,如果强行采用参数检验就会造成错误。此时,可以采用基于秩和的非参数检验。这里我们介绍两种非参数检验:Kruskal-Wallis检验,Friedman检验。通过参数检验的部分介绍,想必读者已经对显著性检验入门,有些细节这里不再详细介绍,留作有兴趣读者自行查询。这里对分参数检验只做必要介绍。

    2.2.1 Kruskal-Wallis检验

    Kruskal-Wallis检验又被称之为单因素非参数方差分析,是非参数版的anova1。该检验的原假设是:k个独立样本来自于相同的正态总体。其MATLAB函数如下:

    p = kruskalwallis(X,Group)
    

    X,Group,p和参数检验里的完全相同。不再详细介绍。

    2.2.2 Friedman检验

    Friedman检验又被称之为双因素秩方差分析,是非参数版的anova2。同anova2一样,待检验的数据也必须是均衡的。但是需要特别注意的是,Friedman检验和anova2检验不完全相同,anova2同时注意两个因素对待检验数据的影响,但是,Friedman检验只注重2个因素中的其中一个对待检验数据的影响,而另一个因素则是用来区分区组用的。

    如上图所示矩阵X,Friedman检验只关注X的各个列(因素A)水平之间有无显著差异,他对各行之间(因素B,也被称之为区组因素)完全不感兴趣。因此,Friedman检验的原假设是k个独立样本(X的各列)来自于相同的正态总体。至于为何Friedman检验对因素B不感兴趣,这里通过一个例子说明。该例子来源于《MATLAB统计分析与应用40个案例分析》

    有4名美食评委1234对来自于四个地区ABCD的名厨的名菜水煮鱼做出评价打分,数据如下:

    地区 A B C D
    美食评委
    1 85 82 82 79
    2 87 75 86 82
    3 90 81 80 76
    4 80 75 81 75

    现在我们想知道,这四个地方的水煮鱼品质是否相同。

    数据分析:我们的目标是四个地方水煮鱼的品质是否相同。那么同一个评委对四个地区厨师的打分就具有可参考性,而不同地区评委之间对同一个厨师的打分参考性几乎没有(受评委自己的主观意识影响太强)。因此,我们认为四个地区是因素A,而评委是因素B(区组因素),不同区组之间的数据没有可比较性。

    >> X =
     
        85    82    82    79
        87    75    86    82
        90    81    80    76
        80    75    81    75
    
    >> p = friedman(X,1)
    p = 0.0434
    

    因此可以认为,四个地区制作水煮鱼的水平有显著性差别。至于是那两个之间有显著性差别还需要一一比较。

    结语:讲到这里,常见的显著性检验方法就算是讲完了。希望通过这篇博文可以使显著性检验不再成为各位看官的心头大患,不必再谈“检”色变。如果真的可以做到这样,于愿足矣。

    总结一下:

    1、首先,要知道显著性检验是统计假设检验的一种,显著性检验只考虑犯第一类错误的情况,也就是原假设为真的情况下,我们却错误的拒绝它的概率。在机器学习领域中,如两个分类器的分类指标,分别进行了100轮的测试得到的平均准确率分别是70%和72%,单单从平均值的角度并不能得到A比B的分类效果好,因为这有可能是偶然造成的,并不是一种必然的现象,所以为了科学验证,必须对A和B的所有round得到的准确率结果进行显著性检验。

    2、上面讲解了两种显著性检验的方法,一种是参数检验:方差分析(anova),其中包括了四种不同数据情况下的方差分析方法,但是在使用这种参数检验的时候必须满足两个条件:正态性假定和方差齐性假定,也就是说它们应该服从正态分布并且具有相同的方法,所以在使用方差分析的时候,必须先进行正态性检验和方差齐性检验。由于日常的工作中的数据并不是一直满足上面的情况,所以另一种非参数检验也很有必要。非参数检验提到了两种基于秩和检验(rank sum test)的Kruskal-Wallis检验(克鲁斯卡尔-沃利斯检验)和Friedman检验(弗里德曼检验)。

    3、另外区分参数检验和非参数检验的区别也可以看出,一种是对数据的分布有假设,另一种对数据的分布并没有做出任何假设。这类似与机器学习中参数模型和非参数模型的区别

    展开全文
  • 显著检验

    2018-08-17 10:55:30
    无论你从事何种领域的科学研究还是统计调查,显著检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。笔者作为科研界一名新人也曾经在显著检验方面吃过许多苦头。后来醉心于统计...

    无论你从事何种领域的科学研究还是统计调查,显著性检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。笔者作为科研界一名新人也曾经在显著性检验方面吃过许多苦头。后来醉心于统计理论半载有余才摸到显著性检验的皮毛,也为显著性检验理论之精妙,品种之繁多,逻辑之严谨所折服。在此,特写下这篇博文,以供那些仍然挣扎在显著性检验泥潭的非统计专业的科研界同僚们参考。由于笔者本人也并非统计专业毕业,所持观点粗陋浅鄙,贻笑大方之处还望诸位业界前辈,领域翘楚不吝赐教。小可在此谢过诸位看官了。

         本篇博文致力于解决一下几点问题,在此罗列出来:1.什么是显著性检验? 2.为什么要做显著性检验? 3.怎么做显著性检验?下面就请跟随笔者的步伐一步步走入显著性检验的“前世与今生”。

     


     

    一:显著性检验前传:什么是显著性检验?它与统计假设检验有什么关系?为什么要做显著性检验?

         “显著性检验”实际上是英文significance test的汉语译名。在统计学中,显著性检验是“统计假设检验”(Statistical hypothesis testing)的一种,显著性检验是用于检测科学实验中实验组与对照组之间是否有差异以及差异是否显著的办法。实际上,了解显著性检验的“宗门背景”(统计假设检验)更有助于一个科研新手理解显著性检验。“统计假设检验”这一正名实际上指出了“显著性检验”的前提条件是“统计假设”,换言之“无假设,不检验”。任何人在使用显著性检验之前必须在心里明白自己的科研假设是什么,否则显著性检验就是“水中月,镜中花”,可望而不可即。用更通俗的话来说就是要先对科研数据做一个假设,然后用检验来检查假设对不对。一般而言,把要检验的假设称之为原假设,记为H0;把与H0相对应(相反)的假设称之为备择假设,记为H1。

         如果原假设为真,而检验的结论却劝你放弃原假设。此时,我们把这种错误称之为第一类错误。通常把第一类错误出现的概率记为α

         如果原假设不真,而检验的结论却劝你不放弃原假设。此时,我们把这种错误称之为第二类错误。通常把第二类错误出现的概率记为β

         通常只限定犯第一类错误的最大概率α, 不考虑犯第二类错误的概率β。我们把这样的假设检验称为显著性检验,概率α称为显著性水平。显著性水平是数学界约定俗成的,一般有α =0.05,0.025.0.01这三种情况。代表着显著性检验的结论错误率必须低于5%或2.5%或1%(统计学中,通常把在现实世界中发生几率小于5%的事件称之为“不可能事件”)。(以上这一段话实际上讲授了显著性检验与统计假设检验的关系)

         为了方便接下来的讲授,这里举一个例子。赵先生开了一家日用百货公司,该公司分别在郑州和杭州开设了分公司。现在存在下列数据作为两个分公司的销售额,集合中的每一个数代表着一年中某一个月的公司销售额。

         郑州分公司Z = {23,25,26,27,23,24,22,23,25,29,30}

         杭州分公司H = {24,25,23,26,27,25,25,28,30,31,29}

    现在,赵先生想要知道两个公司的销售额是否有存在明显的差异(是否存在郑州分公司销售额>杭州分公司销售额,抑或反之),以便对接下来公司的战略业务调整做出规划。下属们知道赵老板的难处,纷纷建议“只需要求平均值就知道哪个分公司的销售额更大了”。但是作为拥有高学历的赵先生懂得这样一件哲学即“我们生活在概率的世界之中”。那也就意味着,平均值并不能够说明什么问题,即便杭州分公司的销售额平均值大于郑州分公司的销售额平均值仍然不能说明杭州分公司的销售额一定就大于郑州分公司的销售额,因为“这样一种看似存在的大于关系实质上是偶然造成的而并不是一种必然”。

         赵先生最终决定,使用方差验检查这两个数据。(请先忽略为什么用方差检验,检验方法的选择下文中会详述)

         最后赵先生发现,方差检验的p 值= 0.2027,那也就意味着,虽然杭州分公司的年平均销售额26.63大于郑州分公司的销售额25.18,但是实质上,两个分公司的销售额并没有明显的差异。(相信此时的你心中有万千草泥马奔过:方差检验是怎么做的?p值是什么鬼?为什么p=0.2027意味着销售额没有明显差异?信息量好大肿么办?)

     

    不要急,不要慌,让我们从头来过,整理一下赵先生这里究竟发生了什么。这里很有必要了解一下根植于赵先生思维里的“慢动作”。

    第一点:如上文所述的一样,“无假设,不检验”,赵先生做了什么样的假设(Hypothesis)?

    由于赵先生想要知道两个公司的销售额是否有存在明显的差异 ,所以他的假设就是“样本集Z(郑州分公司)和样本集H(杭州分公司)不存在显著性差异,换言之这两个集合没有任何区别(销售额间没有区别)!”这就是赵先生的假设。那么问题来了,为什么赵先生要假设这两个样本集之间不存在任何区别,而不是假设这两个样本集存在区别。因为这个假设(Hypothesis)正是方差检验的原假设(null hypothesis)。那么问题又来了,什么是原假设。所谓原假设是数学界为了方便讨论而默认的“原始的假设”。没有什么为甚么可言,约定俗成罢了。

    第二点:p值怎么回事?

    这里并不用管p值是怎样得到的,直接给出结论。在显著性水平α =0.05的情况下,p>0.05接受原假设,p值<0.05拒绝原假设。我们的原假设是样本集Z和样本集H间不存在显著性差异,但是由于p=0.2027>0.05,所以接受原假设,即样本集Z和样本集H间不存在显著性差异。当然有接受就有拒接,如果这里的p值小于0.05,那么就要拒绝原假设,即集合Z和集合H间存在显著性差异。

    第三点:怎么做方差检验以及为何做方差检验之后再细讲,这里暂且不表。

    在这一章节的最后,给出本章的两个问题的答案,相信你现在已经可以理解:

    1什么是统计假设检验?

    所谓统计假设检验就是事先对总体(随机变量)的参数总体分布形式做出一个假设,然后利用样本信息来判断这个假设是否合理。而把只限定第一类错误概率的统计假设检验就称之为显著性检验。在上例中,我们的假设就是一种显著性检验。因为方差检验不适用于估计参数和估计总体分布,而是用于检验试验的两个组间是否有差异。而方差检验正是用于检测我们所关心的是这两个集合(两个分布)的均值是否存在差异。

    2.为什么要做显著性检验?

    因为我们想要判断样本与我们对总体所做的假设之间的差异是纯属机会变异,还是由我们所做的假设与总体真实情况之间不一致所引起的。 在我们的例子中,差异就是H的均值要高于Z的均值,但是最终的结论p>0.05证明,这个差异纯属机会变异(H均值>Z均值是偶然的,当H和Z的采样点数趋于无穷多时,H的均值会趋近等于Z的均值)而不是假设与真实情况不一致。如果p值<0.05,那么也就意味着我们的假设(H集合和Z集合没差别)与真实情况不一致,这就使得假设不成立,即H集合和Z集合有差别。

     


     

    二:怎么做显著性检验?(基于MATLAB)

    显著性检验可以分为参数检验和非参数检验。参数检验要求样本来源于正态总体(服从正态分布),且这些正态总体拥有相同的方差,在这样的基本假定(正态性假定和方差齐性假定)下检验各总体均值是否相等,属于参数检验。

    当数据不满足正态性和方差齐性假定时,参数检验可能会给出错误的答案,此时应采用基于秩的非参数检验。

    参数检验的方法及其相应知识点的解释(这里只给出参数检验中常见的方差分析):

    方差分析主要分为'①单因素一元方差分析'; '②双因素一元方差分析 '; '③多因素一元方差分析 '; '④单因素多元方差分析 '。下面一节对各种方差分析的实现方法进行介绍。但在介绍之前,我要首先“剧透”一下两个重要的点,理解这些点有助于区别不同类型的方差分析。

    什么叫做因素,什么叫做元?

    先解释一下什么叫做"元"。我假定正在看这篇博文的人一定具有小学以上文化水平,那么想必你一定对“一元二次方程”“二元一次方程”“多元一次方程”这种概念不陌生。所谓的“元”,正是指未知变量的个数。在统计假设检验中,仍然把待检验的未知变量称之为“元”而把影响未知变量的行为(事件)称之为“因素”。有过机器学习基础的同学可以把“元”和“因素”分别理解成机器学习中的“特征个数”和“标签个数”。拥有多个特征便是“多元”,而拥有多个标签便是“多因素”。

     

    ①单因素一元方差分析的方法和案例:

    相关MATLAB函数:

    函数一:anova1( X, Group, displayopt)

    参数解释:在第一种用法中,X是一个n行1列的数组,Group也是一个n行1列的数组。X为待检验的样本集,这个样本集中包括若干个对照组和实验组的全部数据。那么机器怎么知道哪个数据属于哪个组呢?很简单,通过Group这个列向量一一对应指明即可。一下这个例子来自于MATLAB的help文档,在这里用于实例说明:

    假定现在有三组数据

    组一(st):82 86 79 83 84 85 86 87

    组二(al1):74 82 78 75 76 77

    组三(al2):79 79 77 78 82 79

    现在需要对这三组数据做方差检验,使用anova1函数的方法如下

    1.首先将所有的数据放在同一个数组strength中:

    >> strength = [82 86 79 83 84 85 86 87 74 82 78 75 76 77 79 79 77 78 82 79];

    2.设置对应与strength对应位置的标签为alloy:

    >> alloy = {'st','st','st','st','st','st','st','st','al1','al1','al1','al1','al1','al1','al2','al2','al2','al2','al2','al2'};

    3.调用anova1函数

    >> p = anova1(strength,alloy)

     

    最终得到的结果会是一个数值和两幅图,一个值是p值。p值得看法在上文已经介绍过,这里不再细细的介绍。在本例中,p的值如下

    p =

      1.5264e-004

    显然,从p值看,三组值之间存在显著性差异。有一点必须提一下:这里p存在显著性差异并不意味着三组之间两两都存在显著性差异,而只是说明显著性差异在这三组之间存在。

    第一幅图是一张表,这张表被称之为ANOVA表。相信许多非统计专业的同学见到ANOVA表的一瞬间是崩溃的,一堆问题奔涌而出:

    Source是什么鬼?SS是什么鬼,df是什么鬼,MS是什么鬼,F是什么鬼,Prob>F是什么鬼,etc.

    这里为了解决“什么鬼”的问题,对这张表给出详细的解释:

     

    Source表示方差来源(谁的方差),这里的方差来源包括Groups(组间),Error(组内),Total(总计);

    SS(Sum of squares)表示平方和

    df(Degree of freedom)表示自由度

    MS(Mean squares)表示均方差

    F表示F值(F统计量),F值等于组间均方和组内均方的比值,它反映的是随机误差作用的大小。

    Prob>F表示p值

    这里需要引出两个小问题:第一个小问题是F值怎么使用,第二个小问题是p值和F值的关系是什么?

    率先普及一下p值和F值之间的关系:

    F实际值>F查表值,则p<=0.05

    F实际值<F查表值,则p>0.05

    不难看出F值在本例中等于15.4,它正是组间方差92.4和组内方差6的比值。查F分布表(下图),

     

     

    根据 n=19( Total 的df),m=2(Groups的df)

    可得F0.05( m, n-m-1) = F0.05( 2, 16) = 3.634。F实际值15.4>F查表值3.634,所以可以判定显著性差异存在,且p值小于0.05

    以上讲述了如何仅仅使用F值判断显著性差异的方法并讲述了F值同p值之间的关系。下面这张表格是箱型图,它的看法如下图所表注:

     

     

     

    这里有必要提一下anova1函数中的参数displayopt 的作用。在大规模的anova1调用中(例如把anova1放在for循环中反复调用),需要把displayopt设置为'off',否则anova1每调用一次就会绘制两幅图,这样会迅速的耗费计算机的内存,容易造成程序崩溃。

    除了上文中介绍的第一种调用anova1的方式,还有一种方式用于均衡的方差分析。所谓均衡就是要求不同的组别内的统计数据个数必须相同。在上例中出现的各个组的统计个数分别为{8,6,6}就属于非均衡。在均衡状态下,每个组的数据单独构成X中的一列,这样便可以省略参数Group,调用方式就可以简化为anova1(X)

     

    在上文中,我们提到过。方差分析必须满足两条假设,分别是正态性假定和方差齐性假定。因此,在一个完整的统计工程中,必须首先检测数据的正态性假定和方差齐性假定,这就涉及到另外两个函数lillietest正态检验函数(这正是我们上文提到的分布假设检验而不是参数检验,它检验的目标是数据集服从何种分布)和vartestn方差齐性检验(这正是我们上文提到的参数检验而不是分布假设检验 ,它检测的目标是数据集的分布服从什么样的参数,这里就是方差)

     

    函数二:lillietest(X)

    >> [h,p] = lillietest (strength(1:8))

    h =

         0

    p =

        0.5000

    解释:h = 0可以认为数据服从正态分布,h=1则认为不服从正态分布

    p >0.05可以认为接受原假设h = 0,则数据服从正态分布

    >> [h,p] = lillietest (strength(9:14))

    h =

         0

    p =

        0.5000

    >> [h,p] = lillietest (strength(15:20))

    h =

         0

    p =

        0.5000

    可以得出结论,strength中三组数都服从正态分布

     

    函数三:vartestn(X, Group)

    >> p = vartestn(strength,alloy,'off')

    p

    =0.5142

    注意:X和Group必须是列向量,否则会报错

    p>0.05则说明X中的不同Group是齐次的,也就是方差性齐。

     

    ②双因素一元方差分析的方法和案例:

     

    正如上文所述,既然是双因素,那便是有多个标签了。因此双因素一元方差分析可以理解成“单特征双标签机器学习技术”。由于双因素一元方差分析要求数据是均衡的,所以它的标签可以省略,就如同上文中介绍的anova1的第二种使用方法一样。这里的例子引用于MATLAB的anova2的help文档,用于说明anova2的使用方法。

    这里有一批爆米花数据,现在我们知道这些爆米花的质量打分同两个因素相关,一个是爆米花的品牌(有三个品牌:Gourmet,National,Generic)另一个是爆米花的制作工艺(油炸,气压)。这些数据如下所述:

     

                         brand    Gourmet        National       Generic

    methods

         油炸                        5.5000          4.5000         3.5000

         油炸                        5.5000          4.5000         4.0000

         油炸                        6.0000          4.0000         3.0000

         气压                        6.5000          5.0000         4.0000

         气压                        7.0000          5.5000         5.0000

         气压                        7.0000          5.0000         4.5000

     

    现在需要了解的目标有三个,第一:列和列之间是否有显著性差异(品牌间的显著性差异),原假设是显著性差异不存在;第二:行与行之间是否存在显著性差异,原假设是显著性差异不存在 ;第三:品牌和方法之间的交互作用是否明显,原假设是交互作用不明显

    为了完成以上三个问题,所以特别引入anova2函数,anova2函数的参数如下:

    p = anova2( X, reps, displayopt)

    X即为待检验数组。其中,X的每列一代表一种因素,X的每若干行代表另一种因素,这里的若干使用reps指明。displayopt同anova1一样,这里不再详述。anova2的返回是一值一幅图。下面是具体的MATLAB方法:

    >> popcorn =[

      5.5000  4.5000  3.5000

      5.5000  4.5000  4.0000

      6.0000  4.0000  3.0000

      6.5000  5.0000  4.0000

      7.0000  5.5000  5.0000

      7.0000  5.0000  4.5000];

     

    >> [p,table,stats] = anova2(popcorn,3)

     

    p =

        0.0000    0.0001    0.7462

    解释:p(1) = 0.0000, 推翻原假设,所以列与列之间的显著性差异存在(品牌间存在显著性差异);p(2) = 0.0001,推翻原假设,所以行与行之间的显著性差异存在(方法间的显著性差异存在);p(3) = 0.7462,保留原假设,则品牌和方法间的交互作用不明显。

    图表中的Columns代表列,Rows代表行,Interaction代表交互作用,其他的与我们在anova2中讲述的完全相同,这里也不再详细分析。

     

    ③多因素一元方差分析的方法和案例:

     

    p = anovan(X, Group, Opt);

    其中,X代表着待检验数据;Group代表着X的因素,由于是多因素,所以Group是多个列组成的。Opt可以选择为'model',model后面可以填写'full'和'interaction'。

    比如因素有三个x,y,z,那么如果model为interaction,计算结果会包括x的显著性,y的显著性,z的显著性,xy,xz,yz的交互影响显著性

    如果model为full,计算结果会包括x的显著性,y的显著性,z的显著性,xy,xz,yz的交互影响显著性以及xyz的交互显著性。

     

    这里的例子仍然来自于MATLAB的help文档,y是待检验的数据,g1,g2,g3是与y中数据一一对应的3个因素(数据标签)

    y = [52.7 57.5 45.9 44.5 53.0 57.0 45.9 44.0]';

    g1 = [1 2 1 2 1 2 1 2];

    g2 = {'hi';'hi';'lo';'lo';'hi';'hi';'lo';'lo'};

    g3 = {'may';'may';'may';'may';'june';'june';'june';'june'};

     

    >> p = anovan(y,{g1 g2 g3},'model','interaction')

     

    p =

     

        0.0347

        0.0048

        0.2578

        0.0158

        0.1444

        0.5000

     

    这里有一个使用的小窍门,如果你想做非平衡双因素一元方差分析那么也可以采用多因素一元方差分析函数。

    ④单因素多元方差分析的方法和案例:

     

    [d, p] = manova1(X, Group);

    p,X和Group与之前相同。该方差分析的原假设是“各组的组均值是相同的多元向量”这里对d做出解释:

    d=0,接受原假设

    d=1,拒绝原假设,认为各组的组均值不完全相同,但是不能拒绝它们共线的假设。

    d=2,拒绝原假设,各组的组均值向量可能共面,但是不共线。

    四种商品(x1,x2,x3,x4)按照不同的两种销售方式进行销售,数据如下:

    编号   x1     x2     x3     x4     销售方式

    1      125    60     338     210     1

    2     119     80     233     330     1

    3       63     51     260     203     1

    4       65     51     429     150     1

    5     130     65     403     205     1

    6       65     33     480     260     1

    7     100     34     468     295     2

    8       65     63     416     265     2

    9     110     69     377     260     2

    10     88     78     299     360     2

    11     73     63     390     320     2

    12   103     54     416     310     2

    13     64     51     507     320     2

     

    >> X =

     

       125    60   338   210

       119    80   233   330

        63    51   260   203

        65    51   429   150

       130    65   403   205

        65    33   480   260

       100    34   468   295

        65    63   416   265

       110    69   377   260

        88    78   299   360

        73    63   390   320

       103    54   416   310

        64    51   507   320

     

    >> Groups =

     

         1

         1

         1

         1

         1

         1

         2

         2

         2

         2

         2

         2

         2

    >> [d, p] = manova1(X, Groups);

     

    d =

     

         0

    p =

     

        0.0695

     

    因此,拒绝原假设,各组的组均值不是相同的多元向量。

     

    非参数检验:

    到这类,参数检验部分就算是说完了。我们可以回顾一下,参数检验的四种函数分为anova1,anova2,anovan,manova1。他们都基于共同的两个假设:正态性假定和方差齐性假定 ,分别对应着函数lillietest 和vartestn。但是,我们在实际工作中,不可能总是遇到满足这两个假定的统计数据,这时候,如果强行采用参数检验就会造成错误。此时,可以采用基于秩和的非参数检验。这里我们介绍两种非参数检验:Kruskal-Wallis检验,Friedman检验。通过参数检验的部分介绍,想必读者已经对显著性检验入门,有些细节这里不再详细介绍,留作有兴趣读者自行查询。这里对分参数检验只做必要介绍。

     

    ①Kruskal-Wallis检验

    Kruskal-Wallis检验又被称之为单因素非参数方差分析,是非参数版的anova1。该检验的原假设是:k个独立样本来自于相同的正态总体。其MATLAB函数如下:

     

    p = kruskalwallis(X,Group)

    X,Group,p和参数检验里的完全相同。不再详细介绍。

     

    ②Friedman检验

    Friedman检验又被称之为双因素秩方差分析,是非参数版的anova2。同anova2一样,待检验的数据也必须是均衡的。但是需要特别注意的是,Friedman检验和anova2检验不完全相同,anova2同时注意两个因素对待检验数据的影响,但是,Friedman检验只注重2个因素中的其中一个对待检验数据的影响,而另一个因素则是用来区分区组用的。

    如上图所示矩阵X,Friedman检验只关注X的各个列(因素A)水平之间有无显著差异,他对各行之间(因素B,也被称之为区组因素)完全不感兴趣。因此,Friedman检验的原假设是k个独立样本(X的各列)来自于相同的正态总体。至于为何Friedman检验对因素B不感兴趣,这里通过一个例子说明。该例子来源于《MATLAB统计分析与应用40个案例分析》

     

    有4名美食评委1234对来自于四个地区ABCD的名厨的名菜水煮鱼做出评价打分,数据如下:

                   地区       A       B       C      D

    美食评委 

         1                    85     82     82     79

         2                    87     75     86     82

         3                    90     81     80     76

         4                    80     75     81     75

    现在我们想知道,这四个地方的水煮鱼品质是否相同。

     

    数据分析:我们的目标是四个地方水煮鱼的品质是否相同。那么同一个评委对四个地区厨师的打分就具有可参考性,而不同地区评委之间对同一个厨师的打分参考性几乎没有(受评委自己的主观意识影响太强)。因此,我们认为四个地区是因素A,而评委是因素B(区组因素),不同区组之间的数据没有可比较性。

     

    >> X =

     

        85    82    82    79

        87    75    86    82

        90    81    80    76

        80    75    81    75

    >> p = friedman(X,1)

     

    p = 0.0434

    因此可以认为,四个地区制作水煮鱼的水平有显著性差别。至于是那两个之间有显著性差别还需要一一比较。

     

    结语:讲到这里,常见的显著性检验方法就算是讲完了。希望通过这篇博文可以使显著性检验不再成为各位看官的心头大患,不必再谈“检”色变。如果真的可以做到这样,于愿足矣。

     

     

     

     

    展开全文
  • 显著检验理解

    千次阅读 2018-03-12 11:58:33
    https://wenku.baidu.com/view/c16e77e8af1ffc4ffe47acdc.html无论你从事何种领域的科学研究还是统计调查,显著检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。笔者作为科研界一...
    https://wenku.baidu.com/view/c16e77e8af1ffc4ffe47acdc.html
    无论你从事何种领域的科学研究还是统计调查,显著性检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。笔者作为科研界一名新人也曾经在显著性检验方面吃过许多苦头。后来醉心于统计理论半载有余才摸到显著性检验的皮毛,也为显著性检验理论之精妙,品种之繁多,逻辑之严谨所折服。在此,特写下这篇博文,以供那些仍然挣扎在显著性检验泥潭的非统计专业的科研界同僚们参考。由于笔者本人也并非统计专业毕业,所持观点粗陋浅鄙,贻笑大方之处还望诸位业界前辈,领域翘楚不吝赐教。小可在此谢过诸位看官了。
         本篇博文致力于解决一下几点问题,在此罗列出来:1.什么是显著性检验? 2.为什么要做显著性检验? 3.怎么做显著性检验?下面就请跟随笔者的步伐一步步走入显著性检验的“前世与今生”。
     

     
    一:显著性检验前传:什么是显著性检验?它与统计假设检验有什么关系?为什么要做显著性检验?
         “显著性检验”实际上是英文significance test的汉语译名。在统计学中,显著性检验是“统计假设检验”(Statistical hypothesis testing)的一种,显著性检验是用于检测科学实验中实验组与对照组之间是否有差异以及差异是否显著的办法。实际上,了解显著性检验的“宗门背景”(统计假设检验)更有助于一个科研新手理解显著性检验。“统计假设检验”这一正名实际上指出了“显著性检验”的前提条件是“统计假设”,换言之“无假设,不检验”。任何人在使用显著性检验之前必须在心里明白自己的科研假设是什么,否则显著性检验就是“水中月,镜中花”,可望而不可即。用更通俗的话来说就是要先对科研数据做一个假设,然后用检验来检查假设对不对。一般而言,把要检验的假设称之为原假设,记为H0;把与H0相对应(相反)的假设称之为备择假设,记为H1。
         如果原假设为真,而检验的结论却劝你放弃原假设。此时,我们把这种错误称之为第一类错误。通常把第一类错误出现的概率记为α
         如果原假设不真,而检验的结论却劝你不放弃原假设。此时,我们把这种错误称之为第二类错误。通常把第二类错误出现的概率记为β
         通常只限定犯第一类错误的最大概率α, 不考虑犯第二类错误的概率β。我们把这样的假设检验称为显著性检验,概率α称为显著性水平。显著性水平是数学界约定俗成的,一般有α =0.05,0.025.0.01这三种情况。代表着显著性检验的结论错误率必须低于5%或2.5%或1%(统计学中,通常把在现实世界中发生几率小于5%的事件称之为“不可能事件”)。(以上这一段话实际上讲授了显著性检验与统计假设检验的关系)
         为了方便接下来的讲授,这里举一个例子。赵先生开了一家日用百货公司,该公司分别在郑州和杭州开设了分公司。现在存在下列数据作为两个分公司的销售额,集合中的每一个数代表着一年中某一个月的公司销售额。
         郑州分公司Z = {23,25,26,27,23,24,22,23,25,29,30}
         杭州分公司H = {24,25,23,26,27,25,25,28,30,31,29}
    现在,赵先生想要知道两个公司的销售额是否有存在明显的差异(是否存在郑州分公司销售额>杭州分公司销售额,抑或反之),以便对接下来公司的战略业务调整做出规划。下属们知道赵老板的难处,纷纷建议“只需要求平均值就知道哪个分公司的销售额更大了”。但是作为拥有高学历的赵先生懂得这样一件哲学即“我们生活在概率的世界之中”。那也就意味着,平均值并不能够说明什么问题,即便杭州分公司的销售额平均值大于郑州分公司的销售额平均值仍然不能说明杭州分公司的销售额一定就大于郑州分公司的销售额,因为“这样一种看似存在的大于关系实质上是偶然造成的而并不是一种必然”。
         赵先生最终决定,使用方差验检查这两个数据。(请先忽略为什么用方差检验,检验方法的选择下文中会详述)
         最后赵先生发现,方差检验的p 值= 0.2027,那也就意味着,虽然杭州分公司的年平均销售额26.63大于郑州分公司的销售额25.18,但是实质上,两个分公司的销售额并没有明显的差异。(相信此时的你心中有万千草泥马奔过:方差检验是怎么做的?p值是什么鬼?为什么p=0.2027意味着销售额没有明显差异?信息量好大肿么办?)
     
    不要急,不要慌,让我们从头来过,整理一下赵先生这里究竟发生了什么。这里很有必要了解一下根植于赵先生思维里的“慢动作”。
    第一点:如上文所述的一样,“无假设,不检验”,赵先生做了什么样的假设(Hypothesis)?
    由于赵先生想要知道两个公司的销售额是否有存在明显的差异 ,所以他的假设就是“样本集Z(郑州分公司)和样本集H(杭州分公司)不存在显著性差异,换言之这两个集合没有任何区别(销售额间没有区别)!”这就是赵先生的假设。那么问题来了,为什么赵先生要假设这两个样本集之间不存在任何区别,而不是假设这两个样本集存在区别。因为这个假设(Hypothesis)正是方差检验的原假设(null hypothesis)。那么问题又来了,什么是原假设。所谓原假设是数学界为了方便讨论而默认的“原始的假设”。没有什么为甚么可言,约定俗成罢了。
    第二点:p值怎么回事
    这里并不用管p值是怎样得到的,直接给出结论。在显著性水平α =0.05的情况下,p>0.05接受原假设,p值<0.05拒绝原假设。我们的原假设是样本集Z和样本集H间不存在显著性差异,但是由于p=0.2027>0.05,所以接受原假设,即样本集Z和样本集H间不存在显著性差异。当然有接受就有拒接,如果这里的p值小于0.05,那么就要拒绝原假设,即集合Z和集合H间存在显著性差异。
    第三点:怎么做方差检验以及为何做方差检验之后再细讲,这里暂且不表。
    在这一章节的最后,给出本章的两个问题的答案,相信你现在已经可以理解:
    1什么是统计假设检验
    所谓统计假设检验就是事先对总体(随机变量)的参数总体分布形式做出一个假设,然后利用样本信息来判断这个假设是否合理。而把只限定第一类错误概率的统计假设检验就称之为显著性检验。在上例中,我们的假设就是一种显著性检验。因为方差检验不适用于估计参数和估计总体分布,而是用于检验试验的两个组间是否有差异。而方差检验正是用于检测我们所关心的是这两个集合(两个分布)的均值是否存在差异。
    2.为什么要做显著性检验
    因为我们想要判断样本与我们对总体所做的假设之间的差异是纯属机会变异,还是由我们所做的假设与总体真实情况之间不一致所引起的。 在我们的例子中,差异就是H的均值要高于Z的均值,但是最终的结论p>0.05证明,这个差异纯属机会变异(H均值>Z均值是偶然的,当H和Z的采样点数趋于无穷多时,H的均值会趋近等于Z的均值)而不是假设与真实情况不一致。如果p值<0.05,那么也就意味着我们的假设(H集合和Z集合没差别)与真实情况不一致,这就使得假设不成立,即H集合和Z集合有差别。
     

     
    二:怎么做显著性检验?(基于MATLAB)
    显著性检验可以分为参数检验和非参数检验。参数检验要求样本来源于正态总体(服从正态分布),且这些正态总体拥有相同的方差,在这样的基本假定(正态性假定方差齐性假定)下检验各总体均值是否相等,属于参数检验。
    当数据不满足正态性和方差齐性假定时,参数检验可能会给出错误的答案,此时应采用基于秩的非参数检验。
    参数检验的方法及其相应知识点的解释(这里只给出参数检验中常见的方差分析):
    方差分析主要分为'①单因素一元方差分析'; '②双因素一元方差分析 '; '③多因素一元方差分析 '; '④单因素多元方差分析 '。下面一节对各种方差分析的实现方法进行介绍。但在介绍之前,我要首先“剧透”一下两个重要的点,理解这些点有助于区别不同类型的方差分析。
    什么叫做因素,什么叫做元?
    先解释一下什么叫做"元"。我假定正在看这篇博文的人一定具有小学以上文化水平,那么想必你一定对“一元二次方程”“二元一次方程”“多元一次方程”这种概念不陌生。所谓的“元”,正是指未知变量的个数。在统计假设检验中,仍然把待检验的未知变量称之为“元”而把影响未知变量的行为(事件)称之为“因素”。有过机器学习基础的同学可以把“元”和“因素”分别理解成机器学习中的“特征个数”和“标签个数”。拥有多个特征便是“多元”,而拥有多个标签便是“多因素”。
     
    ①单因素一元方差分析的方法和案例:
    相关MATLAB函数:
    函数一:anova1( X, Group, displayopt)
    参数解释:在第一种用法中,X是一个n行1列的数组,Group也是一个n行1列的数组。X为待检验的样本集,这个样本集中包括若干个对照组和实验组的全部数据。那么机器怎么知道哪个数据属于哪个组呢?很简单,通过Group这个列向量一一对应指明即可。一下这个例子来自于MATLAB的help文档,在这里用于实例说明:
    假定现在有三组数据
    组一(st):82 86 79 83 84 85 86 87
    组二(al1):74 82 78 75 76 77
    组三(al2):79 79 77 78 82 79
    现在需要对这三组数据做方差检验,使用anova1函数的方法如下
    1.首先将所有的数据放在同一个数组strength中:
    >> strength = [82 86 79 83 84 85 86 87 74 82 78 75 76 77 79 79 77 78 82 79];
    2.设置对应与strength对应位置的标签为alloy:
    >> alloy = {'st','st','st','st','st','st','st','st','al1','al1','al1','al1','al1','al1','al2','al2','al2','al2','al2','al2'};
    3.调用anova1函数
    >> p = anova1(strength,alloy)
     
    最终得到的结果会是一个数值和两幅图,一个值是p值。p值得看法在上文已经介绍过,这里不再细细的介绍。在本例中,p的值如下
    p =
      1.5264e-004
    显然,从p值看,三组值之间存在显著性差异。有一点必须提一下:这里p存在显著性差异并不意味着三组之间两两都存在显著性差异,而只是说明显著性差异在这三组之间存在
    第一幅图是一张表,这张表被称之为ANOVA表。相信许多非统计专业的同学见到ANOVA表的一瞬间是崩溃的,一堆问题奔涌而出:
    Source是什么鬼?SS是什么鬼,df是什么鬼,MS是什么鬼,F是什么鬼,Prob>F是什么鬼,etc.
    这里为了解决“什么鬼”的问题,对这张表给出详细的解释:
     
    Source表示方差来源(谁的方差),这里的方差来源包括Groups(组间),Error(组内),Total(总计);
    SS(Sum of squares)表示平方和
    df(Degree of freedom)表示自由度
    MS(Mean squares)表示均方差
    F表示F值(F统计量),F值等于组间均方和组内均方的比值,它反映的是随机误差作用的大小。
    Prob>F表示p值
    这里需要引出两个小问题:第一个小问题是F值怎么使用,第二个小问题是p值和F值的关系是什么?
    率先普及一下p值和F值之间的关系:
    F实际值>F查表值,则p<=0.05
    F实际值<F查表值,则p>0.05
    不难看出F值在本例中等于15.4,它正是组间方差92.4和组内方差6的比值。查F分布表(下图),
     
     
    根据 n=19( Total 的df),m=2(Groups的df)
    可得F0.05( m, n-m-1) = F0.05( 2, 16) = 3.634。F实际值15.4>F查表值3.634,所以可以判定显著性差异存在,且p值小于0.05
    以上讲述了如何仅仅使用F值判断显著性差异的方法并讲述了F值同p值之间的关系。下面这张表格是箱型图,它的看法如下图所表注:
     
     
     
    这里有必要提一下anova1函数中的参数displayopt 的作用。在大规模的anova1调用中(例如把anova1放在for循环中反复调用),需要把displayopt设置为'off',否则anova1每调用一次就会绘制两幅图,这样会迅速的耗费计算机的内存,容易造成程序崩溃。
    除了上文中介绍的第一种调用anova1的方式,还有一种方式用于均衡的方差分析。所谓均衡就是要求不同的组别内的统计数据个数必须相同。在上例中出现的各个组的统计个数分别为{8,6,6}就属于非均衡。在均衡状态下,每个组的数据单独构成X中的一列,这样便可以省略参数Group,调用方式就可以简化为anova1(X)
     
    在上文中,我们提到过。方差分析必须满足两条假设,分别是正态性假定方差齐性假定。因此,在一个完整的统计工程中,必须首先检测数据的正态性假定和方差齐性假定,这就涉及到另外两个函数lillietest正态检验函数(这正是我们上文提到的分布假设检验而不是参数检验,它检验的目标是数据集服从何种分布)和vartestn方差齐性检验(这正是我们上文提到的参数检验而不是分布假设检验 ,它检测的目标是数据集的分布服从什么样的参数,这里就是方差)
     
    函数二:lillietest(X)
    >> [h,p] = lillietest (strength(1:8))
    h =
         0
    p =
        0.5000
    解释:h = 0可以认为数据服从正态分布,h=1则认为不服从正态分布
    p >0.05可以认为接受原假设h = 0,则数据服从正态分布
    >> [h,p] = lillietest (strength(9:14))
    h =
         0
    p =
        0.5000
    >> [h,p] = lillietest (strength(15:20))
    h =
         0
    p =
        0.5000
    可以得出结论,strength中三组数都服从正态分布
     
    函数三:vartestn(X, Group)
    >> p = vartestn(strength,alloy,'off')
    p
    =0.5142
    注意:X和Group必须是列向量,否则会报错
    p>0.05则说明X中的不同Group是齐次的,也就是方差性齐。
     
    ②双因素一元方差分析的方法和案例:
     
    正如上文所述,既然是双因素,那便是有多个标签了。因此双因素一元方差分析可以理解成“单特征双标签机器学习技术”。由于双因素一元方差分析要求数据是均衡的,所以它的标签可以省略,就如同上文中介绍的anova1的第二种使用方法一样。这里的例子引用于MATLAB的anova2的help文档,用于说明anova2的使用方法。
    这里有一批爆米花数据,现在我们知道这些爆米花的质量打分同两个因素相关,一个是爆米花的品牌(有三个品牌:Gourmet,National,Generic)另一个是爆米花的制作工艺(油炸,气压)。这些数据如下所述:
     
                         brand    Gourmet        National       Generic
    methods
         油炸                        5.5000          4.5000         3.5000
         油炸                        5.5000          4.5000         4.0000
         油炸                        6.0000          4.0000         3.0000
         气压                        6.5000          5.0000         4.0000
         气压                        7.0000          5.5000         5.0000
         气压                        7.0000          5.0000         4.5000
     
    现在需要了解的目标有三个,第一:列和列之间是否有显著性差异(品牌间的显著性差异),原假设是显著性差异不存在;第二:行与行之间是否存在显著性差异,原假设是显著性差异不存在 ;第三:品牌和方法之间的交互作用是否明显,原假设是交互作用不明显
    为了完成以上三个问题,所以特别引入anova2函数,anova2函数的参数如下:
    p = anova2( X, reps, displayopt)
    X即为待检验数组。其中,X的每列一代表一种因素,X的每若干行代表另一种因素,这里的若干使用reps指明。displayopt同anova1一样,这里不再详述。anova2的返回是一值一幅图。下面是具体的MATLAB方法:
    >> popcorn =[
      5.5000  4.5000  3.5000
      5.5000  4.5000  4.0000
      6.0000  4.0000  3.0000
      6.5000  5.0000  4.0000
      7.0000  5.5000  5.0000
      7.0000  5.0000  4.5000];
     
    >> [p,table,stats] = anova2(popcorn,3)
     
    p =
        0.0000    0.0001    0.7462
    解释:p(1) = 0.0000, 推翻原假设,所以列与列之间的显著性差异存在(品牌间存在显著性差异);p(2) = 0.0001,推翻原假设,所以行与行之间的显著性差异存在(方法间的显著性差异存在);p(3) = 0.7462,保留原假设,则品牌和方法间的交互作用不明显。
    图表中的Columns代表列,Rows代表行,Interaction代表交互作用,其他的与我们在anova2中讲述的完全相同,这里也不再详细分析。
     
    ③多因素一元方差分析的方法和案例:
     
    p = anovan(X, Group, Opt);
    其中,X代表着待检验数据;Group代表着X的因素,由于是多因素,所以Group是多个列组成的。Opt可以选择为'model',model后面可以填写'full'和'interaction'。
    比如因素有三个x,y,z,那么如果model为interaction,计算结果会包括x的显著性,y的显著性,z的显著性,xy,xz,yz的交互影响显著性
    如果model为full,计算结果会包括x的显著性,y的显著性,z的显著性,xy,xz,yz的交互影响显著性以及xyz的交互显著性。
     
    这里的例子仍然来自于MATLAB的help文档,y是待检验的数据,g1,g2,g3是与y中数据一一对应的3个因素(数据标签)
    y = [52.7 57.5 45.9 44.5 53.0 57.0 45.9 44.0]';
    g1 = [1 2 1 2 1 2 1 2];
    g2 = {'hi';'hi';'lo';'lo';'hi';'hi';'lo';'lo'};
    g3 = {'may';'may';'may';'may';'june';'june';'june';'june'};
     
    >> p = anovan(y,{g1 g2 g3},'model','interaction')
     
    p =
     
        0.0347
        0.0048
        0.2578
        0.0158
        0.1444
        0.5000
     
    这里有一个使用的小窍门,如果你想做非平衡双因素一元方差分析那么也可以采用多因素一元方差分析函数
    ④单因素多元方差分析的方法和案例:
     
    [d, p] = manova1(X, Group);
    p,X和Group与之前相同。该方差分析的原假设是“各组的组均值是相同的多元向量”这里对d做出解释:
    d=0,接受原假设
    d=1,拒绝原假设,认为各组的组均值不完全相同,但是不能拒绝它们共线的假设。
    d=2,拒绝原假设,各组的组均值向量可能共面,但是不共线。
    四种商品(x1,x2,x3,x4)按照不同的两种销售方式进行销售,数据如下:
    编号   x1     x2     x3     x4     销售方式
    1      125    60     338     210     1
    2     119     80     233     330     1
    3       63     51     260     203     1
    4       65     51     429     150     1
    5     130     65     403     205     1
    6       65     33     480     260     1
    7     100     34     468     295     2
    8       65     63     416     265     2
    9     110     69     377     260     2
    10     88     78     299     360     2
    11     73     63     390     320     2
    12   103     54     416     310     2
    13     64     51     507     320     2
     
    >> X =
     
       125    60   338   210
       119    80   233   330
        63    51   260   203
        65    51   429   150
       130    65   403   205
        65    33   480   260
       100    34   468   295
        65    63   416   265
       110    69   377   260
        88    78   299   360
        73    63   390   320
       103    54   416   310
        64    51   507   320
     
    >> Groups =
     
         1
         1
         1
         1
         1
         1
         2
         2
         2
         2
         2
         2
         2
    >> [d, p] = manova1(X, Groups);
     
    d =
     
         0
    p =
     
        0.0695
     
    因此,拒绝原假设,各组的组均值不是相同的多元向量。
     
    非参数检验:
    到这类,参数检验部分就算是说完了。我们可以回顾一下,参数检验的四种函数分为anova1,anova2,anovan,manova1。他们都基于共同的两个假设:正态性假定和方差齐性假定 ,分别对应着函数lillietest 和vartestn。但是,我们在实际工作中,不可能总是遇到满足这两个假定的统计数据,这时候,如果强行采用参数检验就会造成错误。此时,可以采用基于秩和的非参数检验。这里我们介绍两种非参数检验:Kruskal-Wallis检验,Friedman检验。通过参数检验的部分介绍,想必读者已经对显著性检验入门,有些细节这里不再详细介绍,留作有兴趣读者自行查询。这里对分参数检验只做必要介绍。
     
    ①Kruskal-Wallis检验
    Kruskal-Wallis检验又被称之为单因素非参数方差分析,是非参数版的anova1。该检验的原假设是:k个独立样本来自于相同的正态总体。其MATLAB函数如下:
     
    p = kruskalwallis(X,Group)
    X,Group,p和参数检验里的完全相同。不再详细介绍。
     
    ②Friedman检验
    Friedman检验又被称之为双因素秩方差分析,是非参数版的anova2。同anova2一样,待检验的数据也必须是均衡的。但是需要特别注意的是,Friedman检验和anova2检验不完全相同,anova2同时注意两个因素对待检验数据的影响,但是,Friedman检验只注重2个因素中的其中一个对待检验数据的影响,而另一个因素则是用来区分区组用的。
    如上图所示矩阵X,Friedman检验只关注X的各个列(因素A)水平之间有无显著差异,他对各行之间(因素B,也被称之为区组因素)完全不感兴趣。因此,Friedman检验的原假设是k个独立样本(X的各列)来自于相同的正态总体。至于为何Friedman检验对因素B不感兴趣,这里通过一个例子说明。该例子来源于《MATLAB统计分析与应用40个案例分析》
     
    有4名美食评委1234对来自于四个地区ABCD的名厨的名菜水煮鱼做出评价打分,数据如下:
                   地区       A       B       C      D
    美食评委 
         1                    85     82     82     79
         2                    87     75     86     82
         3                    90     81     80     76
         4                    80     75     81     75
    现在我们想知道,这四个地方的水煮鱼品质是否相同。
     
    数据分析:我们的目标是四个地方水煮鱼的品质是否相同。那么同一个评委对四个地区厨师的打分就具有可参考性,而不同地区评委之间对同一个厨师的打分参考性几乎没有(受评委自己的主观意识影响太强)。因此,我们认为四个地区是因素A,而评委是因素B(区组因素),不同区组之间的数据没有可比较性
     
    >> X =
     
        85    82    82    79
        87    75    86    82
        90    81    80    76
        80    75    81    75
    >> p = friedman(X,1)
     
    p = 0.0434
    因此可以认为,四个地区制作水煮鱼的水平有显著性差别。至于是那两个之间有显著性差别还需要一一比较。
     
    结语:讲到这里,常见的显著性检验方法就算是讲完了。希望通过这篇博文可以使显著性检验不再成为各位看官的心头大患,不必再谈“检”色变。如果真的可以做到这样,于愿足矣。
    展开全文
  • 显著检验基础知识

    2018-05-04 09:41:02
    转载自 https://www.cnblogs.com/hdu-zsk/p/6293721.html无论你从事何种领域的科学研究还是统计调查,显著检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。笔者作为科研界一名...
  • 关于显著检验,有你想要的!

    万次阅读 2017-12-14 14:21:05
    显著检验(significance test)作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。在统计学中,显著检验是“统计假设检验”(Statistical hypothesis testing)的一种,显著检验是...
  • 分组回归以后如果系数显著存在差异,可以不用进一步检验系数的差异,因此统计上不显著,即使经济上存在差异也没有意义。 如果系数显著性不存在差异,那么可以使用如上方法检验系数的差异。 ...
  • 关于显著检验,你想要的都在这儿了!!(基础篇) ...无论你从事何种领域的科学研究还是统计调查,显著检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。...
  • (基础篇)https://www.cnblogs.com/hdu-zsk/p/6293721.html 无论你从事何种领域的科学研究还是统计调查,显著检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。笔者作为科研界一...
  • 【通俗理解】显著检验,T-test,P-value

    万次阅读 多人点赞 2018-08-12 11:14:21
    显著检验,判定实验结果是否由随机误差导致的。举例很好,很清楚 虽然样本中,均值苏州销售额大于郑州,但T-test发现这是随机导致的,P&gt;0.05,当样本量足够大可能他们的销售额就没有差异了 假设:两个...
  • 无论你从事何种领域的科学研究还是统计调查,显著检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。笔者作为科研界一名新人也曾经在显著检验方面吃过许多苦头。后来醉心于统计...
  • 1、提出原假设:总体均值与检验值之间不存在显著差异 备择假设:总体均值与检验值之间存在显著差异 2、选择检验统计量 3、P<0.05,拒绝原假设,总体均值与检验值之间存在差异 P>0.05,接受原假设,...
  •   无论你从事何种领域的科学研究还是统计调查,显著检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。笔者作为科研界一名新人也曾经在显著检验方面吃过许多苦头。后来醉心于...
  • IBM SPSS Statistics平均值检验,是通过计算一个或多个自变量类别的因变量平均值,并对平均值执行单向方差检验分析,来探索自变量类别平均值是否存在差异检验方法。 比如,我们经常会使用平均值检验来分析不同...
  • R-T检验差异可视化

    2021-04-13 10:16:18
    1.读取数据文件(选择对比的两组数据:group1、group2,查看这两组数据是否存在显著不同),并整合在一起; #读入文件,合并分组信息,数据重排 alpha <- read.table('alpha.txt', sep = '\t', header = TRUE, ...
  • 即用总体中的样本来推断总体均值是否与指定的检验存在显著差异 先判断样本是否服从正态分布: https://blog.csdn.net/qq_41228218/article/details/90693213
  • 实证分析中,经常需要对比多个变量在两个子样本组中的均值或者中位数是否存在显著差异。 我们选取的是在99%的置信水平下(1%的显著性水平下),用P值来决定是否显著。 在stata中来计算 *-在1%水平上下进行缩尾处理 ...
  • 转载-显著性水平入门

    2018-09-27 17:26:27
    无论你从事何种领域的科学研究还是统计调查,显著检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。笔者作为科研界一名新人也曾经在显著检验方面吃过许多苦头。后来醉心于统计...
  • R-Wilcox秩和检验

    2021-04-15 09:53:28
    Wilcox秩和检验(又称Mann-Whitney U检验)是对原假设的非参数检验,在不需要假设两组样本数据为正态分布的情况下,测试二者数据分布是否存在显著差异,此检验适用于数据分布属于非正态性的分析对象,其适用范围相较...
  • SPSS实现多个独立的样本非参数检验

    千次阅读 2020-09-30 23:52:22
    总目录:SPSS学习整理 SPSS实现多个独立的样本非参数检验目的适用情景数据处理SPSS操作SPSS输出结果分析知识点 目的 检验多个独立样本的分布是否相同 ...三种检验方式均认为三组数据的分布存在显著差异。 知识点 ...
  • 分别采用型式检验和过程检验对同一批生丝各项指标进行测试,并采用t检验法判定两种检验结果是否存在显著差异。结果表明,平均公量纤度和清洁指标不存在差异,对于偏差和最大偏差,过程检验更有利于反映偏差的真实情况,...
  • 上一节,我们重点讲解了IBM SPSS Statistics独立样本T检验检验原理、数据要求以及数据转换的方法。这部分的内容相当重要,建议先理解了...1.检验变量,即检验均值是否存在显著差异的变量数值。 2.分组变量,即用..
  • SPSS实现两独立样本非参数检验

    千次阅读 2020-09-30 00:09:27
    总目录:SPSS学习整理 SPSS实现两独立样本非参数检验目的适用情景数据...第一个显著性为1,修正后显著性为0.089,均大于0.05,认为不存在显著差异。 P=0.988>0.05,接受原假设,认为两组数据不存在显著差异。 P
  • 统计中的f检验和t检验的区别

    千次阅读 2018-01-31 12:55:05
    F检验用于比较两种分析方法是否存在显著差异(单边检验)或者两种方法紧密度是否存在差异(双边检验),我记得老师说是用于检验新方法是否可行,相当于系统误差。而T检验是利用统计量t,检验操作是否存在误差,或者...
  • T检验:两样本数据的差异

    万次阅读 2016-09-19 11:50:08
    两配对样本的T检验是利用来自两个总体的配对样本,推断总体的两个均值是否显著差异,从而推断两个总体是否存在差异。前提,我们是假定总体是服从正态分布的,X N(u1,σ21)X~N(u_{1},\sigma_{1}^{2}) 原假设:H0:u1...

空空如也

空空如也

1 2 3 4 5 6
收藏数 113
精华内容 45
关键字:

检验是否存在显著差异