T检验和卡方检验

  好久没有更新博客了,今天更新一篇关于数据分析方法的文章,主要是基于统计学的假设检验的原理,无论是T检验还是卡方检验在现实的工作中都可以被用到,而且结合Excel非常容易上手,基于这类统计学上的显著性检验能够让数据更有说服力。还是保持一贯的原则,先上方法论再上应用实例,这篇文章主要介绍方法,之后会有另外一篇文章来专门介绍实际的应用案例。

关于假设检验

  假设检验(Hypothesis Testing),或者叫做显著性检验(Significance Testing)是数理统计学中根据一定假设条件由样本推断总体的一种方法。其基本原理是先对总体的特征作出某种假设,然后通过抽样研究的统计推理,对此假设应该被拒绝还是接受作出推断。既然以假设为前提,那么在进行检验前需要提出相应的假设:

  H0:原假设或零假设(null hypothesis),即需要去验证的假设;一般首先认定原假设是正确的,然后根据显著性水平选择是接受还是拒绝原假设。

  H1:备择假设(alternative hypothesis),一般是原假设的否命题;当原假设被拒绝时,默认接受备择假设。

  如原假设是假设总体均值μ=μ0,则备择假设为总体均值μ≠μ0,检验的过程就是计算相应的统计量和显著性概率,来验证原假设应该被接受还是拒绝。

T检验

  T检验(T Test)是最常见的一种假设检验类型,主要验证总体均值间是否存在显著性差异。T检验属于参数假设检验,所以它适用的范围是数值型的数据,在网站分析中可以是访问数、独立访客数、停留时间等,电子商务的订单数、销售额等。T检验还需要符合一个条件——总体符合正态分布。

  这里不介绍t统计量是怎么计算的,基于t统计量的显著性概率是怎么查询的,其实这些计算工具都可以帮我们完成,如果有兴趣可以查阅统计类书籍,里面都会有相应的介绍。这里介绍的是用Excel的数据分析工具来实现T检验:

  Excel默认并没有加载“数据分析”工具,所以需要我们自己添加加载项,通过文件—选项—加载项—勾选“分析工具库”来完成添加,之后就可以在“数据”标签的最右方找到数据分析这个按钮了,然后就可以开始做T检验了,这里以最常见的配对样本t检验为例,比较某个电子商务网站在改版前后订单数是否产生了显著性差异,以天为单位,抽样改版前后各10天的数据进行比较:

  改版前订单数 改版后订单数
1 1032 1187
2 1178 1245
3 1098 1379
4 1045 1094
5 976 1173
6 1101 1364
7 1276 1119
8 1215 1268
9 987 1303
10 1065 1274

  首先建立假设:

H0:μ1=μ2,改版前后每天订单数均值相等;
H1:μ1≠μ2,改版前后每天订单数均值不相等。

  将数据输入Excel,使用Excel的数据分析工具,选择“t检验:平均值的成对二样本分析”,输出检验结果:

t-test-sample

  看到右侧显示的结果是不是有点晕了,看上去有点专业,其实也并不难,只要关注一个数值的大小——单尾的P值,这里是0.00565,如果需要验证在95%的置信水平下的显著性,那么0.00565显然小于0.05(1-95%),拒绝零假设,认为改版前后的订单数存在显著性差异。简单说下为什么选择单尾显著性概率P,而不是双尾,对于大部分网站分析的应用环境,我们一般需要验证改动前后数值是否存在明显提升或下降,所以一般而言只会存在一类可能——或者提升或者下降,所以只要检验单侧的概率即可,就像上面例子中改版后的订单数均值1240.6大于改版前的1097.3,我们需要验证的就是这种“大于”是否是显著的,也就是做的是左侧单边检验,这种情况下只要关注单尾的显著性概率P即可。

卡方检验

  卡方检验(chi-square test),也就是χ2检验,用来验证两个总体间某个比率之间是否存在显著性差异。卡方检验属于非参数假设检验,适用于布尔型或二项分布数据,基于两个概率间的比较,早期用于生产企业的产品合格率等,在网站分析中可以用于转化率、Bounce Rate等所有比率度量的比较分析,其实在之前的文章——Abandonment Rate的影响因素进行过相关的应用。这里同样不去介绍χ2是如何计算得到的,以及基于χ2统计量的显著性概率的查询等,这里直接以转化率为例来比较网站改版前后转化率是否发生了显著性差异,抽样改版前后各3天的网站分析数据——总访问数和转化的访问数,用“转化访问数/总访问数”计算得到转化率:

  改版前 改版后
总访问数 30567 33651
转化访问数 2976 3698
转化率 9.74% 10.99%

  首先建立假设:

H0:r1=r2,改版前后转化率相等;
H1:r1≠r2,改版前后转化率不相等。

  其实这是一个最简单的四格卡方检验的例子,也无需使用SPSS(当然你足够熟悉SPSS也可以使用类似的统计分析工具),为了简化中间的计算步骤,我这里用Excel直接制作了一个简单的卡方检验的模板,只要在相应的单元格输入统计数据就能自动显示检验的结果:

chi-square-test-sample

点击下载:卡方检验示例

  Excel中浅蓝色的单元格都支持输入,包括原用方案和测试方案的总访问数和转化访问数,另外置信度95%也是支持修改了,如果你需要99%的置信水平,只要修改这个单元格即可。

  怎么看检验结果?其实非常简单,只要看那个红色的“存在”单元格的显示结果即可,上面的案例中两者的转化率“存在”显著性差异,如果不存在,则该单元格相应的就会显示“不存在”,有了这个模板对于A/B Testing等类似的数据比较也显得非常简单容易,或者说其实这个Excel模板就是为了A/B Testing而量身定制的。 ;)

  好了,就到这里吧,其实这篇文章并不是想从专业的统计学的角度来介绍T检验和卡方检验,只是想让大家了解这两个方法的原理和适用条件,能够用最简单的方式去使用诸如此类的方法让数据更具说服力,请继续关注之后奉上的应用实例。

T检验和卡方检验》上有 32 条评论

  1. zitan

    很专业,统计学的理论直接应用了。关于EXCEL加载“通过文件—选项—加载项—勾选“分析工具库”来完成添加”,很弱弱的问问,“文件”在哪找到?

    回复
  2. joegh 文章作者

    @zitan: 不好意思,我自己用的是Excel2010,所以直接按照2010的界面来写了,刚刚看了下2007应该就是点左上角的Logo进去有“Excel选项”,之后的步骤是类似的。

    回复
  3. janessi

    有个问题,检验结果其实说明的是改版前后,xx值存在显著差异,但是xx值存在显著差异并不能说明原因就是改版,从博主使用卡方检验的原理只能理解为:时间变量和转化率变量之间显著相关,根据因果时间顺序原则认为,时间的变化带来了转化率的变化。该时间段转化率出现显著变化的可能有:营销活动、季节性周期变化、改版等……此时,如何排除其他原因来确认的确是改版导致了这种变化?

    回复
  4. joegh 文章作者

    @janessi: 哈,终于有人提出这个问题了,其实这篇文章中的例子确实存在这个问题,也就是非比较的其他干扰因素对比较结果的影响,这个会在之后的应用案例的文中详细解释,再等几天,正在抽时间整理和撰写 ;)

    回复
  5. justin lee

    博主您好,我用您的方法也分析过一次活动前后的数据,但从中发现一些问题,在95%的置信水平下明明不怎么显著的数据变化通过T检验却显示是显著的。所以我认为这与置信水平选定的合理性有关,我以前也学过统计学,知道置信区间的大小与整体数据的标准差和样本容量有密切关系。所以想请教博主是否对如何通过以往的历史数据得出一个合理的置信水平有所研究?谢谢~

    回复
  6. joegh 文章作者

    @justin lee: 你好,“在95%的置信水平下明明不怎么显著的数据变化通过T检验却显示是显著的”不是很理解,显著性本来就是基于一定置信水平下的假设检验得出的,如果没有经过假设检验怎么判定“明明不怎么显著”。另外,95%的置信水平是普遍情况下的选择,一般用于判断是否具备统计学意义的临界;在该水平下拒绝零假设时犯第一类错误的概率为5%,如果样本容量固定减少第一类错误的发生,那相应发生第二类错误的几率就会提升,所以要减少发生第一和第二类错误,需要提升样本的容量。

    回复
  7. justin lee

    @joegh: 哈哈,我明白了。活动前某指标连续7天数据:110、110、134、123、123、111、109,;活动后连续7天:130、123、181、158、117、128、112,T检验得P值=0.018<0.05表示变化显著,但从肉眼看只有"181、158”这两个数据是变化明显,其他数据变化不明显。我取的样本容量太小了,导致个别异常值对显著性检验的准确性影响很大。我应该去分析什么原因导致这两天数据变化异常。感谢博主~

    回复
  8. Pingback 引用通告: T检验和卡方检验,到底是神马东东? - 蓝枫's BLOG

  9. Pingback 引用通告: T检验和卡方检验,到底是神马东东? - 蓝枫's BLOG

  10. Pingback 引用通告: T检验和卡方检验,到底是神马东东? - 蓝枫's BLOG

  11. Pingback 引用通告: 比较测试的设定和分析 | 互联网的那点事

  12. Pingback 引用通告: 比较测试的设定和分析 | 互联网的新鲜事

  13. Pingback 引用通告: 行走在互联网路上——UE之旅 » 比较测试的设定和分析

  14. Pingback 引用通告: T检验和卡方检验 | 行走在互联网路上——UE之旅

  15. 毛头

    对一个不懂统计学的人把T检验给搞明白了,作者高人。希望有更多的好作品,感谢作者的无私奉献。

    回复
  16. Pingback 引用通告: 徳博 » 比较测试的设定和分析[zt]

  17. don

    T检验应该用错工具了。按题意及假设的条件来说,应该属于两正态总体的平均值之差的检验,应该使用EXCEL中的“t检验:双样本等方差假设”,结果是不一样的,如“t Stat”应为-3.29,临界值也是不一样的。
    另外,卡方检验属于非参数检验的提法不完全正确。

    回复
  18. joegh 文章作者

    @don: 非常感谢你的评论和指正。这里可能将改版前后看成“配对样本”确实有点不合适,因为网站的用户始终在变化,用“等方差假设”会合适一点;另外卡方检验一般认为总体的分布和参数是未知的,归为非参数检验问题不大吧。

    回复
  19. Pingback 引用通告: Google Website Optimizer报告解读 | 行走在互联网路上

  20. 大大只

    你好,方法不错,这里我有一个疑问就是:如果我们分析的目的是想知道改版是否对网站产生显著影响,那么我们是否可以直接拿改版前后的两个总销售额进行简单对比就行了吗?如果改版后总销售额比改版前显著增长,我们大可以认为改版是有效的,能否这样呢?哈哈,我只是个学生,问题水平有限别见怪

    回复
  21. 猪头四

    我有两个问题:
    1. 在置信度95%的情况下两者存在显著性差异,我是不是可以理解为在样本数据95%可信的情况下,两者存在显著性差异
    2. 置信度的选择是不是和样本的大小有关,如样本数量很小时,如只有几百个,是不是选择置信度90%更合适些

    回复
  22. joegh 文章作者

    @猪头四: 这个具体的解释可以参考统计学的教材。
    1、置信度指的是用样本数据估计总体时选择的可信程度,这里的比较同样基于样本数据来推测总体是否存在差异,所以95%是指用样本存在的差异性推测总体存在差异的可信程度。
    2、置信度是人为定的,为的是确定从样本推测总体的准确度需要达到多高。当然样本数据越多时,样本对总体的解释越完全,所以在相同的置信度下,只要样本存在较小差异就可以推测出总体有差异;样本数量较小时,需要保存样本的差异度较大才能得出总体存在差异的这个结论,因为小样本对总体的解释能力有限或样本可能的数据波动会比较大。

    回复
  23. 猪头四

    @joegh: 谢谢回复,第1点弄明白了,关于第2点,我查了资料,我觉得小样本数据应该选择比较高的置信度(正常选择95%),您看我这样理解对不对,我找的资料中有一个是这样解释的“确定置信水平究竟是百分之几,决定于内部控制的健全状况和运用状况如何。也就是说,在内部控制的完备状况和运用状况均属良好的情况下,选择80%的置信水平就可以了,但当内部控制的完备状况和运用状况并不充分时,就必须选择95%乃至99%的置信水平。”

    回复
  24. ailieven

    你好,我在当当网选购了你与蓝鲸的作品网站数据分析实战,现在正好看到卡方检验和T检验这里,发现书中你在描述T检验中好像有个错误:书中说只需要关注单尾的P值(红框)的大小,这里的P值等于0.0398小于0.05(P75页)

    回复
  25. joegh 文章作者

    @ailieven: 感谢你购买我们的书,你说的这个地方确实有问题,是我们当时做校验的时候不够仔细,抱歉。
    这里的0.0398应该改成0.0149,以图片红框的数值为准。

    回复
  26. Pingback 引用通告: T检验和卡方检验 | 内容采集

zitan 进行回复 取消回复

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

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>