1. 简介和数据预处理

简介

16S rRNA位于原核细胞核糖体小亚基上,包括 10 个保守区域(Conserved Regions)和 9 个高变区域(Hypervariable Regions),其中保守区在细菌间差异不大,高变区具有属或种的特异性,随亲缘关系不同而有一定的差异。因此,16S rDNA被认为是最适于细菌系统发育和分类鉴定的指标,用于揭示生物物种的特征核酸序列[1],常见的是基于第4可变区(V4)约290bp或者第3和第4(V3+V4)可变区约460bp的测序策略[2]。

根据所扩增的区域特点构建小片段文库,进行Illumina双末端测序(Paired_End)。经过Reads质控、拼接、过滤和OTU/ASV聚类,可以进行物种注释及丰度分析;最后,通过α多样性(Alpha Diversity)和β多样性分析(Beta Diversity),揭示样本中物种组成和样本间群落结构的差异,并进行个性化分析和深度的数据挖掘。

测序流程

从DNA样本到最终数据获得的过程中,样本采集和检测、核酸提取、PCR、纯化、建库、测序每一个环节都会对数据质量和数量产生影响,而数据质量又会直接影响后续信息分析的结果。

分析流程

测序得到的原始数据(Raw Data),存在一定比例的干扰数据(Dirty Data),为了使信息分析的结果更加准确、可靠,需要对原始数据进行处理、过滤和质控来获得有效数据(Clean Data)。

然后基于有效数据进行聚类和物种注释分类分析,根据OTU/ASV聚类结果,一方面对每个OTU/ASV的代表序列做物种注释,得到对应的物种信息和基于物种的丰度分布情况。同时,对OTU/ASV进行丰度、Alpha多样性计算、共有特有OTU/ASV统计,以得到样本内物种丰富度和均匀度、不同样本或分组间的共有和特有OTU/ASV等信息。另一方面,可以对等进行多序列比对并构建系统发生树,通过PCoA、PCA、NMDS等降维分析和样本聚类树展示,可以探究不同样本或组别间群落结构的差异。为进一步挖掘分组样本间的群落结构差异,选用T-test、Simper、MetaStat、LEfSe、Anosim和MRPP等统计分析方法对分组样本的物种组成和群落结构进行差异显著性检验。

同时,也可结合环境因素进行CCA/RDA/dbRDA分析和多样性指数与环境因子的相关性分析,得到显著影响组间群落变化的环境影响因子。扩增子的注释结果还可以和相应的功能数据库相关联,可以选用PICRUST、Tax4Fun、FAPROTAX 、BugBase软件对生态样本中的微生物群落进行功能预测分析。

数据预处理

示例数据来自MicrobiomeStatPlot的github仓库。

抽平和标准化

由于测序过程存在一定的不均衡性,为了保证样本结果的一致性,便于后续分析比较和解释,往往需要对OTU/ASV表进行随机重抽样,即抽平处理;但当样品测序量相差比较大时候,容易造成数据的极大浪费,此时可以利用Deseq2和edgeR等基于分布的标准化方法;因此,关于差异OTU/ASV分析前的抽平和标准化一般需要结合原始稀释曲线和实验设计进行选择。

library(vegan)
otu_table <- read.delim("16S-amplicon-analysis/otutab.txt",  header=T, sep="\t",  row.names=1,  stringsAsFactors = FALSE)
head(colSums(otu_table))
##   KO1   KO2   KO3   KO4   KO5   KO6 
## 32859 35897 38718 37755 38827 36790
# Rarefaction Species Richness
set.seed(13)
otu_rare <- t(rrarefy(t(otu_table),  min(colSums(otu_table))))
head(colSums(otu_rare))
##   KO1   KO2   KO3   KO4   KO5   KO6 
## 32859 32859 32859 32859 32859 32859

物种注释表处理

一般流程如Qiime2注释获得的taxonomy数据中往往含有P_、C_等字母,需要进行分割和总计。


taxonomy <- read.delim("16S-amplicon-analysis/taxonomy.txt",  sep = "\t",  header = FALSE)

names(taxonomy) <- c("OTUs",  "taxo")

taxonomy$taxo <- gsub("[a-z]__", "", taxonomy$taxo)

taxo_names = c("kingdom", "phylum", "class", "order", "family", "genus", "species")
clean_taxonomy <- tidyr::separate(taxonomy, col = taxo,  into = taxo_names,  sep = ";")

参考

Bukin, Yu S, Yu P Galachyants, IV Morozov, SV Bukin, AS Zakharenko, and TI Zemskaya. 2019. “The Effect of 16S rRNA Region Choice on Bacterial Community Metabarcoding Results.” Scientific Data 6 (1): 1–14.

Drengenes, Christine, Tomas ML Eagan, Ingvild Haaland, Harald G Wiker, and Rune Nielsen. 2021. “Exploring Protocol Bias in Airway Microbiome Studies: One Versus Two Pcr Steps and 16S rRNA Gene Region V3 V4 Versus V4.” BMC Genomics 22 (1): 1–15.

你可能感兴趣的:(1. 简介和数据预处理)