摘要:随着高通量测序技术的发展,基于扩增子和宏基因组测序的微生物组学研究技术已经成为研究土壤、动植物及海洋等环境微生物多样性及功能的主要手段。基于扩增子的微生物组数据集,往往能获得数千至上万个OTUs (可操作分类单元),我们需要从中筛选获得高丰度及核心微生物类群进行系统发育树的构建和展示。系统发育树又名分子进化树,是生物信息学中描述不同生物或者不同基因之间进化关系的方法。通过系统学分类分析,可以帮助研究者推测生物的进化历程和亲缘关系。本文主要介绍基于IQ-TREE、MUSCLE、 USEARCH10等软件的下载安装、使用方法和步骤以及结果分析,实现从扩增子数据集的提取、数据处理到系统发育树的构建和美化等流程,方便研究者更高效地实现基于扩增子数据的系统发育树构建、编辑和展示,为发表高水平研究论文提供技术支持。
关键词: OTUs, 系统发育树, 微生物多样性, 扩增子测序, iTOL
仪器设备
普通个人电脑 (Windows10系统64位版、CPU ≥ 双核、内存 ≥ 4 G、硬盘 ≥ 20 GB)
软件和数据库
软件的安装和使用
一、 首先在C盘根目录新建名为bin的目录,其具体位置为C:\bin。
二、 USEARCH软件的下载和安装 USEARCH软件 (http://www.drive5.com/usearch/download.html) 是Robert C. Edgar开发的一款超快的扩增子数据分析软件,该软件在序列比对、原始数据质控、OTU聚类、多样性分析等多领域广泛应用 (Edgar, 2013)。在使用前需选择合适的USEARCH软件版本进行下载,其下载界面为 (如图1)。 图1. USEARCH10软件的下载 注:32位usearch为免费版,但限制使用内存4GB,64位为收费版本,没有内存使用限制。选择接受许可协议,版本必须选择v10.0,选择填写邮箱,提交收到链接,下载后改名为usearch10并将软件放在Windows10系统中C:\bin目录中。 三、 R语言的下载安装和使用 R语言是目前生物学、经济学等领域最流行的统计分析语言,下载最新版R语言 (下载页面:https://cran.r-project.org);点击Download R for Windows完成R-4.0.3.win.exe安装程序的下载(如图2);双击安装程序,建议语言选择英文安装。 图2. R语言的下载 四、 IQ-TREE的下载安装和使用 IQ-TREE软件是2015年发表的一款快速准确进行最大似然法 (Maximum Likelihood, ML) 构建系统发育树的软件 (Nguyen et al., 2015),目前已经更新到v2.2.2版本。IQ-TREE软件应用一种快速、有效的随机算法,在近似的计算时间内具有比RAxML软件和PhyML软件更高的精确度。此外IQ-TREE软件的模型选择速度比jModelTest快10-100倍,其自展支持率估算比RAxML软件快10-40倍并且支持宏基因组等大数据计算 (Minh et al., 2020)。IQ-TREE软件的下载界面: (http://www.iqtree.org),选择下载最新版64位的IQ-TREE (v2.2.2) 软件 (如图3),解压后将其放在C:\bin目录中。 图3. IQ-TREE软件的下载 五、 MUSCLE的下载安装和使用 MUSCLE软件是一款快速多重序列比对软件,MUSCLE软件具有比CLUSTALW等软件更快的比对速度以及精确度,它能在数分钟内完成数百条序列的比对。迄今,MUSCLE软件已经被引用了超过37,000次,是生物学领域中最为广泛使用的软件之一 (Edgar, 2004)。MUSCLE软件的下载界面 (如图4):(http://drive5.com/muscle),选择下载最新版的MUSCLE软件,解压后将其放在C:\bin目录中。 图4. MUSCLE软件的下载 六、 trimAL 的下载安装和使用 完成精确的多序列比对后,需过滤掉一些低质量以及高变异度的序列区域。trimAL软件能快速,精确切除和过滤低质量以及高变异度的序列,仅保留进化保守的区域用于后续分析。trimAL软件的下载界面 (如图5):(http://trimal.cgenomics.org/downloads),选择下载最新版的trimAL软件,解压后将其放在C:\bin目录中。 图5. trimAL软件的下载 七、 Rstudio的下载安装和使用 Rstudio的下载页面:(https://rstudio.com/products/rstudio/download)。从网页中选择下载最新版的Rstudio(如RStudio Desktop 1.3.1093),双击安装程序进行默认安装。Rstudio安装完成后,按如图所示步骤调出“Terminal”界面,然后在Terminal窗口中输入ls (LS的小写),按回车进行测试,如果出现“command not found”错误,请按照下图重新进行操作和设置 (如图6)。 图6. Rstudio软件的设置及Terminal的调用 八、 “git for windows”的下载安装和使用 “git for windows”软件 (v2.28.0) 是一款能在Windows系统下运行的命令行工具,能在Windows下运行部分Linux代码 (下载页面:https://gitforwindows.org/),按照默认参数右键管理员安装Git-2.28.0-64-bit.exe即可 (如图7)。 图7. “git for windows”软件的下载 九、 添加程序位置至Windows系统中的环境变量 我的电脑-右键属性-按右侧截图操作,测试是否安装成功:在RStudio的Terminal下输入:usearch10,按回车,如有出现USEARCH10的版本信息,则表明安装成功。若不成功,可检查环境变量配置,按下图进行操作 (如图8): 图8. Windows10系统的环境变量的设置
分析步骤
一、 数据获得和操作流程概况 准备输入数据 本文中所有的测试数据集、所需软件、R脚本以及生成的结果均已上传到百度网盘,如需测试和使用,可点击如下链接进行下载和使用 (百度网盘链接: https://pan.baidu.com/s/15MIJzV0_5kNV3VF_o0rKZw 提取码:5ru9)。具体技术流程概况以及各个软件的功能与彼此之间的联系如图9所示。 图9. 系统发育树的构建流程图 二、 数据处理相关的命令行操作均在Rstudio “Terminal”界面进行
三、 序列对齐及系统发育树的构建 #构建进化树,实现高丰度菌的进化树的分组信息展示与美化。 #起始文件为 result/tree目录中high_otus.fa (序列)、annotation.txt (物种和相对丰度)文件 # Muscle软件进行序列比对和对齐,代码如下: $ cd Tree_data/result/tree $ muscle -in high_otus.fa -out otus_aligned.fa #trimAL软件进行低质量以及高变异度的序列的过滤和修剪,代码如下: $ trimal -in otus_aligned.fa -out otus_aligned_trimed.fa -gt 0.95 #利用IQ-TREE软件进行ML系统发育树的构建,代码如下: $ mkdir -p iqtree $ iqtree -s otus_aligned_trimed.fa -bb 1000 -redo -alrt 1000 -m MFP -nt AUTO -pre iqtree/training_otus #参数简介: -m 参数:指定模型选项,MFP表示ModelFinder Plus (自动默认)。 -redo参数:之前运行成功后生成了相应的文件,指定redo会重新跑一遍覆盖之前的文件。 -pre参数:将结果输入到iqtree文件夹中,且生成文件的前缀为training_otus。 -alrt参数:是否启用 SH-aLRT检验。 四、 iTOL网站进行系统发育树的编辑和展示 在运用iTOL在线工具进行系统发育树的美化之前,首先要使用“table2itol.R”这个R包 (https://github.com/mgoeker/table2itol) 生成用于系统发育树编辑和美化的注释文件。然后访问并登陆iTOL网站 (http://itol.embl.de/),上传otus.nwk,再拖拽以下命令行生成的不同注释文件 (分别位于“plan1”、“plan2”和“plan3”三个文件夹) 于iTOL主界面的系统发育树图上即完成系统发育树的美化。 # plan1生成外圈颜色、形状分类和丰度文件,代码如下: $ cd Tree_data/result/tree $ Rscript ../../script/table2itol.R -a -c double -D plan1 -i OTUID -l Genus -t %s -w 0.5 annotation.txt # plan2生成丰度柱形图注释文件,代码如下: $ Rscript ../../script/table2itol.R -a -d -c none -D plan2 -b Phylum -i OTUID -l Genus -t %s -w 0.5 annotation.txt # plan3生成热图注释文件,代码如下: $ Rscript ../../script/table2itol.R -c keep -D plan3 -i OTUID -t %s otutab.txt #参数简介 -a:找不到输入列将终止运行 (默认不执行) -c:将整数列转换为factor或具有小数点的数字 -t:偏离提示标签时转换ID列 -w:颜色带,区域宽度等 -D:输出目录 -i:OTUs列名 -l:OTUs显示名称如种/属/科名 注:当需要标注的颜色过多时,R脚本会采用形状+颜色的方式对类别进行区分。
结果与分析
小结
本文简要介绍了微生物扩增子数据中高丰度OTUs数据的筛选,代表性序列及对应物种注释的获取,以及系统发育树的构建方法等。该流程展示了一套完整的扩增子数据构建系统发育树操作步骤,以帮助研究者学习和掌握接近发表质量要求的系统发育树图的构建方法。研究者在建树过程中可以根据研究领域参考同行文献对系统发育树进行一些细节参数的调整,并使用AI (Adobe Illustrator) 对特殊图形、字符和树进行进一步修改和美化。
致谢
感谢“git for windows”软件开发者提供的Git 软件 (https://github.com/git-for-windows)及mgoeker在GitHub网站上开发和公开分享的R语言包“table2itol” (https://github.com/mgoeker/table2itol)。本文分析方法已应用于待发表文章“Distribution and variations of mycotoxin producing fungal community in major rice production areas of China”。
参考文献
If you have any questions/comments about this protocol, you are highly recommended to post here. We will invite the authors of this protocol as well as some of its users to address your questions/comments. To make it easier for them to help you, you are encouraged to post your data including images for the troubleshooting.