「微生物组」基于LorMe包进行微生物组数据分析—物种差异分析!!!

文摘   科学   2024-10-28 09:05   宁夏  





为了避免各位错过最新的推文教程,强烈建议大家将“科研后花园”设置为“星标”!


1、安装并加载LorMe包:
###安装LorMe包install.packages("LorMe")##加载MicrobiomeStat包library(LorMe)# Lightening One-Code Resolving Microbial Ecology Solutionlibrary(ggplot2)# Create Elegant Data Visualisations Using the Grammar of Graphics
2、加载数据(这里使用LorMe包自带数据集,原始数据封装过程见此前推文):
data("Two_group")

3、物种差异性分析(作者在LorMe包中主要提供了DESeq分析、indicator分析、火山图、曼哈顿图以及差异柱状图等内容):

1)Deseq分析:

####DESeq分析deseq_results <- Deseq_analysis(  taxobj = Two_group,  taxlevel = "Genus",  cutoff = 1, #log2 fold chang的阈值  control_name = "Control"#对照组名)head(deseq_results,5)
> head(deseq_results,5)    baseMean log2FoldChange     lfcSE       stat    pvalue      padj  tag GenusID      Domain1   5.333105     -1.2716641 0.9658908 -1.3165714 0.1879823 0.4542467 None  Genus1 d__Bacteria2 297.307888      0.1050121 0.2344629  0.4478839 0.6542370 0.8307772 None  Genus2 d__Bacteria3   1.286183     -2.4695795 2.9925539 -0.8252414 0.4092345 0.9990000 None  Genus3 d__Bacteria4  22.622790      1.0533794 0.9776246  1.0774887 0.2812620 0.5829264 None  Genus4 d__Bacteria5   0.526103     -1.9332492 2.8504589 -0.6782239 0.4976298 0.9990000 None  Genus5 d__Bacteria                     Phylum                     Class                           Order1     d__Bacteria;p__norank    c__Candidatus Babeliae        o__Candidatus Babeliales2 d__Bacteria;p__Unassigned d__Bacteria;c__Unassigned       d__Bacteria;o__Unassigned3          p__Acidobacteria         c__Acidobacteriia c__Acidobacteriia;o__Unassigned4          p__Acidobacteria         c__Acidobacteriia             o__Acidobacteriales5          p__Acidobacteria         c__Acidobacteriia             o__Acidobacteriales                           Family                              Genus1       f__Candidatus Babeliaceae               g__Candidatus Babela2       d__Bacteria;f__Unassigned          d__Bacteria;g__Unassigned3 c__Acidobacteriia;f__Unassigned    c__Acidobacteriia;g__Unassigned4            f__Acidobacteriaceae f__Acidobacteriaceae;g__Unassigned5            f__Acidobacteriaceae                      g__Acidicaps

2)indicator分析:

indicator_results <- indicator_analysis(  taxobj = Two_group,  taxlevel = "Genus")head(indicator_results,5)
> head(indicator_results,5)  s.Control s.Treatment index       stat      padj GenusID1         1           0     1 0.36853195 0.1978022  Genus12         1           0     1 0.02746601 0.9320679  Genus23         1           0     1 0.34188577 0.4775225  Genus34         0           1     2 0.37776299 0.1368631  Genus45         1           0     1 0.39067031 0.1958042  Genus5       Domain                    Phylum                     Class1 d__Bacteria     d__Bacteria;p__norank    c__Candidatus Babeliae2 d__Bacteria d__Bacteria;p__Unassigned d__Bacteria;c__Unassigned3 d__Bacteria          p__Acidobacteria         c__Acidobacteriia4 d__Bacteria          p__Acidobacteria         c__Acidobacteriia5 d__Bacteria          p__Acidobacteria         c__Acidobacteriia                            Order                          Family1        o__Candidatus Babeliales       f__Candidatus Babeliaceae2       d__Bacteria;o__Unassigned       d__Bacteria;f__Unassigned3 c__Acidobacteriia;o__Unassigned c__Acidobacteriia;f__Unassigned4             o__Acidobacteriales            f__Acidobacteriaceae5             o__Acidobacteriales            f__Acidobacteriaceae                               Genus  tag     baseMean1               g__Candidatus Babela None 0.00024138492          d__Bacteria;g__Unassigned None 0.01303941583    c__Acidobacteriia;g__Unassigned None 0.00014076054 f__Acidobacteriaceae;g__Unassigned None 0.00095655555                      g__Acidicapsa None 0.0000238882

3)火山图:

##基于Deseq分析结果创建火山图#颜色mycolor <- Two_group$configuration$treat_col#火山图volcano_plot <- volcano_plot(  inputframe = deseq_results,  cutoff = 1,  aes_col = mycolor)#基于Fold Change和FDR值print(volcano_plot$FC_FDR)#基于Mean Fold Change值print(volcano_plot$Mean_FC)

#基于indicator分析结果创建火山图volcano_plot <- volcano_plot(  inputframe = indicator_results,  cutoff = 1,  aes_col = mycolor)print(volcano_plot$FC_FDR)print(volcano_plot$Mean_FC)

注:当然,大家也可以将数据提取保存出来单独进行可视化,具体操作小编这里不做展示!

4)曼哈顿图:

manhattan_object <- manhattan(  inputframe = deseq_results, #也可以设置数据为indicator_results  taxlevel = "Phylum", #x轴,设置分类水平  control_name = "Control",#对照组名  mode="most", #'all','most','select'   top_n = 8, # 设置显示的物种个数  palette = "Plan7", #颜色  rmprefix = "p__" #去除物种名前的标记)#曼哈顿图print(manhattan_object$manhattan)#环形曼哈顿图print(manhattan_object$manhattan_circle)#查看原始数据head(manhattan_object$sourcedata,5)

> head(manhattan_object$sourcedata,5)      baseMean log2FoldChange     lfcSE       stat       pvalue         padj       tag GenusID3    1.2861831      -2.469580 2.9925539 -0.8252414 4.092345e-01 9.990000e-01      None  Genus34   22.6227900       1.053379 0.9776246  1.0774887 2.812620e-01 5.829264e-01      None  Genus45    0.5261030      -1.933249 2.8504589 -0.6782239 4.976298e-01 9.990000e-01      None  Genus56    0.6379474      -2.772522 3.0056543 -0.9224356 3.563014e-01 9.990000e-01      None  Genus67 1272.6655729       2.218375 0.3710889  5.9780159 2.258717e-09 9.034868e-07 Treatment  Genus7       Domain        Phylum             Class                           Order3 d__Bacteria Acidobacteria c__Acidobacteriia c__Acidobacteriia;o__Unassigned4 d__Bacteria Acidobacteria c__Acidobacteriia             o__Acidobacteriales5 d__Bacteria Acidobacteria c__Acidobacteriia             o__Acidobacteriales6 d__Bacteria Acidobacteria c__Acidobacteriia             o__Acidobacteriales7 d__Bacteria Acidobacteria c__Acidobacteriia             o__Acidobacteriales                           Family                              Genus3 c__Acidobacteriia;f__Unassigned    c__Acidobacteriia;g__Unassigned4            f__Acidobacteriaceae f__Acidobacteriaceae;g__Unassigned5            f__Acidobacteriaceae                      g__Acidicapsa6            f__Acidobacteriaceae                  g__Acidobacterium7            f__Acidobacteriaceae           g__Candidatus Koribacter

5)Stamp结果可视化:

diff_results <- differential_bar(  taxobj = Two_group,  taxlevel = "Genus",  rel_threshold = 0.005, #用于差异分析的阈值过滤分类群  anno_row = "ID", #y轴设置,为OTU或物种分类水平对应的列名  aes_col = mycolor, #颜色  limit_num = 10 # 显示物种个数)##拼图效果require(patchwork)diff_results$Barplot|diff_results$Differenceplot

更多内容大家请阅读LorMe包的帮助文档!

参考:LorMe包帮助文档


微生物组系列推文合集:

扩增子测序数据分析还不会?小编整理的全套R语言代码助您轻松解决问题!(更新版


「微生物组」基于LorMe包进行微生物组数据分析—微生物群落结构组成分析!!!


「微生物组」基于LorMe包进行微生物组数据分析—Beta多样性分析!!!


「微生物组」基于LorMe包进行微生物组数据分析—Alpha多样性分析!!!


微生物组」基于microeco包进行共现性网络分析!!!


「微生物组」基于microeco包进行lefsef分析及随机森林分析!!!


「微生物组」Stamp结果图复现——分组差异图的绘制!!!


「微生物组」基于microeco包进行环境数据关联分析—以RDA分析为例!!!


「微生物组」基于microeco包进行共享/独特OTU计算及可视化!!!


微生物组」基于microeco包进行Alpha多样性分析!!!


「微生物组」基于microeco包进行微生物群落结构组成分析!!!


R可视化——Manteltest分析及可视化


基于R语言的微生物群落组成多样性分析——α多样性及其可视化


基于R语言的微生物群落组成多样性分析—β多样性之PCoA分析


基于R语言的微生物群落组成多样性分析—β多样性之组间差异性检验


基于R语言的微生物群落组成多样性分析——种丰度计算及可视化


基于R语言的微生物群落组成多样性分析——种丰度可视化之热图(Heatmap)


基于R语言的微生物群落组成多样性分析——种丰度可视化之弦图(Chord Diagram)


基于R语言的微生物群落组成多样性分析——共线性网络分析


基于R语言的微生物群落组成多样性分析——RDA分析


基于R语言的微生物群落组成多样性分析——CCA分析


基于R语言的微生物群落组成多样性分析——PCA分析


基于R语言的微生物群落组成多样性分析——聚类分析


基于LEfSe分析进行微生物物种差异及关联分析


基于R语言的微生物群落组成分析—差异OTU筛选及展示


基于R语言的微生物群落组成多样性分析——NMDS分析


基于R语言的微生物群落组成分析—α多样性指数的正态分布检验及差异性标注()


R可视化——基于MicrobiomeStat包进行微生物组数据分析(更新版)!!!


基于R语言进行扩增子数据的UMAP分析!


R可视化——共现性网络分析第二弹


R可视化——基于MicrobiotaProcess包进行物种群落结构组成分析!


R可视化——基于MicrobiotaProcess包进行物种差异分析!


基于microeco包进行PCoA分析!!!


基于MicrobiotaProcess包进行PCoA分析!


R可视化——基于MicrobiotaProcess包进行Alpha多样性分析!

PS: 以上内容是小编个人学习代码笔记分享,仅供参考学习,欢迎大家一起交流学习。

R绘图模板合集(包括附带注释的源码、测试数据及绘制效果图)可在公众号后台菜单栏查看具体获取方式!绘图模板合集效果图展示:


科研后花园
专注于R语言绘图及数据分析!
 最新文章