R语言Duncan检验

Duncan检验

在生信分析中常见的检验方法是t.test,kruskal.test和 wilcox.test这三种。
本篇要介绍的是Duncan法,是多重检验的一种。

导入数据

library(agridat)#利用devtools下载github上的数据
library(dplyr)
library(tidyr)
library(“ggplot2”)
data(lasrosas.corn)
#查看数据
data <- lasrosas.corn
data
在这里插入图片描述

#上图的数据不便于观看,用str()函数便于阅读
str(data)#可以看到Factor有三种分别是topo,rep,nf这三种
在这里插入图片描述
#单因素方差分析(anova)[这里只选择了nf这个因素]
m1 = aov(yield ~ nf, data=data)
summary(m1)
在这里插入图片描述
#Pr(>F)这里的值可以看到得到的结果是极其显著的,可以进行后的多重检验。这里有一个小特点就是多重检验是要在差异显著的情况下做,不然无意义。
#Duncan多重比较并可视化
library(multcomp)#加载相关的包
dc = duncan.test(m1,“nf”, alpha = 0.05)
#结果图,观察groups那一部分,字母一样的组说明这两个组是差异不显著的。
在这里插入图片描述
#计算sd
#yield ~ nf
b=aggregate(data y i e l d , l i s t ( d a t a yield, list(data yield,list(datanf),sd)
b
在这里插入图片描述
#合并上面dc里面的groups和d的数据,根据nf来进行合并,这里用到了管道符(这里有特殊符号,放代码不行,就图片表示)
在这里插入图片描述
dc1
在这里插入图片描述

#数据类型转换(这里的数据类型是list,对后面的画图是无法读取的,所以转换一下),根据上面的数据可以看出转换的数据是第一列和第四列
dc1[,c(1)] <- as.numeric(unlist(dc1[,c(1)]))
dc1[,c(4)] <- as.numeric(unlist(dc1[,c(4)]))
#画图
p1 = dc1 %>% ggplot(aes(x=nf,y=yield,fill = yield)) + geom_col(width=.4)+scale_fill_viridis_c(
option = “plasma”)+
geom_errorbar(aes(ymax = yield + sd, ymin = yield - sd),width = .1,size = .5)+
geom_text(aes(label = groups, y=yield + sd +2))+
theme(panel.grid = element_blank(), panel.background = element_rect(color = “black”,fill = “transparent”))+
labs(x = “Groups”, y = “yield结果”,title = “duncan多重比较”)+ scale_color_gradient(low = “cyan”,high = “red”)
p1
在这里插入图片描述

  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值