原创lsd检验(r语言lsd检验)
多重比较的方法很多,根据试验设计的目的不同有不同的应用若试验设计之初,便明确要比较某几个组均数间是否有差异,称为事前比较常用的事前比较方法有LSD、Bonferroni和Dun
多重比较的方法很多,根据试验设计的目的不同有不同的应用若试验设计之初,便明确要比较某几个组均数间是否有差异,称为事前比较常用的事前比较方法有LSD、Bonferroni和Dunnett法若研究目的是方差分析有统计学差异后,想知道哪些组间的均数有差异,便是事后比较。
事后比较的常用方法有SNK、Turkey、Scheffe 和 Bonferroni法本文仅介绍7种方法及R语言函数,可解决绝大部分多重比较问题1.LSD法LSD法即最小显著差法;该法一般用于计划好的多重比较。
它其实只是t检验的一个简单变形,并未对检验水准做出任何校正,只是为所有组的均数统一估计了一个更为稳健的标准误LSD法比较效果较为灵敏,在R语言中可利用agricolae包中的LSD.test函数实现,其调用格式为:
LSD.test(y, trt, DFerror, MSerror, alpha = 0.05, p.adj=c("none","holm","hommel", "hochberg", "bonferroni", "BH", "BY", "fdr"), …)
其中y为方差分析对象,trt为要进行多重比较的分组变量,p.adj可以选定P值矫正方法当p.adj=”none”时,为LSD法,p.adj="bonferroni"时为Bonferroni法 R代码: library(agricolae)
# sweetpotato为agricolae自带数据集 data(sweetpotato) #进行方差分析,分组变量为virus model #进行多重比较,不矫正P值 out <- lsd.test(model,"virus",="" p.adj="none" )
#结果显示:标记字母法 out$group #可视化 plot(out) 程序运行结果:
从运行结果看,四个处理,oo和ff处理无差异,与cc和fc彼此差异显著。下图是可视化结果。
2. Bonferroni法 它是Bonferroni校正在LSD法上的应用 将LSD.test中p.adj设置为"bonferroni"即为Bonferroni法 R代码: library(agricolae) 。
# sweetpotato为agricolae自带数据集 data(sweetpotato) #进行方差分析,分组变量为virus model #进行多重比较,不矫正P值 out <- lsd.test(model,"virus",="" p.adj=" bonferroni" )
#结果显示:标记字母法 out$group #可视化 plot(out) 运行结果与LSD法类似,不再展示3. Dunnett检验用于多个试验组与一个对照组间的比较R语言中可利用multcomp包中的glht()函数进行包括Dunnett检验在内的多种检验,其调用格式为:。
glht(model, linfct, alternative = c("two.sided", "less", "greater"), ...)其中model为方差分析对象,linfct设置要进行多重比较的分组变量和方法。
R代码:library(multcomp) rht <- glht(model,="" linfct="mcp(virus" =="" "dunnett"),alternative="two.side" )
#model是方差分析对象 #virus是分组变量 #方法为Dunnett summary(rht) #可视化 plot(rht) 程序运行结果:
结果表明:三个处理均与对照cc差异显著。下图为可视化结果:
4. SNK法(Student-Newman-Keuls)实质上是根据预先制定的准则将各组均数分为多个子集, 利用Studentized Range分布来进行假设检验推荐优先用Tukey检验SNK法可用agricolae包中的SNK.test()函数实现,其调用格式为:。
SNK.test(y, trt, alpha = 0.05, …) 其中y为方差分析对象,trt为要进行多重比较的分组变量 R代码: library(agricolae) # sweetpotato为agricolae自带数据集
data(sweetpotato) #进行方差分析,分组变量为virus model #进行多重比较,不矫正P值 out <- snk.test(model,"virus") #结果显示:标记字母法
out$group #可视化 plot(out) 程序运行结果与LSD.test类似5. Turkey检验 使用学生化的范围统计量进行组间所有成对比较Tukey的检验特点: 所有各组的样本数相等;。
各组样本均数之间的全面比较;可能产生较多的假阴性结论R中Turkey检验检验的函数为TukeyHSD(model),其调用格式为:TukeyHSD(model)其中model为方差分析对象 R代码: tuk=TukeyHSD(model)
tuk plot(tuk) 程序运行结果:
可视化结果:
6.Duncan法(新复极差法)(SSR)指定一系列的“range”值,逐步进行计算比较得出结论Duncan法可用agricolae包中的duncan.test()函数实现,其调用格式为: duncan.test(y, trt, …) 。
其中y为方差分析对象,trt为要进行多重比较的分组变量 R代码: # model为方差分析对象 out <-duncan.test (model,"virus") #结果显示:标记字母法 out$group
#可视化 plot(out) 程序运行结果与LSD.test类似7. Scheffe检验为均值的所有可能的成对组合执行并发的联合成对比较使用F取样分布可用来检查组均值的所有可能的线性组合,而非仅限于成对组合。
Scheffe检验特点:各组样本数相等或不等均可以,但是以各组样本数不相等使用较多;如果比较的次数明显地大于均数的个数时,Scheffe法的检验功效可能优于Bonferroni法Scheffe法可用agricolae包中的scheffe.test()函数实现,其调用格式为:
duncan.test(y, trt, …) 其中y为方差分析对象,trt为要进行多重比较的分组变量 R代码: # model为方差分析对象 out <-scheffe.test (model,"virus")
#结果显示:标记字母法 out$group #可视化 plot(out) 程序运行结果与LSD.test类似。举报/反馈
- 标签:
- 编辑:李松一
- 相关文章
-
不要告诉别人lsd检验(r语言lsd检验)
统计思维总有一天会像读与写一样成为一个有效率公民的必备能力——H.G.
-
干货分享口袋妖怪心金攻略(口袋妖怪心金攻略4)
对战开拓区有两个地方,一个是在神奥地区,另一个则在城都地区,不过它们的结构完全相同。对战开拓区的设施不允许以下宝可梦参与对战:开…
- 干货分享僵尸部队三部曲(僵尸部队三部曲怎么扔手雷)
- 学到了柱上开关(带电作业更换柱上开关)
- 燃爆了鼠标加速度(win10去除鼠标加速度)
- 干货分享延安的资料(延安的资料袋)
- 干货分享代表处(代表处女座的鸡尾酒)