方差分析实例

目录

方差分析步骤

相关概念

基本思想

随机误差

系统误差

组内方差

组间方差

方差的比较

方差分析的前提

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

2.各个总体的方差必须相同

3.观察值是独立的

原假设成立

备择假设成立

单因素方差分析

提出假设

检验的统计量

水平的均值

全部观察值的总均值

总误差平方和SST

水平项平方和 SSA

误差项平方和 SSE

平方和之间的关系

各自自由度

均方(MS)

F统计量

方差分析表

实例

方差分析中的多重比较

LSD方法

实例颜色对销售额的影响

多因素方差分析

无交互效应的多因素方差分析

有交互效应的多因素方差分析

双因素方差分析步骤

提出假设

构造统计量

实例

提出假设

计算各平方和

计算均方

计算检验统计量(F)

Python方差分析实例


方差分析的基本思想是将总体方差(反映了所有样本的变异程度)分解为组间方差(反映了不同样本均值之间的差异)和组内方差(反映了相同样本内观测值的变异)。如果组间方差远大于组内方差,说明各样本均值之间差异显著;反之,差异不显著。

方差分析步骤

  1. 建立假设:首先,我们需要提出一个原假设和备择假设。原假设通常假设所有样本的均值相等,备择假设则假设至少有一组样本的均值不相等。

  2. 计算方差:通过使用样本数据,计算每个样本的平均值和总体平均值,并计算组间方差和组内方差。

  3. 计算统计量:计算统计量F值,它是组间方差与组内方差的比值,反映了组间与组内变异的相对大小。

  4. 确定临界值:根据显著性水平(通常为0.05或0.01),查找F分布表格或使用统计软件,确定F值对应的临界值。

  5. 假设检验:比较计算得到的F值和临界值。如果计算得到的F值大于临界值,则可以拒绝原假设,认为样本均值差异显著;反之,不能拒绝原假设,认为样本均值无显著差异。

相关概念

  • 因素或因子(factor):所要检验的对象,要分析行业对投诉次数是否有影响,行业是要检验的因素或因子
  • 水平或处理(treatment):因素的不同表现,即每个自变量的不同取值称为因素的水平
  • 观察值:在每个因素水平下得到的样本值,每个行业被投诉的次数就是观察值
  • 试验:这里只涉及一个因素,因此称为单因素四水平的试验
  • 总体:因素的每一个水平可以看作是一个总体,比如零售业、旅游业、航空公司、家电制造业可以看作是四个总体
  • 样本数据:被投诉次数可以看作是从这四个总体中抽取的样本数据

基本思想

  • 比较两类误差,以检验均值是否相等
  • 比较的基础是方差比
  • 如果系统(处理)误差显著地不同于随机误差,则均值就是不相等的;反之,均值就是相等的
随机误差
  • 因素的同一水平(总体)下,样本各观察值之间的差异

  • 比如,同一行业下不同企业被投诉次数是不同的

  • 这种差异可以看成是随机因素的影响,称为随机误差

系统误差
  • 因素的不同水平(不同总体)下,各观察值之间的差异
  • 比如,不同行业之间的被投诉次数之间的差异
  • 这种差异可能是由于抽样的随机性所造成的,也可能是由于行业本身所造成的,后者所形成的误差是由系统性因素造成的,称为系统误差
组内方差
  • 因素的同一水平(同一个总体)下样本数据的方差
  • 比如,零售业被投诉次数的方差
  • 组内方差只包含随机误差
组间方差
  • 因素的不同水平(不同总体)下各样本之间的方差
  • 比如,四个行业被投诉次数之间的方差
  • 组间方差既包括随机误差,也包括系统误差

方差的比较

  • 若不同行业对投诉次数没有影响,则组间误差中只包含随机误差,没有系统误差。这时,组间误差与组内误差经过平均后的数值就应该很接近,它们的比值就会接近1

  • 若不同行业对投诉次数有影响,在组间误差中除了包含随机误差外,还会包含有系统误差,这时组间误差平均后的数值就会大于组内误差平均后的数值,它们之间的比值就会大于1

  • 这个比值大到某种程度时,就可以说不同水平之间存在着显著差异,也就是自变量对因变量有影响

  • 判断行业对投诉次数是否有显著影响,实际上也就是检验被投诉次数的差异主要是由于什么原因所引起的。如果这种差异主要是系统误差,说明不同行业对投诉次数有显著影响

方差分析的前提

1.每个总体都应服从正态分布
  • 对于因素的每一个水平,其观察值是来自服从正态分布总体的简单随机样本
  • 比如,每个行业被投诉的次数必需服从正态分布
2.各个总体的方差必须相同
  • 各组观察数据是从具有相同方差的总体中抽取的
  • 比如,四个行业被投诉次数的方差都相等
3.观察值是独立的
  • 比如,每个行业被投诉的次数与其他行业被投诉的次数独立

在上述假定条件下,判断行业对投诉次数是否有显著影响,实际上也就是检验具有同方差的四个正态总体的均值是否相等

原假设成立

即H0: μ1 = μ2 = μ3 = μ4

四个行业被投诉次数的均值都相等意味着每个样本都来自均值为μ、方差为σ^2的同一正态总体

备择假设成立

即H1: μ1 μ2 μ3 μ4 不完全相等

至少有一个总体的均值是不同的,四个样本分别来自均值不同的四个正态总体

单因素方差分析

模型中有一个自变量(因素)和一个观测变量,就是关于在一个影响因素的不同水平下,观测变量均值差异的显著性检验。

提出假设
  • H0: μ1 = μ2 = 。。。 =μk ,自变量对因变量没有显著影响
  • 即H1: μ1 μ2 。。。μ4 不完全相等, 自变量对因变量有显著影响

拒绝原假设,只表明至少有两个总体的均值不相等,并不意味着所有的均值都不相等

检验的统计量
水平的均值

假定从第i个总体中抽取一个容量为ni的简单随机样本,第i个总体的样本均值为该样本的全部观察值总和除以观察值的个数。

全部观察值的总均值

全部观察值的总和除以观察值的总个数

总误差平方和SST

全部观察值与总平均值的离差平方和,反映全部观察值的离散状况

水平项平方和 SSA

各组平均值与总平均值的离差平方和,反映各总体的样本均值之间的差异程度,又称组间平方和,该平方和既包括随机误差,也包括系统误差。

误差项平方和 SSE

每个水平或组的各样本数据与其组平均值的离差平方和,反映每个样本各观察值的离散状况,又称组内平方和,该平方和反映的是随机误差的大小。

平方和之间的关系

总离差平方和(SST)、误差项离差平方和(SSE)、水平项离差平方和 (SSA) 之间的关系。

SST反映全部数据总的误差程度;SSE反映随机误差的大小;SSA反映随机误差和系统误差的大小。

如果原假设成立,则表明没有系统误差,组间平方和SSA除以自由度后的均方与组内平方和SSE和除以自由度后的均方差异就不会太大;如果组间均方显著地大于组内均方,说明各水平(总体)之间的差异不仅有随机误差,还有系统误差,判断因素的水平是否对其观察值有影响,实际上就是比较组间方差与组内方差之间差异的大小

各自自由度
  • SST 的自由度为n-1,其中n为全部观察值的个数

  • SSA的自由度为k-1,其中k为因素水平(总体)的个数

  • SSE 的自由度为n-k

均方(MS)

各误差平方和的大小与观察值的多少有关,为消除观察值多少对误差平方和大小的影响,需要将其平均,这就是均方,也称为方差,计算方法是用误差平方和除以相应的自由度。

F统计量

将MSA(组间方差,SSA的均方,记为MSA)和MSE(组内方差,SSE的均方,记为MSE)进行对比,即得到所需要的检验统计量F。

根据给定的显著性水平,在F分布表中查找与第一自由度df1=k-1、第二自由度df2=n-k 相应的临界值

  • 若F>Fα ,则拒绝原假设H0 ,表明均值之间的差异是显著的,所检验的因素对观察值有显著影响
  • 若F<Fα ,则不拒绝原假设H0 ,不能认为所检验的因素对观察值有显著影响
方差分析表

实例

在评价某药物耐受性及安全性的I期临床试验中,对符合纳入标准的30名健康自愿者随机分为3组每组10名,各组注射剂量分别为0.5U、1U、2U,观察48小时部分凝血活酶时间(s)试问不同剂量的部分凝血活酶时间有无不同?

提出假设: H0:μ1=μ2=μ3 H1:μ1,μ2,μ3不全相同 显著水平a=0.05

F0.05(2,26) =2.52,F>F0.05(2,26) ,P<0.05

拒绝 H0。 三种不同剂量48小时部分凝血活酶时间不全相同。

方差分析中的多重比较

  • 通过对总体均值之间的配对比较来进一步检验到底哪些均值之间存在差异

  • 可采用Fisher提出的最小显著差异方法,简写为LSD

  • LSD方法是对检验两个总体均值是否相等的t检验方法的总体方差估计而得到的

LSD方法

对k组中的两组的平均数进行比较,当两组样本容量分别为ni,nj都为时,有

实例颜色对销售额的影响

多因素方差分析

主效应与交互效应

  • 主效应(main effect):各个因素对观测变量的单独影响称为主效应。
  • 交互效应(interaction effect):各个因素不同水平的搭配所产生的新的影响称为交互效应。

双因素方差分析的类型

  • 双因素方差分析中因素A和B对结果的影响相互独立时称为无交互效应的双因素方差分析。
  • 如果除了A和B对结果的单独影响外还存在交互效应,这时的双因素方差分析称为有交互效应的双因素方差分析 。
无交互效应的多因素方差分析

离差平方和的分解:

有交互效应的多因素方差分析

离差平方和的分解:

双因素方差分析步骤
提出假设
  • 要说明因素A有无显著影响,就是检验如下假设:

H0:因素A不同水平下观测变量的总体均值无显著差异。

H1:因素A不同水平下观测变量的总体均值存在显著差异。

  • 要说明因素B有无显著影响,就是检验如下假设:

H0:因素B不同水平下观测变量的总体均值无显著差异。

H1:因素B不同水平下观测变量的总体均值存在显著差异。

  • 在有交互效应的双因素方差中,要说明两个因素的交互效应是否显著,还要检验第三组零假设和备择假设:

H0:因素A和因素B的交互效应对观测变量的总体均值无显著差异。

H1:因素A和因素B的交互效应对观测变量的总体均值存在显著差异。

构造统计量

在原假设成立的情况下,三个统计量分别服从自由度为(r-1,rs(m-1))、(s-1,rs(m-1))、((r-1)(s-1),rs(m-1))的F分布。

利用原假设和样本数据分别计算3个F统计量的值和其对应的p值,对比p值和α,结合原假设作出推断。若p<α,则拒绝关于这个因素的原假设,得出此因素不同水平下观测变量各总体均值存在显著差异的结论。

实例

有四个品牌的彩电在五个地区销售,为分析彩电的品牌(品牌因素)和销售地区(地区因素)对销售量是否有影响,对每个品牌在各地区的销售量取得以下数据。试分析品牌和销售地区对彩电的销售量是否有显著影响?(α=0.05)

提出假设
  • 对行因素提出的假设为:

H0: μ1 = μ2 = … = μi = …= μk (μi为第i个水平的均值) H1: μi (i =1,2, … , k) 不全相等

  • 对列因素提出的假设为:

H0: μ1 = μ2 = … = μj = …= μr (mj为第j个水平的均值) H1: μj (j =1,2,…,r) 不全相等

计算各平方和

计算均方

误差平方和除以相应的自由度

  • 总离差平方和SST的自由度为 kr-1
  • 行因素的离差平方和SSR的自由度为 k-1
  • 列因素的离差平方和SSC的自由度为 r-1
  • 随机误差平方和SSE的自由度为 (k-1)×(r-1)
计算检验统计量(F)

FA=18.10777>Fα=3.4903,拒绝原假设H0,说明彩电的品牌对销售量有显著影响

FB=2.100846< Fα=3.2592,接受原假设H0,说明销售地区对彩电的销售量没有显著影响

Python方差分析实例

单因素方差分析

# 3个城市不同用户评分
# 原假设 H0没有显著影响
# 备择假设 H1有显著影响
from scipy.stats import f_oneway
a = [10,9,9,8,8,7,7,8,8,9]        
b = [10,8,9,8,7,7,7,8,9,9]  
c = [9,9,8,8,8,7,6,9,8,9] 
f,p = f_oneway(a,b,c)
print(f)
print(p)

# 0.10150375939849626
# 0.9038208903685354
# 不能认为所检验的因素对观察值有显著影响

多因素方差分析

# 多因素方差分析
# 2个因素:环境等级,食材等级
from scipy import stats
import pandas as pd
import numpy as np
from statsmodels.formula.api import ols
from statsmodels.stats.anova import anova_lm

environmental =  [5,5,5,5,5,4,4,4,4,4,3,3,3,3,3,2,2,2,2,2,1,1,1,1,1]       
ingredients  = [5,4,3,2,1,5,4,3,2,1,5,4,3,2,1,5,4,3,2,1,5,4,3,2,1]    
score = [5,5,4,3,2,5,4,4,3,2,4,4,3,3,2,4,3,2,2,2,3,3,3,2,1]  
  
data = {'E':environmental,'I':ingredients,'S':score}
df = pd.DataFrame(data)
df.head()
formula = 'S~E+I+E:I'
model = ols(formula,df).fit()
results = anova_lm(model)
print(results)
# E和I对结果有显著影响,之间并无交互

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/251081.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot2

将SpringBoot项目打包 将打好的jar包发给前端&#xff08;前端只需要安装jdk&#xff09; 在jar包所在目录执行dos命令&#xff1a;java -jar xxx.jar&#xff0c;就可以启动项目 也可以在命令后面修改配置&#xff0c;例如&#xff1a;java -jar xxx.jar --server.port8081&…

【MySQL】启动 和 连接 MySQL

启动停止 mysql安装成功后在cmd输入 net start mysql80 //启动 net stop mysql80 //停止 mysql连接 方式1. 通过客户端去连接 方式2.使用cmd去连接 描述&#xff1a;-u是指定 用户 -p是指定密码 mysql -u root -p password

哈希扩展:位图与布隆过滤器

目录 1. 位图1.1 位图引入1.2 位图概念1.3 位图的模拟实现1.4 位图相关问题1.5 位图的应用 2. 布隆过滤器2.1 布隆过滤器概念2.2 模拟实现2.3 布隆过滤器相关问题2.3.1 哈希切分 1. 位图 1.1 位图引入 给40亿个不重复的无符号整数&#xff0c;没排过序。给一个无符号整数&…

MySQL,分组order by

一、创建分组 ## 创建分组 -- 返回每个发布会的参会人数 SELECT event_id,COUNT(*) as canjia_num FROM sign_guest GROUP BY event_id; 1、group by子句可以包含任意个列&#xff0c;但是但指定的所有列都是一起计算的。 group by 后2个字段一起计算的 2、group by后面可以跟…

QT Widget - 随便画个圆

简介 实现在界面中画一个圆, 其实目的是想画一个LED效果的圆。代码 #include <QApplication> #include <QWidget> #include <QPainter> #include <QColor> #include <QPen>class LEDWidget : public QWidget { public:LEDWidget(QWidget *pare…

正态总体的假设检验

一、三种情况 1.均值μ的假设检验 (1)σ已知 (2)σ未知 2.方差σ的假设检验 二、例题

Docker部署wordpress和Jenkins

准备机器&#xff1a; 192.168.58.151 &#xff08;关闭防火墙和selinux&#xff09; 安装好docker服务 &#xff08;详细参照&#xff1a;http://t.csdnimg.cn/usG0s 中的国内源安装docker&#xff09; 部署wordpress: 创建目录&#xff1a; [rootdocker ~]# mkdi…

【Java JVM】运行时数据区

JVM 在执行 Java 程序的过程中会把它管理的内存分为若干个不同的数据区域, 这些区域有着各自的用途。 根据《Java虚拟机规范》中规定, JVM 所管理的内存大致包括以下几个运行时数据区域, 如图所示: 这个运行时数据区被分为了 5 大块 方法区 (Method Area)堆 (Heap)虚拟机栈 (V…

Facebook广告系统结构

Facebook广告系统是一个复杂的大型系统&#xff0c;由多个组件和子系统相互配合工作&#xff0c;实现了广告的投放、拍卖、个性化推荐和效果评估等功能。下面小编讲讲Facebook广告系统的结构。 1、广告管理界面 广告管理界面是广告主与Facebook进行交互的入口&#xff0c;广告…

FlinkSQL中的窗口

多维分析 需求&#xff1a;有一张test表&#xff0c;表的字段为&#xff1a;A, B, C, amount, 其中A, B, C为维度字段&#xff0c;求以三个维度任意组合&#xff0c;统计sum(amount) Union方案&#xff1a; A, B, C的任意组合共有8种&#xff0c;分别为&#xff08;A, B,C,AB…

软件工程期末复习+数据仓库ETL

一、软件工程 请用基本路径测试方法为下列程序设计测试用例&#xff0c;并写明中间过程&#xff1a; 第1步&#xff1a;画出流程图 1.菱形用于条件判断。用在有分支的地方。 2.矩形表示一个基本操作。 3.圆形是连接点 第2步&#xff1a;计算程序环路复杂性 流图G的环路复杂…

设计模式——装饰模式(结构型)

引言 装饰模式是一种结构型设计模式&#xff0c; 允许你通过将对象放入包含行为的特殊封装对象中来为原对象绑定新的行为。 假设你正在开发一个提供通知功能的库&#xff0c; 其他程序可使用它向用户发送关于重要事件的通知。 库的最初版本基于 通知器Notifier类&#xff0c;…

西南科技大学数据库实验二(表数据插入、修改和删除)

一、实验目的 &#xff08;1&#xff09;学会用SQL语句对数据库进行插入、修改和删除数据操作 &#xff08;2&#xff09;掌握insert、update、delete命令实现对表数据插入、修改和删除等更新操作。 二、实验任务 创建数据库&#xff0c;并创建Employees表、Departments表和…

机器学习 | 过拟合与正则化、模型泛化与评价指标

一、过拟合与正则化 1、多项式逼近思想 任何函数都可以用多项式来表示。 举个栗子 ~ 比如说 泰勒公式 若要拟合sinx&#xff0c;泰勒认为仿造一条曲线&#xff0c;首先要保证在原点重合&#xff0c;之后在保证在这个点处的倒数相同&#xff0c;导数的倒数相同。 高次项引入了更…

appium2.0.1安装完整教程+uiautomator2安装教程

第一步&#xff1a;根据官网命令安装appium&#xff08;Install Appium - Appium Documentation&#xff09; 注意npm前提是设置淘宝镜像&#xff1a; npm config set registry https://registry.npmmirror.com/ 会魔法的除外。。。 npm i --locationglobal appium或者 npm…

【Redis】远程访问配置教程与远程客户端连接测试

前言 Redis 是一种基于内存的高性能键值存储数据库&#xff0c;常用于缓存、会话管理和实时数据分析等场景。在默认情况下&#xff0c;Redis 不允许远程连接&#xff0c;为了进行远程连接&#xff0c;需要进行一些配置和操作。接下来将介绍如何修改配置文件以允许远程连接&…

JVM学习之运行时数据区

运行时数据区 概述 内存 内存是非常重要的系统资源&#xff0c;是硬盘和CPU的中间桥梁&#xff0c;承载着操作系统和应用程序的实时运行。JVM内存布局规定了Java在运行过程中内存申请&#xff0c;分配&#xff0c;管理的策略&#xff0c;保证了JVM高效稳定运行。不同的JVM对于…

k8syaml提供的几个有意思的功能,Kubernetes在线工具网站

k8syaml.cn 提供的几个有意思的功能。 一、yaml资源快速生成 之前编写operator的helm的时候就需要自己写deployment、service、configmap这些资源&#xff0c;那么多字段也记不清&#xff0c;都是先找个模版&#xff0c;然后copy改改&#xff0c;再看官方文档&#xff0c;添加…

网络安全—学习溯源和日志分析

日志分析的步骤&#xff1a; 判断是否为攻击行为 不是&#xff1a;不用处理 是&#xff1a;判断攻击是否成功或者失败 攻击失败&#xff1a;判断IP地址是否为恶意地址&#xff0c;可以让防火墙过滤IP地址 攻击成功&#xff1a;做应急处置和溯源分析 应急处置&#xff1a;网络下…

【Linux】驱动

驱动 驱动程序过程 系统调用 用户空间 内核空间 添加驱动和调用驱动 驱动程序是如何调用设备硬件 驱动 在计算机领域&#xff0c;驱动&#xff08;Driver&#xff09;是一种软件&#xff0c;它充当硬件设备与操作系统之间的桥梁&#xff0c;允许它们进行通信和协同工作。驱动程…