扩增子统计绘图3热图:样品相关分析,差异OTU/ASV

《扩增子统计绘图》系列文章介绍

《扩增子统计绘图》是之前发布的《扩增子图表解读》和《扩增子分析解读》的进阶篇,是在大家可以看懂文献图表,并能开展标准扩增子分析的基础上,进行结果的统计与可视化。其章节设计与《扩增子图表解读》对应,为八节课八种常用图形(箱线图、散点图、热图、曼哈顿图、火山图、维恩图、三元图和网络图),基本满足文章常用的图片种类需求。

也适合对公司标准化分析返回结果的进一步统计、可视化及美化,达到出版级别,冲击高分文章。

本课程中所需的测序数据、实验设计;和课程分析生成的中间文件,均可以直去百度云下载。后台回复'扩增子'获取。

热图展示样品相关性

  1. # 运行前,请在Rstudio中菜单栏选择“Session - Set work directory -- Choose directory”,弹窗选择之前分析目录中的result文件夹
  2. # 读入实验设计
  3. design = read.table('design.txt', header=T, row.names= 1, sep='\t')
  4. # 读取OTU表
  5. otu_table = read.delim('otu_table.txt', row.names= 1,  header=T, sep='\t')
  6. # 过滤数据并排序
  7. idx = rownames(design) %in% colnames(otu_table)
  8. sub_design = design[idx,]
  9. count = otu_table[, rownames(sub_design)]
  10. # 转换原始数据为百分比
  11. norm = t(t(count)/colSums(count,na=T)) * 100 # normalization to total 100
  12. # 计算所有样品间相关系数
  13. sim=cor(norm,method='pearson')
  14. # 使用热图可视化,并保存为8x8英寸的PDF
  15. library('gplots')
  16. library('RColorBrewer')
  17. pdf(file=paste('heat_cor_samples.pdf', sep=''), height = 8, width = 8)
  18. # 想预览,跳过上面Pdf行直接运行heatmap.2
  19. heatmap.2(sim, Rowv=TRUE, Colv=TRUE, dendrogram='both', trace='none', margins=c(6,6), col=rev(colorRampPalette(brewer.pal(11, 'RdYlGn'))(256)),density.info='none')
  20. dev.off()

图1. 热图展示所有样品基于相对丰度的Pearson相关系数矩阵。我们可以看到样品明显分成了三类,KO,OE,WT,表明该基因的过表达和基因敲除对菌群均有影响,其中过表达到WT差异明显。其中KO3与WT聚在了一起,表明其野生型相似,我能想到三种可能:过表达的基因被沉默而回复成与野生型相似;该份材料的种子是混入的WT;可能该材料的标WT串成了KO3。

edgeR统计组间差异OTU

# 使用edgeR统计组间差异OTU,以OE vs WT为例library(edgeR)# create DGE listd = DGEList(counts=count, group=sub_design$genotype)d = calcNormFactors(d)# 生成实验设计矩阵design.mat = model.matrix(~ 0 + d$samples$group)colnames(design.mat)=levels(genotypes)d2 = estimateGLMCommonDisp(d, design.mat)d2 = estimateGLMTagwiseDisp(d2, design.mat)fit = glmFit(d2, design.mat)# 设置比较组BvsA <- makeContrasts(contrasts = 'OE-WT', levels=design.mat)# 组间比较,统计Fold change, Pvaluelrt = glmLRT(fit,contrast=BvsA)# FDR检验,控制假阳性率小于5%de_lrt = decideTestsDGE(lrt, adjust.method='fdr', p.value=0.05)# 导出计算结果x=lrt$tablex$sig=de_lrtenriched = row.names(subset(x,sig==1))depleted = row.names(subset(x,sig==-1))

热图展示差异OTU

  1. ## 热图展示差异OTU
  2. pair_group = subset(sub_design, genotype %in% c('OE', 'WT'))
  3. # Sig OTU in two genotype
  4. DE=c(enriched,depleted)
  5. sub_norm = as.matrix(norm[DE, rownames(pair_group)])
  6. #colnames(sub_norm)=gsub('DM','KO',colnames(sub_norm),perl=TRUE) # rename samples ID
  7. pdf(file=paste('heat_otu_OEvsWT_sig.pdf', sep=''), height = 8, width = 8)
  8. # scale in row, dendrogram only in row, not cluster in column
  9. heatmap.2(sub_norm, scale='row', Colv=FALSE, Rowv=FALSE,dendrogram='none', col=rev(colorRampPalette(brewer.pal(11, 'RdYlGn'))(256)), cexCol=1,keysize=1,density.info='none',main=NULL,trace='none')
  10. dev.off()

图中可到OTU95在OE中高表达,而其它OTU均在OE中下调;表达该基因的表达,主要来拟制一些OTU。这些OTU的编号较大,代表其丰度较高。比如OTU_1,就是聚类结果中最高丰度的OTU。

(0)

相关推荐

  • 16s扩增子测序分析全流程详解

    扩增子测序是一种高靶向性方法(对特定长度的PCR产物或者捕获的片段进行测序),用于分析特定基因组区域中的基因变异.PCR产品(扩增子)的超深度测序可以有效地识别变异并对其进行特征分析.总体思路是靶向地 ...

  • 一条代码完成完成无限分组的微生物差异分析

    写在前面 今天是2020年10月6日,这几天都很忙碌,许多批次的数据需要再次分析和进一步分析,许多材料需要赶出来,百忙之中还有几位同学的婚礼,确实非南京很难到场,这里祝愿这几位百年好合,早生贵子.国庆 ...

  • 16s分析之差异分析(DESeq2)

    今天我们来学习R语言DESeq2包,原理什么的后不说,在操作过程中点缀一下,等四个差异包推送完成后,咱们在对这四个包做差异分析的原理做一个比较分析: 这个包适用于: 高通量数据分析过程中,基于coun ...

  • csvtk:表格处理神器-美化、统计、头表、合并、转置、筛选、取样、去冗余 、分列、分类汇总和简单绘图

    写在前面 CSV/TSV作为数据科学和组学分析的基本格式,其实本质上均为txt格式的表格,CSV是按逗号分隔,TSV是以制表符分隔的表格.这两种格式数据格式应用非常广泛.比较常用的处理软件包括: Ex ...

  • MPB:陈同等-ImageGP在微生物组可视化中的应用

    为进一步提高<微生物组实验手册>稿件质量,本项目新增大众评审环节.文章在通过同行评审后,采用公众号推送方式分享全文,任何人均可在线提交修改意见.公众号格式显示略有问题,建议电脑端点击文末阅 ...

  • 微生信生物-扩增子V0.1.exe发布

    写字前面:  ◆  ◆ 不知不不觉已经是2020年了,今天我们进行了真人CS游戏,提着老腿确实很累.几场下来我就累得不行了,所以微生信生物-扩增子V0.1.exe发布稍微晚了一些,但是是赶在今天结束之 ...

  • 16s分析之差异展示(热图)

    前两天我向大家推了16s做差异分析的两个包(没有看的请点击下面链接): 1.16s分析之差异分析(DESeq2) 2.16s分析之差异OTU 挑选(edgeR) 差异做出来了如何展示,也是一个值得思考 ...

  • R语言实现扩增子数据抽平算法

    写在前面 现在是20年2月中旬了,今年注定是不平凡的一年,尽然现在都还在家中.但是任务量还是十分繁重.谁让做生物信息的也不用限制什么地点. 为什么我要实现抽平算法呢?16年phyloseq的出现很对我 ...

  • 16是分析之主成分分析实战部分

    下面我们来做PCA分析,来做出很好看的图片 之前在插几句:非约束排序,不做统计检验,不能做! # 安装包ggbiplot包 #install.packages("devtools" ...

  • R绘图笔记 | 热图绘制

    关于绘图,前面介绍了一些: R绘图笔记 | 一般的散点图绘制 R绘图笔记 | 柱状图绘制 R绘图笔记 | 直方图和核密度估计图的绘制 R绘图笔记 | 二维散点图与统计直方图组合 R绘图笔记 | 散点分 ...

  • 技术贴 | Excel:手把手教你如何做扩增子菌群数据与表观数据相关性热图

    本文由技均根据实践经验而整理,希望对大家有帮助. 原创微文,欢迎转发转载. 扩增子是一种较为经济的微生物测序方法,时常被广大科研工作者所选择.在进行数据分析时,需要将菌群数据与表观数据做相关性分析,来 ...

  • 八大数据分析模型之——热图分析模型(四)

    诸葛君说:产品/运营们最痛苦的莫过于说服开发部门同意我们的网页改版方案,他们往往会充满怀疑的反问:为什么要这样做?总之,在你无法证明"你是对的"情况下,所有的沟通仿佛都站不住脚,今 ...

  • 基础技术 | 使用条件格式创建热图(续)

    在<基础技术 | 使用条件格式创建热图>中,我们介绍了使用条件格式的色阶功能创建具有三种不同背景颜色的热图,使数据可视化.在此基础上,结合表单控件滚动条,创建了随滚动条变化的动态热图. 下 ...

  • 基础技术 | 使用条件格式创建热图

    热图是一种数据可视化的表示形式,可以快速显示数据集的比较视图. 在Excel中,使用条件格式,可以基于值高亮显示单元格.然后,改变单元格中的值,单元格的颜色/格式将基于在条件格式中指定的规则自动更新热 ...

  • 技术贴 | R语言:构建一个转录代谢互作调控网络:(二)热图的美化以及大样本分组信息的快速注释

    本文由可爱的乔巴根据实践经验而整理,希望对大家有帮助. 原创微文,欢迎转发转载. 导读 上期介绍了利用WGCNA包中的Cor函数和corPvalueStudent函数计算两组小样本的相关性并进行热图可 ...

  • 技术贴 | R语言:大样本多组学的相关性计算、热图绘制

    本文由可爱的乔巴根据实践经验而整理,希望对大家有帮助. 原创微文,欢迎转发转载. 导读 上期介绍了利用psych包计算两组小样本的相关性并进行热图可视化,但当样本数据量非常大时,psych包会耗费的时 ...

  • 技术贴 | R语言:小样本多组学的相关性计算、热图绘制

    本文由可爱的乔巴根据实践经验而整理,希望对大家有帮助. 原创微文,欢迎转发转载. 导读 在多组学数据关联挖掘中,在我们筛选到目标基因集以及目标蛋白质集合或目标代谢物集合后,在进行基因与蛋白质或代谢关联 ...

  • 科研软件系列:Graphpad prism作图软件功能与安装方法介绍,以及热图的绘制

    今天,小编想给大家介绍一款好用的分析和作图软件-Graphpad prism,之所以说他好用,是因为这款软件可以直接输入原始数据,自动进行基本的生物统计(计算标准差.标准误和P值等),并产生高质量的图 ...