第四部分的卡方检验是研究类别变量之间的关系,而这一部分的方差分析则是研究类别型自变量与数值型因变量之间的关系,它在形式上是比较多个总体的均值是否相等

从形式上看,方差分析与之前的t检验z检验区别不大,都是检验均值是否相等,但在比较多个均值时,t检验需要做多次两两比较的假设检验,而方差分析只需要一次,并且方差分析中是将所有的样本信息结合在一起,增加了分析的可靠性。

下面我们仍旧从三个问题出发来研究一下方差分析:

  • 方差分析到底是啥?
  • 方差分析从哪里来?
  • 方差分析要到哪里去?(有什么用?)

这里并不打算按照这个顺序来分析这三个问题,因为很多理论都是为了解决某些实际问题而提出的,理论只是对解决方法的高度概括,从实际问题出发,反而可以更好地理解为什么要研究这些理论。下面将从以下几个方面来回答这些问题:

  • 1、为什么要做方差分析?(方差分析有什么用?)
  • 2、方差分析到底是啥?从哪里来的?
  • 3、方差分析的基本假定
  • 4、单因素方差分析
1、为什么要做方差分析?

这里举个实际的例子来引出方差分析,这样会对方差分析具体在做什么有更深的印象:

为了研究客户满意度是否与行业有关,消费者协会对各个行业抽样了数量不等的公司,分别统计了各个公司的被投诉次数:

那么基于以上的数据,你是否可以判断客户的投诉次数与行业有关。

问题其实比较清晰,就是比较这四个行业之间被投诉的均值是否相等,这里的行业就是类别型自变量,被投诉次数就是数值型因变量。所以方差分析要研究的就是行业对被投诉次数是否有显著影响。

2、方差分析到底是啥?从哪里来的?

方差分析的思想来自于误差的分解,对于来自同一个分布的数据,抽样带来的误差其实只有随机误差,即随机抽样抽到的不同值与均值之间的差距,以上面这个例子为例,我们可以把各个行业内部的抽样数据认为是来自同一个分布,即零售业不同企业有不同的被投诉次数,他们之间的不同可以认为只是随机误差,也被称为组内误差(SSE)

不同行业之间误差被称为组间误差(SSA),如果被投诉次数与行业无关,可以认为不同行业的抽样也是来自于同一总体分布的抽样,那么此时误差只有随机误差。而如果不同行业的抽样并不是来自同一总体分布,意味着被投诉次数与行业有关,那么此时组间误差包括随机误差和系统误差,这个系统误差就是由于行业这个因素带来。

综合以上,我们可以将总体误差(SST)分为组间误差和组内误差

当我们检验不同行业的均值是否相等时,其实就是检验组间误差是不是过大,包含了一定量的系统误差。

3、方差分析的基本假定

有三个基本假定:

每个总体都应服从正态分布;

每个总体的方差必须相同;

观测值是独立的;

其中第三点一般都满足,前两点需要借助样本值做一些检验的工作;

4、单因素方差分析(F检验)

如果只涉及一个类别的自变量的方差分析,则称其为单因素方差分析,最上面的例子就是一个单因素方差分析。

首先提出假设:

H0=μ1=μ2=...=μkH_0 = \mu_1 = \mu_2 = ... = \mu_kH0​=μ1​=μ2​=...=μk​

H1=μi(i=1...k)H_1 = \mu_i (i = 1...k)H1​=μi​(i=1...k)不全相等

构造统计量:

1) 计算个样本的均值

即计算各个行业的均值:

2) 计算总均值

即计算总体均值:

这里:
X‾‾=57+66+...+77+5823=47.87\overline {\overline X} = {57 + 66 + ... + 77 + 58 \over 23} = 47.87X=2357+66+...+77+58​=47.87
X‾1=49X‾2=48,X‾3=35,X‾4=59\overline X_1 = 49 \overline X_2 = 48, \overline X_3 = 35, \overline X_4 = 59X1​=49X2​=48,X3​=35,X4​=59
求这四个平均值的平均值同样得到47.87。
所以,总均值可以看成所有数据点的均值,或每组均值的均值。

3) 计算各误差平方和

  • 总平方和:

SST=∑i=1k∑j=1ni(xij−x‾‾)2=(57−47.869)2+...+(58−47.47.869)2=4164.608SST = \sum^k_{i=1}\sum^{n_i}_{j=1}(x_{ij} - \overline {\overline x})^2 = (57 - 47.869)^2 + ... + (58 - 47.47.869)^2 = 4164.608SST=i=1∑k​j=1∑ni​​(xij​−x)2=(57−47.869)2+...+(58−47.47.869)2=4164.608

  • 组间平方和:

SSA=∑i=1k(x‾i−x‾‾)2=7∗(49−47.869)2+...+5∗(59−47.869)2=1456.608SSA = \sum^k_{i=1}(\overline x_{i} - \overline {\overline x})^2 = 7*(49 - 47.869)^2 + ... + 5*(59 - 47.869)^2 = 1456.608SSA=i=1∑k​(xi​−x)2=7∗(49−47.869)2+...+5∗(59−47.869)2=1456.608

  • 组内平方差:

SSE=∑i=1k∑j=1ni(xij−x‾i)2=(57−49)2+...+(58−59)2=2708SSE = \sum^k_{i=1}\sum^{n_i}_{j=1}(x_{ij} - \overline x_i)^2 = (57 - 49)^2 + ... + (58 - 59)^2 = 2708SSE=i=1∑k​j=1∑ni​​(xij​−xi​)2=(57−49)2+...+(58−59)2=2708

并且:SST=SSA+SSESST = SSA + SSESST=SSA+SSE

4) 计算统计量

SST的自由度为n-1,n为观测值的个数;

SSA的自由度为k-1,k为因素水平的个数;

SSE的自由度为n-k。

平方和 自由度 自由度计算公式
SST= 4164.608 22 n - 1
SSA = 1456.608 3 k - 1
SSE = 2708 19 n - k

故:
总平方和 = 组内平方和 + 组间平方和

我们其实是要比较SSA与SSE,因为我们确认SSE,即组内误差来自随机误差,那我们就以SSE为基准,去比较SSA,若二者相差不大,则认为组间误差也仅仅是随机误差而没有系统误差,而由于二者之间的数量级不一样(自由度),难以直接比较,所以我们可以比较二者的均方误差:

组间均方误差:MSA=SSAk−1MSA = {SSA \over k-1}MSA=k−1SSA​ 服从 χ2(k−1)\chi^2(k-1)χ2(k−1)

组内均方误差: MSE=SSEn−kMSE = {SSE \over n-k}MSE=n−kSSE​ 服从 χ2(n−k)\chi^2(n-k)χ2(n−k)

于是,我们构造FFF统计量:F=MSAMSE∼F(k−1,n−k)F = {MSA \over MSE} \sim F(k-1, n-k)F=MSEMSA​∼F(k−1,n−k)

计算可得统计量的值为:

F=3.406F = 3.406F=3.406

这里定义的统计量叫F统计量,它服从F分布,这里可以认为它是两个χ2\chi^2χ2分布之比,两者的自由度可以相等,也可以不等。
  \;
F统计量是组间平方和除以其自由度k-1,也被称为组间均方误差(MSA),然后除以组内平方和除以其自由度n-k:
F=MSAMSE=SSAk−1SSEn−kF = {MSA \over MSE} = {{SSA \over k-1} \over {SSE \over n-k}}F=MSEMSA​=n−kSSE​k−1SSA​​

如果分子比分母大很多,那就说明波动大多数来自于各组之间,较少来自于各组之内,这时我们应该相信,总体均值之间存在差异,如果这个数字很大,那就意味着零假设成立的概率较低;
如果这个数字很小,分母更大,那就意味着组内波动比组间波动在总波动中占比更多,这意味着差异可能只是随机产生的,这就更难拒绝零假设。

对于这个问题,α=0.05,n1=3,n2=19\alpha = 0.05, n_1 = 3, n_2 = 19α=0.05,n1​=3,n2​=19,从下面的F分布表中可以读出临界F值:

这里从F分布统计表中读出的临界F值是:
Fc=F0.05(3,19)=3.13F_c = F_{0.05}(3, 19) = 3.13Fc​=F0.05​(3,19)=3.13

因为F=3.406>Fc=3.13F = 3.406 > F_c = 3.13F=3.406>Fc​=3.13,所以,在零假设前提下,得到观测值的概率非常低,因此我们拒绝零假设,相信很有可能总体均值存在差异。

参考文献:
[1] 方差分析
[2] 统计 可汗学院

『统计学』第五部分:方差分析和F检验相关推荐

  1. 『统计学』第一部分:常用概率分布

    本文将对统计学中常见的四种分布进行总结,包括二项分布.几何分布.泊松分布.正态分布. 在此之前,首先来看一下统计学中的一些基本概念: 『概率分布』 首先,什么是概率分布? 要明白概率分布,首先考虑两个 ...

  2. 『统计学』第四部分:回归分析和卡方检验

    『回归分析』 『线性回归中的平方误差』 如上图,线性回归的平方误差如下: S E l i n e = ( y 1 − ( m x 1 + b ) ) 2 + ( y 2 − ( m x 2 + b ) ...

  3. 『统计学』第二部分:中心极限定理及其应用

    『中心极限定理』 首先,我们来探讨下什么是中心极限定理? 有时候统计概率就像魔术一样,能够从少量数据中得出不可思议的强大结论.我们只需要对1000个美国人进行电话调查,就能去预测美国总统大选的得票数. ...

  4. 『统计学』第三部分:假设检验

    『假设检验和p值』 统计学中的假设检验听起来很高端,其实只不过是披了层数学的皮,底层的思想非常简单,就是基本的逻辑推理的套路. 用福尔摩斯的话说,就是:一旦排除所有的不可能,剩下的不管多么难以置信,一 ...

  5. 『统计学』常用的数据分析方法都在这了!Part.2

    阿平 | 作者 知乎 | 来源 1 相关分析 研究现象之间是否存在某种依存关系,对具体有依存关系的现象探讨相关方向及相关程度. 单相关:两个因素之间的相关关系叫单相关,即研究时只涉及一个自变量和一个因 ...

  6. 『PyTorch』第五弹_深入理解autograd_中:Variable梯度探究

    查看非叶节点梯度的两种方法 在反向传播过程中非叶子节点的导数计算完之后即被清空.若想查看这些变量的梯度,有两种方法: 使用autograd.grad函数 使用hook autograd.grad和ho ...

  7. 人工智能其实就是『八卦』

    1956年,几位计算机科学家在达特茅斯会议(Dartmouth Conferences)上提出了"人工智能"的概念,关于人工智能的研究和应用自此开始慢慢孵化.近几年深度学习的研究和 ...

  8. 临清有学计算机编程的吗,『临清·第五次主题活动·少儿编程课堂』聊报小记者“小小程序员”活动...

    原标题:『临清·第五次主题活动·少儿编程课堂』聊报小记者"小小程序员"活动 人 工 智 能 少儿编程一般是指针对小学及幼儿阶段的学生设计的编程模式,把原来复杂的英文代码编程语言转换 ...

  9. 『Python』__getattr__()特殊方法

    self的认识 & __getattr__()特殊方法 将字典调用方式改为通过属性查询的一个小class, class Dict(dict):def __init__(self, **kw): ...

最新文章

  1. 用.net中的socket实现文件传输
  2. Sqlserver 查询语句性能测试
  3. TCP通信的客户端代码实现
  4. python映射实体类_【HIBERNATE框架开发之二】第一个HIBERNATE-ANNONATION项目(采用@ENTITY、@ID直接映射实体类)...
  5. vue的介绍及基本使用(详细,好理解,示例代码)
  6. malloc 函数详解
  7. mysql phpwind_PHPWind环境搭建(Linux)
  8. 手把手教如何用Linux下IIO设备(附代码)
  9. 50欧姆线设计 高频pcb_高频PCB设计:射频电路的布局的走线
  10. 任务调度:全网最全 xxl-job任务触发流程
  11. JavaSE综合项目演练
  12. JVM垃圾回收器-CMS并发标记清除
  13. 【无标题】软件企业认定条件(双软企业认定条件2022)
  14. jpeg压缩解压缩简介
  15. StratoVirt 中的 PCI 设备热插拔实现
  16. Mysql数据库报错:Row size too large ( 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DY
  17. 什么是线程循环发包 ?
  18. 测试tcp和udp端口连通性
  19. 电脑桌面怎么恢复正常?
  20. carsim中质心加速度_CarSim仿真快速入门(七)—车辆参数化建模

热门文章

  1. 密码校验:大小写字母、字符、数字组合,最少8位
  2. 一文看懂IC芯片生产流程:从设计到制造与封装
  3. Robbins-Monro 随机逼近算法和序列学习(Sequential Learning)
  4. Apple Configurator 2获取ipa包
  5. 红队武器库-网络安全人员必备
  6. [Violet]蒲公英(分块)
  7. 《Python语言程序设计基础》——读书笔记
  8. 语言模型训练工具SRILM
  9. 晶晨905 2G+16G 与 1G+8G的内存占用对比
  10. 【项目分享】使用 PointNet 进行点云分割