5. 便捷分析模式

​ 在微生物下游分析研究中,研究者第一步是对微生物数据有一个初步的评估。本章节提供了EMP_MICRO模块,集成了常规微生物分析的核心物种过滤、alpha多样性、beta多样性、共发生网络分析、结构图分析、随机森林分析等模块,便于快速帮助研究者快速批量的完成微生物各个注释级别的初步评估性分析。

5.1 EMP_MICRO模块

EMP_MICRO模块可以将自动识别输入微生物数据的物种注释级别,并根据物种相对丰度物种组内出现率筛选出核心微生物物,支持dataframelistfile三种读取方式。

5.1.1参数介绍

  • data

    输入微生物数据支持dataframelist两种格式,dataframe应符合3.1 中的格式要求,也可将不同级别微生物数据dataframe直接合并为list输入。

  • dir

    指定微生物数据文件存放的地址,文件可以以csvtxt格式保存,格式应符合3.1 中的格式要求。

  • design

    指定样本分组信息mapping文件,支持直接输入dataframe或者指定文件地址。

  • min_relative

    指定最小的微生物物种相对丰度数值,低于此阈值的相对丰度将会被过滤为0。【默认:0.001】

  • min_ratio

    指定最小的微生物物种在至少一个分组内的出现率,低于此阈值的物种将会被过滤。【默认:0.7】

  • group_level

    指定图形中分组显示的排列顺序。

  • method

    除beta多样性分析中的统计方法,包含T检验(ttest)和onewayANOVA及多重检验(HSD, LSD,duncan,scheffe,REGW,SNK)。

  • beta_method

    仅用于设定beta多样性分析中的统计方法,仅支持onewayANOVA及多重检验(HSD, LSD,duncan,scheffe,REGW,SNK)。

  • distance

    设定beta多样性计算过程中采用的距离运算。(bray,manhattan, euclidean, canberra, clark, kulczynski, jaccard, gower, altGower, morisita, horn, mountford, raup, binomial, chao, cao or mahalanobis)。

  • top_num

    设定物种结构图中展示微生物物种的最大数量,其余物种将会合并如Others。

  • tax_level

    调整出图后物种的排序。

  • cooc_r

    设定节点之间相关性计算的p值阈值,高于此阈值的相关性结果将会被过滤。【默认:0.05】

  • cooc_p

    设定节点之间相关性计算的相关系数绝对值的阈值,低于此阈值的相关性结果将会被过滤。【默认:0.3】

  • vertex.size

    设定共发生网络中节点的大小。

  • vertex.label.cex

    设定共发生网络中节点注释文字大小。

  • edge.width

    设定共发生网络中边的宽度。【默认:2】

  • set_color_level

    设定共发生网络中节点按照微生物注释级别进行染色。【默认:phylum】

  • edge_color_positive

    设定共发生网络中正相关边的颜色。

  • edge_color_negitive

    设定共发生网络中负相关边的颜色。

  • ntree

    设定随机森林模型中建树的数目。

  • RFCV_estimate

    设定随机森林模型中输入数据的微生物级别。【默认:species】

  • kfold

    设定随机森林模型中交叉验证的数目。

  • rep

    设定随机森林模型中在不同随机数下尝试的次数。

  • x_break

    设定随机森林模型曲线图横轴的分割显示值。

  • RF_importance

    设定随机森林模型中用于评估重要性的方式(MeanDecreaseAccuracy, MeanDecreaseGini),对应值为1和2。【默认:1】

  • step

    设定随机森林模型中剔除特征的步伐数目。【默认:1】

  • pattern

    指定在文件夹内微生物数据文件名的特征信息,与dir配合使用

  • width

    设定输出图的宽。

  • height

    设定输出图的高。

  • html_out

    设定是否输出交互式图形。

  • output_folder

    设定结果输出文件名。

5.1.2 基本用法

数据准备:

首先利用R设置好工作区间,创建两个文件目录16s_datamapping,前者用于存放微生物数据,后者可以存放不同的mapping文件。

代码示例:

Tips 1:本模块仅为便捷方式的基本使用技巧,主要用于快速对微生物数据进行批量绘制常规分析,初步筛选可能存在的阳性的结果。

Tips 2:本模块是基于子模块的合并流程,如需进一步发掘分析或者调整参数,建议在后续子模块(06-12章节)针对性分析。

Tips 3: 在快速筛选调整亚组或者剔除样本时,只需要调整mapping文件,无须修改微生物数据,运算会自动筛选样本。

Tips 4:本模块在进行多个微生物级别运算时,为避免由于部分级别过滤为空集导致整个流程中断,建议选择较宽松的过滤条件或者只输入感兴趣的微生物级别。

Tips 5:当流程因为部分模块warning而中断时,建议首先在子模块中先进行运算,排除bug信息。

library(EasyMicroPlot) # 加载包
# 简要模式
EMP_MICRO(dir = '16s_data/',design = 'mapping/mapping.txt',
          min_relative = 0.001,min_ratio = 0.7,pattern = 'txt')

输出结果说明:

Result # 输出结果文件名
│   
├── alpha_result # 微生物各级别alpha多样性结果汇总
│   ├── Post-Hoc # onewayANOVA事后多重检验详细结果
│   ├── data # alpha多样性值
│   ├── html # alpha多样性图形结果
│   └── pic # alpha多样性可交互式图形结果
├── beta_result # beta多样性结果汇总
│   ├── bray_0.001_0.7 # 基于Bray Curtis距离计算的结果
│   └── jaccard_0.001_0.7# 基于Binary Jaccard距离计算的结果
├── cooc_result # 微生物各级别共发生网络结果汇总
│   ├── cooc_info # 微生物各级别各组节点相关性系数及检验结果
│   ├── net_profile # 微生物各级别共发生网络基本属性结果
│   ├── network # 微生物各级别各组共发生网络基本图形结果
│   └── vertex # 微生物各级别各组共发生网络节点重要性评估结果
├── core_data # 微生物各级别核心微生物结果汇总
│   ├── class_0.001_70%.txt
│   ├── class_0.001_70%_info.txt
│   ├── family_0.001_70%.txt
│   ├── family_0.001_70%_info.txt
│   ├── genus_0.001_70%.txt
│   ├── genus_0.001_70%_info.txt
│   ├── order_0.001_70%.txt
│   ├── order_0.001_70%_info.txt
│   ├── phylum_0.001_70%.txt
│   ├── phylum_0.001_70%_info.txt
│   ├── species_0.001_70%.txt
│   └── species_0.001_70%_info.txt
└── structure_result #微生物各级别物种结构结果汇总
│   ├── pic # 基本结构图
│   ├── taxonomy # 物种详细注释图
│   └── top_abundance # Top物种结果
├── RFCV_result #微生物种级别随机森林模型结果汇总,如需采用其他级别,请修改RFCV_estimate参数
│   ├── Imprortance # 不同随机数种子下随机森林物种重要性评估图
│   ├── model # 随机森林交叉验证错误率曲线图
└── └── taxonomy # 随机森林交叉验证筛选物种统计及可视化结果图

5.1.3 批量筛选用法

Tips 6:由于所有的分组和样本筛选仅依靠mapping文件,因此用户可以设定各种不同的mapping文件,并利用output_folder参数批量的产生不同结果文件夹。

# 批量执行多个分组
mapping_files <- c('mapping1.txt','mapping2.txt')
for (i in mapping_files) {
  mapping <- paste0('mapping/',i)
  EMP_MICRO(dir = '16s_data/',design = mapping,
              min_relative = 0.001,min_ratio = 0.7,pattern = 'txt',
                distance = c('bray','jaccard','euclidean'),
              output_folder = paste0('Result/',strsplit(i,'.txt')[[1]]))
}
Copyright © 382983280@qq.com 2022 all right reserved,powered by Gitbook更新时间: 2023-03-04 03:22:21

results matching ""

    No results matching ""