均值已知检验方差_SAS读书笔记:方差分析

2023-11-09

方差分析(Analysis of Variance,ANOVA)就是用于检验两组或两组以上的均值是否具有显著性差异的数理统计方法。有单因素方差分析和多因素方差分析。

1 基本原理

在方差分析中,把要分析的变量称为响应变量,对响应变量取值有影响的其它变量称为因素,因素的不同取值称为水平。

1.1 方差分析的模型

以一个单因素的例子进行分析。

四种用于缓解手术后疼痛的药品,研究它们的治疗效果是否存在显著性差异。

分析:

将每一种药品的治疗效果当作一个总体,我们要检验四个总体的均值是否相等,记四个总体的均值为

.原假设:
,备择假设:
不全相等。药效的持续时间可以看成是该药品药效的平均持续时间加上个体差异导致药效持续时间差异两部分组成。即,

以符号表示为:

其中

表示第j组药品的第i次实验结果。
表示第j个水平下,第i个观测与该水平均值的差异。
服从正态分布~
。上述模型为一般模型。有时为了突出水平间的差异,会将模型改写为:

其中

表示第j种药品和
之间的差异。
表示四种药品作用于患者的平均药效持续时间。

1.2 方差分析的基本思想

所有样本响应变量的方差称为全部平方和(Total Sum of Squares,

),

我们将由因素不同水平间差异引起的、可以由模型中因素解释的部分方差称为模型平方和(Model Sum of Squares,

)。将抽样过程本身引起的部分方差称为误差平方和(Error Sum of Squares,
)。

其中,

表示第j个水平
下的第i个观测。

表示所有抽样的均值,上述例子中,即为4种药品16次实验结果的均值。

表示水平
下所有样本的均值。

表示该水平下样本观测数目。

即 全部平方和=模型平方和+误差平方和

~~~每个观测所有样本均值计算的方差和=每一水平均值*这一水平下的观测数目与所有样本均值的方差和+每个观测对应的水平均值计算的方差和。~~~

在方差分析中,如果由因素不同水平引起的差异占显著比例,那么可以推断该因素对响应变量的差异具有显著作用。如果抽样过程本身引起的差异占显著比例,那么可以推断该因素对响应变量的差异不具有显著作用,用F来衡量。

其中,s为水平个数,n为所有水平下样本容量的总和;(s-1)为模型的自由度,(n-s)为误差自由度的自由度。上式中分子分母分别称为模型均方误差均方

R方用于衡量模型能解释响应变量方差比例的大小,取值在(0,1),值越大意味着能解释的比例越大,模型对数据拟合的越好。反之,趋近于0,模型几乎不能解释响应变量方差。

方差分析步骤:

1)建立原假设和备择假设;

2)给定显著性水平

,SAS中默认0.05;

3)计算F统计量的值

4)根据(s-1)和(n-s)确定一个F分布,有F分布的概率密度函数和

进一步计算出在F分布中大于
的p值;

5)

拒绝原假设,
,接受原假设。

1.3 方差分析的假设

  • 每组观测服从正态分布
  • 每组观测的方差相等,即方差齐性
  • 观测间独立

2 单因素试验的方差分析

2.1 TTEST过程、ANOVA过程和GLM过程区别

方差分析可以通过PROC TTEST、PROC ANOVA、PROC GLM实现。具体采用哪一个过程步,可参考以下场景。

1)单因素两水平,三者的计算结果一致。

2)单因素,水平数

3,宜采用PROC ANOVA和PROC GLM。

3)因素的个数

2,宜采用PROC ANOVA和PROC GLM,区别在于,ANOVA专门针对均衡数据(每一个因素水平的样本容量大小一致)设计的,比GLM快,但GLM提供了更多的图像输出。

2.2 使用ANOVA进行方差分析

语法如下:

PROC ANOVA <选项>;
class 变量;
model 响应变量=因素;
by 变量;
means 因素;
run;

<选项> 包括data= 指定输入数据集,outstat=知道输出数据集,plots 要求ODS图像选项是打开的。

class 必须在model语句之前,指定用于方差分析模型的分类变量。

model 指定用于方差分析的因素和响应变量

by ,anova会对by语句中的每一个变量进行分析,by必须提前作升序排序。

例如拿上面提到的缓解手术后疼痛的药品的例子:

data relifeTime;
input medicine $ hours @@;
datalines;
A 7 A 5 A 3 A 1
B 6 B 5 B 3 B 3
C 7 C 9 C 9 C 9
D 4 D 3 D 4 D 3
;
run;
proc anova data=relifeTime;
class medicine;
model hours=medicine;
run;

过程输出汇总信息部分

因素药品水平为4,总观测值为16.

方差分析部分

模型自由度=3,校正合计自由度为15,误差自由度为12。F值为8.35,具有显著性。p值为0.0029,拒绝原假设。我们可以认为,4款药品在延缓手术后疼痛的时间上具有显著性差异。

2.3 使用GLM过程进行方差分析

在ANOVA分析中,我们是假设3个条件是满足的。但实际是需要我们去验证的。我们现在假设每个病人术后延缓疼痛的时间相互独立,可以利用GLM过程对其余两个假设进行检验。

GLM不仅可以用来进行方差分析,还可以进行多元回归分析、协方差分析多项式回归等。
PROC GLM <选项>;
class 变量;
model 响应变量=因素;
LSMEANS;
means 因素;
run;

其中,选项有alpha=、data=、outstat=、plots=。

LSMEANS:指定变量的最小二乘均值。

例子:

libname ex 'F:SASnote';
data ex.relifeTime;
input medicine $ hours @@;
datalines;
A 7 A 5 A 3 A 1
B 6 B 5 B 3 B 3
C 7 C 9 C 9 C 9
D 4 D 3 D 4 D 3
;
run;
ods graphics on;
proc glm data=ex.relifeTime plots(only)=diagnostics;
  class Medicine;
  model Hours=Medicine;
  means Medicine /hovtest;
  run;
quit;
ods graphics off;

上述代码中PROC GLM语句中的PLOTS选项生成了拟合诊断图。根据Q-Q图和残差图看出,原始数据呈近似正态分布。

代码中 means Medicine /hovtest; 用于检验方差是否相等,即方差齐性检验。p值=0.0661,大于默认的0.05,因此我们接受原假设,认为方差是相等的。至此,方差分析的其余两个假设条件验证满足。

整个模型的输出结果如下图:

分析:可看出p值=0.0029,小于0.05,因此我们拒绝原假设,即认为这4种药物在延缓术后疼痛上具有显著性差异。除了Ⅰ型平方和和Ⅲ型平方和,还有Ⅱ和Ⅳ型平方和。一般以Ⅲ型作为主要参考依据。

3 显著因素下的水平间差异检验

3.1 LSMEANS与MEANS语句的区别

means和lsmeans在对均值的计算上存在一定的区别。

例子:

A、B两种新药,在不同医院进行临床试验,数据收集如上图。means和lsmeans计算结果如下:

从MEANS角度看,药B比药A要好,但是从lsmeans看,两款药效果一样。一般情况下,若数据是均衡的,二者的计算结果相等。从使用的角度看,当数据不均衡时,使用lsmeans方法。另外lsmeans也用于某个因素下水平间差异的检验。例如,已知某一因素作用显著,可通过lsmeans分析该因素两两水平间的差异。

3.2 利用LSMEANS语句进行水平差异检验

LSMEANS 因素 <选项>

方差分析中,常见的选项有两种,PDIFF和SLICE。前者用于两两影响,后者用于多因素。一个PROC GLM中可以指定多个LSMEANS语句。

控制选项误差的方法有两种。一种控制两两比较的误差(CER),一种控制整个实验的误差(EER)前者可选择

LSMEANSpdiff=all adjust=t

后者可选择

LSMEANSpdiff=all adjust=tukey 或者 LSMEANSpdiff=control adjust=dunnett

例子:

因素medicine 的确是一个显著性因素,共有4个水平:A B C D,欲分析两两比较的药效。

ods graphics on;
proc glm data=ex.relifetime;
class medicine;
model hours=medicine;
lsmeans medicine/pdiff=all;
run;

提交代码,首先可看到每个组的LSMEANS信息。

根据上面的LEMEAN号,做出4*4矩阵表。由于

=0.996>0.05,接受原假设,二者之间无显著性差别。
=0.004<0.05,拒绝原假设,二者存在显著性差异。

代码中pidff=all,要求ods选项是打开的,生成上面置信区间图。斜向上的虚线为差异为0的参考线。斜向下的实线代表了class变量下两个不同水平的均值。本例中有4个不同水平,可以组成6对不同水平的组合。实线与虚线没有交点,认为存在显著性差异。有交点,认为没有显著性差异。

4 双因素实验的方差分析

4.1 双因素实验概述

与单因素分析不同,双因素方差分析中因素间可能会有交互作用。如果没有交互作用,可独立分析。如果有交互作用,需要进一步分析:

  • 在因素A的某个水平下,因素B对响应变量的作用
  • 在因素B的某个水平下,因素A对响应变量的作用
  • 在所有因素(AB)的组合中,哪两组的差异最大

4.2 利用GLM过程对不均衡数据进行分析

例子:sashelp.class 包含了学生的姓名、性别、身高。分析年龄和性别是否是影响体重的显著因素,并对显著因素中的水平(水平组合)的差异性进行分析。

1)假设学生数据符合方差分析的假设条件。

2)显著性水平0.05

proc means data=sashelp.class N mean;
class Age Sex;
var height;
run;

首先通过描述性统计信息,发现这不是一个均衡的数据,故我们采用GLM来实现分析。

proc glm data=sashelp.class ;
class Age Sex;
model weight=Age Sex Age*sex;
run;

不同年龄和性别组合有11组,故模型的自由度为11-1=10,观测值为19,故校正合计自由度为19-1-18。误差自由度为8。

3)F=4.14,p=0.0278,可初步判断因素对体重有显著性作用,但哪个因素还需具体分析。源Age*Sex的作用是判断二者是否有交互作用,p值=0.5478>0.05,可认为没有交互作用。而源Age的p值=0.0133<0.05,可认为Age是一个显著性因素,源Sex的p值=0.0718>0.05,不是显著性因素。

可进一步分析Age的水平间差异性,提交以下代码:

lsmeans age/pidff=all adjuest=tukey;

M51=0.0193&amp;amp;amp;lt;0.05,拒绝原假设,存在显著性差异

如图,水平Age15和Age11存在显著性差异。

4.3 有交互作用因素的方差分析

例子:ex.fruit记录了在不同湿度和温度下某种植物的产出。数据如下;

data ex.fruit;
input humidity $ temperature $ output_lbs @@;
datalines;
A1 B1 58.2 A1 B1 52.6
A1 B2 56.2 A1 B2 41.2
A1 B3 65.3 A1 B3 60
A2 B1 49.1 A2 B1 42.8
A2 B2 54.1 A2 B2 50.5
A2 B3 51.6 A2 B3 48.4
A3 B1 60.1 A3 B1 58.3
A3 B2 70.9 A3 B2 73.2
A3 B3 39.2 A3 B3 40.7
;
RUN;

进行交互性分析

proc glm data=ex.fruit;
class humidity temperature;
model output_lbs=humidity temperature humidity*temperature;
run;

两个因素各有3个水平,共9中组合,故模型的自由度为9-1=8。18个观测值,故校正合计自由度为18-1=17。故误差自由度为17-8=9。F=9.28,p值=0.0015<0.05,两个因素或者组合对产出具有显著性作用。

由各个源的p值可以看出,humidity和humidity*temperature是显著因素。

lsmeans humidity*temperature/slice=humidity;

可看出,在A1和A3的湿度下,温度对产出具有显著性影响;在A2的湿度下,温度对产出无显著性影响。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

均值已知检验方差_SAS读书笔记:方差分析 的相关文章

  • 2023华为OD机试真题【二元组个数/哈希表】

    题目描述 给定两个数组a b 若a i b j 则称 i j 为一个二元组 求在给定的两个数组中 二元组的个数 输入描述 第一行输入 m 第二行输入m个数 表示第一个数组 第三行输入 n 第四行输入n个数 表示第二个数组 输出描述 二元组个
  • 软件测试是干什么的?它为什么需要这个岗位?

    目录 一 软件测试概念 二 软件测试目的 三 软件测试基本原则 四 软件测试主要工作内容 五 软件测试方法 六 测试工程师的职责 七 为什么要软件测试这个岗位 一 软件测试概念 软件测试 为了发现软件错误和缺陷 统称bug 而执行程序的一个
  • 机器学习之MATLAB代码--SSA-CNN-BiLSTM做电池容量预测(十)

    机器学习之MATLAB代码 SSA CNN BiLSTM做电池容量预测 十 代码 数据 结果 代码 代码按照如下顺序 1 clc close all clear all data xlsread B05 xlsx 1 A2 A169 num
  • 使用Ajax校验用户名是否存在

    使用Ajax校验用户名 通常情况下在一个系统中的用户的登录名是唯一的 为了保证用户名的唯一性 需要在用户注册时添加校验 即根据用户输入的用户名去数据库中查找 这里使用ajax校验用户名可以很好的提升用户体验 用户输入完用户名失去鼠标焦点后通
  • 支持多分辨率播放和比较的设备推荐

    配备Venue Player的系统可用于播放和比较几种未压缩的视频格式 以在几种情况下查找质量水平 并排播放多种格式 以确定原始格式质量和下游编码视频质量都可接受的质量 播放4K与HD格式以找到已知的质量设置 以对在电视面板上转换为4K的H
  • 基于C++的Base64编解码实现

    base64 cpp include
  • sh文件加密解密gzexe(Cannot decompress $0)

    gzexe加密 系统自带的gzexe程序 它不但加密 同时压缩文件 gzexe a sh 它会把原来没有加密的文件备份为 a sh 同时 a sh 即被变成加密文件 加密后的状态 skipping bin sh skip 44 tab nl
  • 推荐系统入门之使用协同过滤实现商品推荐

    简介 场景将使用机器学习PAI平台 指导您搭建一个基于协同过滤算法的商品推荐系统 背景知识 数据挖掘的一个经典案例就是尿布与啤酒的例子 尿布与啤酒看似毫不相关的两种产品 但是当超市将两种产品放到相邻货架销售的时候 会大大提高两者销量 很多时
  • 使用spacy库出现错误OSError: [E941] Can‘t find model ‘en‘.

    问题 运行代码 TEXT data Field tokenize spacy LABEL data LabelField dtype torch float 报错 OSError E941 Can t find model en It lo
  • 将矩阵&概率画成图

    任何一个矩阵都能画成一个图 更严谨的来说 每个矩阵对应一个加权二分图 所谓图是指点和线的集合 二分是指两种不同的类型 加权是指每条线上都有一个数字标记 上图的三个绿点代表三行 两个红点代表两列 若对应矩阵值非零 则在绿点和红点间画一条线连接
  • PHP中的电子邮件如何发送?

    PHP中的电子邮件发送是一个常见的需求 但是如果你是一个新手 可能会觉得有些棘手 别担心 我可以为你提供一些简单的步骤和代码例子 帮助你发送电子邮件 首先 你需要使用PHP的mail 函数来发送电子邮件 这个函数需要三个参数 邮件地址 邮件
  • 【解决】MFC改变窗口标题“无标题—title”

    用框架窗口类的SetWindowText L 你的标题 在应用程序类CTestApp InitInstance 中调用如下语句 m pMainWnd gt SetWindowText L 你的标题 或者在其他地方用AfxGetMainWnd
  • 图的m着色问题-回溯法

    排列树问题 给定无向连通图G和m种不同的颜色 用这些颜色为图G的各顶点着色 每个顶点着一种颜色 是否有一种着色法使G中任意相邻的2个顶点着不同颜色 输出结果 include
  • 2023年云南省职业院校技能大赛中职组“网络安全”赛项样题

    2023年云南省职业院校技能大赛 中职组 网络安全 赛项样题 一 竞赛时间 总计 180分钟 二 竞赛阶段 竞赛阶段 任务阶段 竞赛任务 竞赛时间 分值 A B模块 A 1 登录安全加固 180分钟 200分 A 2 数据库加固 A 3 服
  • OpenGL: 平面阴影投射矩阵的推导

    OpenGL 平面阴影投射矩阵的推导 OpenGL SuperBible 这本书介绍了一种阴影的实现方法 将模型视图矩阵压平 所有被绘制的物体都将位于这个平面的二维世界中 不过这本书没有介绍该平面阴影投射矩阵是如何推导的 假设平面方程 Ax

随机推荐

  • linux脚本调用db2存储过程,LINUX定时执行含有DB2存储过程的SHELL脚本

    LINUX定时执行含有DB2存储过程的SHELL脚本 由会员分享 可在线阅读 更多相关 LINUX定时执行含有DB2存储过程的SHELL脚本 6页珍藏版 请在人人文库网上搜索 1 LINUX下定时执行含有DB2存储过程的SHELL脚本最近项
  • 开关电源纹波的产生、测量和抑制

    一 产生分析 1 随着SWITCH 的开关 电感L 中的电流也是在输出电流的有效值上下波动的 所以在输出端也会出现一个与SWITCH 同频率的纹波 一般所说的纹波就是指这个 它与输出电容的容量和ESR 有关系 这个纹波的频率与开关电源相同
  • Windows 下 sublime text3的安装及设置

    一 安装Sublime Text3 1 下载 官网下载 http www sublimetext com 3 百度云 https pan baidu com s 1X6hD7AH giyahkCK79ZKqw 提取码 e3ai 2 安装 S
  • android recovery 升级和分区

    1 华为手机分区信息 1 shell android df df Filesystem Size Used Free Blksize dev 196M 64K 196M 4096 mnt asec 196M 0K 196M 4096 mnt
  • DBCP连接池配置参数说明

  • 【注意】C++基类的构造函数中,参数与类中已有变量同名,要加上作用域来表示类内变量

    定义一个类 class Text1 public Text1 构造函数 Text1 int pub int pri int pro 重载的构造函数 Text1 int pub void OutputValue 打印类内变量 private
  • java实现一台电脑控制多台手机_涨姿势:教你用电脑远程控制多台手机!终于可以挂手机了!...

    是不是每次坐到电脑前 你的桌面上总会摆好手机 时不时低头瞅瞅 不管是看视频 资讯都会时不时摆弄两下手机 如果你是上班族 是不是因为这个被领导骂过或者斜眼过 好吧 难道你不感觉这样很烦么 小编今天就介绍一个方法让你能用电脑挂手机 关键是过程超
  • iOS死灰复燃SDK

    iOS死灰复燃SDK功能 令iOS APP进入后台或手机锁屏下常也能常驻后台活动 定位 即使杀死APP进程也会适时自动复活APP 让APP能够在后台或进程被杀死之后也能照常发送网络请求 定位 更新数据等操作 具备自动复活功能 SDK版本 V
  • 华为OD机试真题- 找数字【2023Q2】【JAVA、Python、C++】

    题目描述 给一个二维数组nums 对于每一个元素num i 找出距离最近的且值相等的元素 输出横纵坐标差值的绝对值之和 如果没有等值元素 则输出 1 例如 输入数组nums为 0 3 5 4 2 2 5 7 8 3 2 5 4 2 4 对于
  • 2023待学习&待填的坑

    代码cherry pick时解决代码冲突 一 gdb调试 二 git教程实践部分 done 20230805 学习笔记链接 git相关 张杰萌萌哒的博客 CSDN博客 三 编译原理及makefile编写 四 C 课程 60 学习笔记链接 C
  • TOB企业如何借助生态力,实现可持续增长

    近年来 随着经济社会的高速发展 数字化转型已成为企业高质量发展 必答题 企业开始通过购买产品 解决方案或者自研的方式来进行本企业的数字化建设 但是由于内部部门墙或者是系统之间的隔阂 难以做到以整个公司为视角的全面数字化建设 就容易在企业内部
  • 分布式ID生成方案

    分布式ID生成方案 在业务系统中很多场景下需要生成不重复的 ID 比如订单编号 支付流水单号 优惠券编号等都需要使用到 在我们业务数据量不大的时候 单库单表完全可以支撑现有业务 数据再大一点搞个MySQL主从同步读写分离也能对付 但随着数据
  • JAVA环境变量path配置及其作用

    1 环境变量的作用是为了在dos的任意目录 可以去使用Java和javac 命令 2 先配置JAVA HOME 指向jdk安装的主目录 3 编辑path环境变量 增加 JAVA HOME bin 其中 代表引用 这样写的好处就是将来的jdk
  • springboot WxJava 收发企业微信 应用消息

    在Spring Boot中 同样可以使用WxJava来实现企业微信应用消息的收发功能 WxJava是一款基于微信公众号 小程序 企业号的Java SDK 提供了丰富的功能 包括消息收发 菜单管理 用户管理等 以下是简单的WxJava实现企业
  • HTML加js实现计算文件哈希值,前端使用js计算文件的MD5值

    在前端开发时有时需要计算文件的 MD5 值传给后端用作比较文件的准确性和完整性 还应用到了现代浏览器中都实现了的类 FileReader 它的实例的 readAsBinaryString 方法 用来读取文件的原始二进制数据 创建HTML部分
  • eclipse的下载及安装

    目录 1 eclipse的下载 2 2 eclipse的安装 4 1 eclipse的下载 eclipse官网地址 https www eclipse org 进入eclipse官网选择Download 选择Download Package
  • 300. 最长上升子序列

    300 最长上升子序列 给定一个无序的整数数组 找到其中最长上升子序列的长度 示例 输入 10 9 2 5 3 7 101 18 输出 4 解释 最长的上升子序列是 2 3 7 101 它的长度是 4 package com wangyg
  • 为什么LTE PA用GaAs工艺而GSM PA用CMOS工艺?

    为什么LTE PA用GaAs工艺而GSM PA用CMOS工艺 2017 09 14 00 00 小编参加了Qorvo公司发布会 会上了解到Qorvo的主要产品包括GaAS和CMOS 的PA 会后小编提问到这两种PA的区别以及CMOS PA在
  • 对象池(连接池):commons-pool2源码解析:GenericObjectPool的borrowObject方法

    为什么会有对象池 在实际的应用工程当中 存在一些被频繁使用的 创建或者销毁比较耗时 持有的资源也比较昂贵的一些对象 比如 数据库连接对象 线程对象 所以如果能够通过一种方式 把这类对象统一管理 让这类对象可以被循环利用的话 就可以减少很多系
  • 均值已知检验方差_SAS读书笔记:方差分析

    方差分析 Analysis of Variance ANOVA 就是用于检验两组或两组以上的均值是否具有显著性差异的数理统计方法 有单因素方差分析和多因素方差分析 1 基本原理 在方差分析中 把要分析的变量称为响应变量 对响应变量取值有影响