USEARCH 是继 Mothur 和 QIIME 之后的第三大流行扩增子分析流程,目前已被引用 20,824 次。USEARCH 由 Robert Edgar 独立编写,使用 C 和 C++ 开发,体积小,运行速度快且功能强大,且不需要依赖其他软件(安装过 QIIME1 和 QIIME2 的用户应该对此深有体会)。
与 Mothur 和 QIIME 不同,USEARCH 的 64 位版本以前并不是开源的,只有 32 位版本是开源的,但由于 32 位版本对计算机内存有限制,无法处理大样本数据。然而,今年六月,Robert Edgar 突然决定将 USEARCH 开源,这对于研究社区来说无疑是一个令人振奋的消息。
在未来的日子里,我和我的同事将使用各大期刊文章中的数据,一起学习 USEARCH 中的常用命令。我们使用的版本是 USEARCH11。通过这些实践,我们希望能够更好地掌握 USEARCH 的强大功能,并在我们的研究中有效地应用它。
官方网址:https://www.drive5.com/usearch/
下载网址:https://github.com/rcedgar/usearch_old_binaries
usearch11帮助文档:https://www.drive5.com/usearch/manual/cmds_all.html
一、软件安装
wegt -c https://github.com/rcedgar/usearch_old_binaries/blob/main/bin/usearch11.0.667_i86linux64
mv usearch11.0.667_i86linux64 usearch
chhmod 755 usearch
usearch --help
# usearch v11.0.667_i86linux64, 17.2Gb RAM, 12 cores
# (C) Copyright 2013-18 Robert C. Edgar, all rights reserved.
# https://drive5.com/usearch
#
# From 2024 donated to public domain under CC0-1.0 license
# 加入环境变量,方便使用
vim ~/.bashrc
PATH=$PATH:/home/xx/usearch
source ~/.bashrc
二、OTU表抽平
1.数据来源:https://zenodo.org/records/8031031
2.使用usearch -otutab_rare进行抽平
参考文档:https://www.drive5.com/usearch/manual/cmd_otutab_rare.html
usearch -otutab_rare AllSamples_unoise_otu_table1_Exp2.txt -sample_size 50000 -randseed 123 -output rrarefy_otu_table.tsv
# usearch v11.0.667_i86linux64, 17.2Gb RAM, 12 cores
# (C) Copyright 2013-18 Robert C. Edgar, all rights reserved.
# https://drive5.com/usearch
# From 2024 donated to public domain under CC0-1.0 license
# 00:01 8.2Mb 100.0% Reading AllSamples_unoise_otu_table1_Exp2.txt
# 00:01 9.9Mb 100.0% Rarefying
# Deleted 4 samples size < 50000
# Deleted 22 OTUs with size=0 after rarefaction
# Deleted 4 samples with size=0 after rarefaction
# 00:01 12Mb Writing rrarefy_otu_table.tsv ...done.
参数说明:
-otutab_rare 待抽平的OTU表
-sample_size 抽平的OTU数目
-randseed 设置随机种子(可选)
-output 结果输出文件
日志说明:
本次的抽平的otu数目是50000,有四个样本的OTU数目没有50000,所以抽平之时会将这四个样本删除,有22个OTU抽平之后的总丰度为0,所以将这OTU删除
3.使用R语言检验数据是否进行抽平
# 加载R包
suppressPackageStartupMessages(library(dplyr))
suppressPackageStartupMessages(library(vegan))
# 读入数据并计算每个样本的OTU数目
otu_dat = readr::read_tsv(file = 'AllSamples_unoise_otu_table1_Exp2.txt',show_col_types = F) %>% column_to_rownames(var = '#OTU ID')
colSums(otu_dat) %>% sort()
# 丰度最低的5个OTU
rowSums(otu_dat) %>% sort() %>% head()
# usearch抽平后的数据并计算每个样本的OTU数目
rarefy_dat = readr::read_tsv(file = 'rrarefy_otu_table.tsv',show_col_types = F) %>% column_to_rownames(var = '#OTU ID')
colSums(rarefy_dat) %>% sort()
# 丰度最低的5个OTU
rowSums(rarefy_dat) %>% sort() %>% head()
# vegan包抽平后的数据并计算每个样本的OTU数目
vega_raryfy = rrarefy(t(otu_dat),50000) %>% t() %>% as.data.frame()
colSums(vega_raryfy) %>% sort()
# 丰度最低的5个OTU
rowSums(vega_raryfy) %>% sort() %>% head()
注意:二者的结果中我们可以看出,usearch抽平后会过滤稀有的OTU,而vega_raryfy不会过滤稀有的OTU。
参考文献:
[1] McGrath, A.H., Lema, K., Egan, S. et al. Disentangling direct vs indirect effects of microbiome manipulations in a habitat-forming marine holobiont. npj Biofilms Microbiomes 10, 33 (2024). https://doi.org/10.1038/s41522-024-00503-x
[2] Edgar RC. Accuracy of microbial community diversity estimated by closed- and open-reference OTUs. PeerJ. 2017 Oct 4;5:e3889. doi: 10.7717/peerj.3889.