bartlett方差齐性检验_基于R实现统计中的检验方法方差分析
作者:徐涛,19年应届毕业生,专注于珊瑚礁研究,喜欢用R各种清洗数据。
知乎:
https://www.zhihu.com/people/parkson-19/posts
前言
方差分析(均数的显著性检验)
方差分析(Analysis of Variance,简称ANOVA),又称“变异系数分析”,是R.A.Fisher发明的,用于两个及两个以上样本均数差别的显著性检验。
1.适用条件
方差分析数据必须满足3个条件即独立、正态,方差齐次性。
---------------------#正态性检验#---------------------#Shapiro-Wilk检验用来检验数据是否符合正态分布,类似于线性回归的方法一样,是检验其于回归曲线的残差。#该方法作者推荐在样本量很小的时候使用,比如N<20。但是也有作者推荐在大数据集上使用。该作者将这种修改#后的方法运用在R语言的stats包中的shapiro.test函数中。该检验原假设为H0:数据集符合正态分布。#R语言中的Shapiro-Wilk检验(W检验),shapiro.test(x)该函数只有一个参数即数据集x。x可以是数值型向量,允许存在NA#但是非丢失数据需要在3-5000内。##example###11个随机抽取的样本的体重(斤)数据为:148,154,158,160,161,162,166,170,182,195,236k148,
2.分类(按因素分)
单因素方差分析、二因素方差分析和多因素方差分析。(单因素方差分析主要对因素的主效应进行分析,而二因素及多因素方差分析除了多组效应分析外,还可对因素间的交互作用进行分析。分析交互作用时,观测值必须有重复)
3.R实例
R中的函数aov()用于方差分析的计算,其调用格式为:
aov(formula,data=NULL,projections=FALSE,qr=TRUE,contrasts=NULL,...)#其中的参数formula表示方差分析的公式,在单因素方差分析中即为X~A;data表示做方差分析的数据框;projections为逻辑值,表示是否返回预测结果;qr同样是逻辑值,表示是否返回QR分解结果,默认为TRUE;contrasts是公式中的一些因子的对比列表。通过summary()可列出分析表的详细结果。#详情参见R语言实战(第2版)page:201.
单因素方差分析
---------------------#单因素方差分析#---------------------#单因素方差分析比较的是分类因子定义的两个或多个组别中的因变量均值。以multcomp包中cholesterol数据集为例。##正态性检验library(multcomp)head(cholesterol)str(cholesterol)shapiro.test(cholesterol$response) Shapiro-Wilk normality testdata: cholesterol$responseW = 0.97722, p-value = 0.4417#结果表明,p=0.4417>0.05,接受原假设,说明数据在五个水平下都是正态分布的。##方差齐性检验bartlett.test(response~trt,data=cholesterol) Bartlett test of homogeneity of variancesdata: response by trtBartlett's K-squared = 0.57975, df = 4, p-value = 0.9653#结果表明,p=0.9653,接受原假设,说明数据在不同水平下是等方差的。##单因素方差分析fitsummary(fit) Df Sum Sq Mean Sq F value Pr(>F) trt 4 1351.4 337.8 32.43 9.82e-13 ***Residuals 45 468.8 10.4 ---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1#结果表明,5种治疗方式间的效果差异非常显著。##多重比较(多重T检验)#以上单因素方差分析可以得出,五组之间治疗效果有显著差异,但是我们不知道哪种疗法与其他疗法的不同,多重比较可以解决这个问题。#R语言中TukeyHSD()函数提供了对各组均值差异的成对检验。TukeyHSD(fit) Tukey multiple comparisons of means 95% family-wise confidence levelFit: aov(formula = response ~ trt, data = cholesterol)$trt diff lwr upr p adj2times-1time 3.44300 -0.6582817 7.544282 0.13809494times-1time 6.59281 2.4915283 10.694092 0.0003542drugD-1time 9.57920 5.4779183 13.680482 0.0000003drugE-1time 15.16555 11.0642683 19.266832 0.00000004times-2times 3.14981 -0.9514717 7.251092 0.2050382drugD-2times 6.13620 2.0349183 10.237482 0.0009611drugE-2times 11.72255 7.6212683 15.823832 0.0000000drugD-4times 2.98639 -1.1148917 7.087672 0.2512446drugE-4times 8.57274 4.4714583 12.674022 0.0000037drugE-drugD 5.58635 1.4850683 9.687632 0.0030633#结果表明,1time和2times的均值差异不显著(p=0.138),而1time和4times间的差异非常显著(p<0.01)
一般图像给的效果会更加直观,R中multcomp包中的glht()函数提供了多重均值比较更为全面的方法。
par(mar=c(5,4,6,2))tuk"Tukey"))
备注:
1)在单因素方差分析前需要对数据进行正态性和方差齐性检验。除了以上提及的检验方法,R中还可以使用Q-Q图来检验正态性假设。#详情参见R语言实战(第2版)page:206-207.
2)单因素方差分析的扩展为单因素协方差分析,包含一个或多个定量的协变量。(详情参见R语言实战(第2版)page:208.)
二因素方差分析(双因素方差分析)
---------------------#二因素方差分析#---------------------#以基础安装包中的ToothGrowth数据集为例,60只豚鼠,自变量包括两种投喂方法(橙汁或VC),不同喂食方法中抗坏血酸含量有#三种水平,牙齿长度为因变量,每种处理都被分配10只豚鼠。head(ToothGrowth) len supp dose1 4.2 VC 0.52 11.5 VC 0.53 7.3 VC 0.54 5.8 VC 0.55 6.4 VC 0.56 10.0 VC 0.5ToothGrowth$doseas.factor(ToothGrowth$dose)
备注:
1)R仍然用函数aov()作双因素方差分析,只需将formula改为x~A+B+A:B或x~A*B的形式即可。(且分析包含了交互作用的方差分析)
2)多因素方差分析和双因素方差分析过程类似。
此篇为学习笔记,参考网上和书本知识,整理汇总,方便以后学习查找。
tips
1)T检验和方差分析有何区别?
t检验适用于两个变量均数间的差异检验,多于两个变量间的均数比较要用方差分析。
2)方差分析与独立样本T检验的前提条件是相同的,即正态性和方差齐性。
参考
[1]R语言方差分析的内容全部在这里了 - 云+社区 - 腾讯云
[2]T检验与F检验的区别_f检验和t检验的关系 - Little_Rookie - 博客园
[3]顾志峰,叶乃好,石耀华.实用生物统计学[M].北京:科学出版社,2012年.
[4]R语言 Shapiro-Wilk检验
[5]【数据分析 R语言实战】学习笔记 第八章 方差分析与R实现
[6]Robert I. Kabacoff.R语言实战[M].北京:人民邮电出版社,2016年.
往期精彩:
R语言实现基本统计分析之t检验
R中数据结构与数据的输入
R语言:以多列标准筛选特定行
用R语言实现信息度量
公众号后台回复关键字即可学习
回复 爬虫 爬虫三大案例实战回复 Python 1小时破冰入门回复 数据挖掘 R语言入门及数据挖掘回复 人工智能 三个月入门人工智能回复 数据分析师 数据分析师成长之路 回复 机器学习 机器学习的商业应用回复 数据科学 数据科学实战回复 常用算法 常用数据挖掘算法
给我【好看】
你也越好看!
bartlett方差齐性检验_基于R实现统计中的检验方法方差分析相关推荐
- bartlett方差齐性检验_数据总体分布检验
不管是在练习项目还是实际工作中,我们基本上是抽样获取数据,通过一定的抽样设置得到一定数据量,然后从样本数据推断总体分布.但是不同情景下的数据分布是不同的,为了数据分析和后期模型建立,我们需要了解数据的 ...
- python方差齐性检验_【Python】统计科学之方差齐性检验
首页 专栏 python 文章详情 0 统计科学之方差齐性检验 张俊红发布于 今天 10:38 1.前言 我们在方差分析里面有讲过,方差分析有一个很重要的前提就是叫方差齐性.这一篇来讲讲如何来检验方差 ...
- bartlett方差齐性检验_方差齐性检验
总第235篇/张俊红 1.前言 我们在方差分析里面有讲过,方差分析有一个很重要的前提就是叫方差齐性.这一篇来讲讲如何来检验方差齐性. 先讲讲什么是方差齐性,方差齐性是指不同组间的总体方差是一样的.那为 ...
- python方差齐性检验_方差分析中的方差齐性检验_方差齐性检验结果分析
方差分析中的方差齐性检验_方差齐性检验结果分析_方差分析 齐性检验 方差分析时的方差齐性检验是方差分析的前提条件,还是只是后面进行均值的多重比较时选择分析方法的依据?看过几本书,这两种观点都有.我看方 ...
- 《机器学习与数据科学(基于R的统计学习方法)》——2.11 R中的SQL等价表述...
本节书摘来异步社区<机器学习与数据科学(基于R的统计学习方法)>一书中的第2章,第2.11节,作者:[美]Daniel D. Gutierrez(古铁雷斯),更多章节内容可以访问云栖社区& ...
- 《机器学习与数据科学(基于R的统计学习方法)》——2.8 读取JSON文件
本节书摘来异步社区<机器学习与数据科学(基于R的统计学习方法)>一书中的第2章,第2.8节,作者:[美]Daniel D. Gutierrez(古铁雷斯),更多章节内容可以访问云栖社区&q ...
- 《机器学习与数据科学(基于R的统计学习方法)》——1.2 机器学习的实际案例...
本节书摘来异步社区<机器学习与数据科学(基于R的统计学习方法)>一书中的第1章,第1.2节,作者:[美]Daniel D. Gutierrez(古铁雷斯),更多章节内容可以访问云栖社区&q ...
- 《数学建模:基于R》一一2.2 方差分析
本节书摘来自华章计算机<数学建模:基于R>一书中的第2章,第2.2节,作者:薛 毅 更多章节内容可以访问云栖社区"华章计算机"公众号查看. 2.2 方差分析 方差分析是 ...
- r语言boxcox异方差_基于R语言进行Box-Cox变换
原标题:基于R语言进行Box-Cox变换 作者简介 作者:吴健中国科学院大学 R语言.统计学爱好者,尤其擅长R语言和Arcgis在生态领域的应用分享 个人公众号:统计与编程语言 Q: 为什么要进行Bo ...
最新文章
- idea_pyspark 环境配置
- 【ASP.NET北大青鸟】-总结(二)
- python利用unittest进行测试用例执行的几种方式
- 【NLP】文本分类还停留在BERT?对偶比学习框架也太强了
- mqtt js 中乱码_Vue.js 中的 v-cloak 指令——Vue学习之路
- 期货市场计算机分析指南在线,期货市场计算机分析指南
- io python 读取pdf_python自动化办公之 Python 解析 PDF
- Spring boot傻瓜教程(一):官方加强版,避开坑
- API 安全成企业考虑的第一要务
- mount远程驱动器
- 指定火狐浏览器安装位置
- 一些实用的方法整理(与语言无关)
- 三星 android驱动安装失败,三星安卓手机usb驱动安装教程
- java 编写浏览器_用Java自己写一个浏览器 —— JavaFX 入门
- Total和Tellurian签署意向性协议,对Driftwood项目和2.5 mtpa LNG进行股权投资;就增加对Tellurian投资签署普通股购买协议
- idea修改主题后,重新设置字体大小
- Python学习笔记3——条件语句及循环语句
- 微信公众平台开发-access_token获取及应用(含源码)
- 批量!使用ArcGIS python 批量修改遥感影像名
- Android接口调用
热门文章
- linux yum lamp环境,linux centos yum安装LAMP环境
- Linux系统 proc self,linux – / proc / self / maps中的“— p”权限是什么意思?
- 光储充一体化充电站_广东东莞首座光储充一体化智能充电站 “变废为宝”收益可观...
- 图元和片元_OpenGL中的顶点、 图元、片元、像素的含义
- python爬虫qq音乐教学视频_爬取QQ音乐(讲解爬虫思路)
- python中所有保留字首字母都是小写_int是不是python的保留字
- 电脑开机3秒就重启循环_移动办公神器!电脑包秒变支架、鼠标垫,3合1设计超方便!...
- 计算机主板时钟,主板时钟电路工作原理
- php strrchar,php文件上传
- 2013年4月计算机一级试题 答案,9月计算机一级考试试题含答案