5. 便捷分析模式
在微生物下游分析研究中,研究者第一步是对微生物数据有一个初步的评估。本章节提供了EMP_MICRO
模块,集成了常规微生物分析的核心物种过滤、alpha多样性、beta多样性、共发生网络分析、结构图分析、随机森林分析等模块,便于快速帮助研究者快速批量的完成微生物各个注释级别的初步评估性分析。
5.1 EMP_MICRO模块
EMP_MICRO模块
可以将自动识别输入微生物数据的物种注释级别,并根据物种相对丰度
和物种组内出现率
筛选出核心微生物物,支持dataframe
、list
和file
三种读取方式。
5.1.1参数介绍
data
输入微生物数据支持
dataframe
和list
两种格式,dataframe
应符合3.1
中的格式要求,也可将不同级别微生物数据dataframe
直接合并为list
输入。dir
指定微生物数据文件存放的地址,文件可以以
csv
和txt
格式保存,格式应符合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_data
和mapping
,前者用于存放微生物数据,后者可以存放不同的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]]))
}