rt
plot(rt)
plot(rt$x1,rt$y1) *** 作之前安装好ggplot2、vegan、ggpubr包。如下:
installpackages("ggplot2")
installpackages("ggpubr")
installpackages("vegan")
计算Shannon-香农指数和Simpson-辛普森指数的命令在vegan包中,计算各组显著性的命令在ggpubr包中;画图使用ggplot命令,在行使每个命令之前一定要加载相应的包,如下:
library(ggplot2)
library(ggpubr)
library(vegan)
拿到一个otu表格,要先计算香农指数和辛普森指数, *** 作如下:
otu=readtable('D:/r-working/feature-tabletaxonomytxt',rownames = 1,skip=1,header=T,commentchar ='',sep='\t')
#读取out表格
#'D:/feature tabletaxonomytxt'为文件路径,注意斜线方向
#rownames = 1指定第一列为行名
#skip=1跳过第一行不读
#header=T指定第一个有效行为列名
#sep='\t'表示指定制表符为分隔符
#commentchar=''表示设置注释符号为空字符‘’,这样#后面的内容就不会被省略
otu=otu[,-ncol(otu)]
#去除表格的最后一列,无用信息
otu=t(otu)
#表格转置,必须将样品名作为行名
shannon=diversity(otu,"shannon")
#计算香农指数,先加载vegan包
shannon
#查看香农指数
simpson=diversity(otu,"simpson")
#计算辛普森指数,先加载vegan包
simpson
#查看辛普森指数
alpha=dataframe(shannon,simpson,checknames=T)
#合并两个指数
writetable(alpha,"D:/r-working/alpha-summaryxls",sep='\t',quote=F)
#存储数据,注意路径使用反斜杠
将各样本进行分组,并进行画图, *** 作如下:
map<-readtable('D:/r-working/mapping_filetxt',rownames = 1,header=T,commentchar ='',sep='\t',checknames=F)
#读取分组表格
group<-map["Group1"]
#提取需要的分组,'Group1'是表中的分组列名,包括A,B,C三组
alpha<-alpha[match(rownames(group),rownames(alpha)),]
#重排alpha的行的顺序,使其与group的样本id(行名)一致
data<-dataframe(group,alpha,checkrows=T)
#合并两个表格'<-'与'='同属赋值的含义
p=ggplot(data=data,aes(x=Group1,y=shannon))+geom_boxplot(fill=rainbow(7)[2])
#data = data指定数据表格
#x=Group1指定作为x轴的数据列名
#y=shannon指定作为y轴的数据列名
#geom_boxplot()表示画箱线图
#fill=rainbow(7)[2]指定填充色
此处用到ggplot2包画箱线图,将画图函数赋值给p后,可以用‘+’不断进行图层叠加,给p增加新的特性
p
#查看p
mycompare=list(c('A','B'),c('A','C'),c('B','C'))
#指定多重比较的分组对
mycompare
p<-p+stat_compare_means(comparisons=mycompare,label = "psignif",method = 'wilcox')
#添加显著性标记的第一种方法,在此之前先加载ggpubr包
p<-p+ylim(2,55)
#调整图像的外观
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)