Qiime1-7.去除嵌合体

嵌合体(Chimeras)是PCR阶段不正常的扩增过程所产生的序列。
嵌合体由两条及以上的模板链组成,是PCR延伸阶段的不完全延伸造成的。

Chimeras

通常有1%的几率会出现嵌合体序列,而在16S/18S/ITS扩增子测序的分析中,由于序列间相似度较高,所以概率会更高。

在去除嵌合体的同时我们会造成一定的数据损失,是否需要去除嵌合体是一个有争议的问题,如果你不想去除嵌合体可以选择跳过这一步直接进行后续的分析。

去除嵌合体主要分为四步:
1、鉴定嵌合体
2、去除嵌合体
3、生成不含嵌合体的Phylogenetic Tree
4、生成不含嵌合体的OTU Table

Step1: 鉴定嵌合体

parallel_identify_chimeric_seqs.py \
-i pick_otus/pynast_aligned_seqs/rep_set_aligned.fasta \
-o pick_otus/chimeric_seqs.txt \
-m ChimeraSlayer \

Step2: 去除嵌合体

filter_fasta.py \
-f pick_otus/pynast_aligned_seqs/rep_set_aligned.fasta \
-o pick_otus/pynast_aligned_seqs/rep_set_aligned_chimerafree.fasta \
-s pick_otus/chimeric_seqs.txt \
--negate
#进行基本的过滤去除高变区
filter_alignment.py \
-i pick_otus/pynast_aligned_seqs/rep_set_aligned_chimerafree.fasta \
-o pick_otus/

Step3: 生成不含嵌合体的Phylogenetic Tree

make_phylogeny.py \
-i pick_otus/rep_set_aligned_chimerafree_pfiltered.fasta \
-o pick_otus/rep_set_chimerafree.tre

Step4: 生成不含嵌合体的OTU Table

make_otu_table.py \
-i pick_otus/final_otu_map_mc2.txt \
-o pick_otus/otu_table_rdp_nochimera.biom \
-t pick_otus/rdp_assigned_taxonomy/rep_set_tax_assignments.txt \
-e pick_otus/chimeric_seqs.txt

最终生成的文件:

  1. OTU Table (pick_otus/chimeraslayer/otu_table_rdp_nochimera.biom)
  2. Phylogenetic Tree (pick_otus/chimeraslayer/rep_set_chimerafree.tre)
  3. Representative Sequences (pick_otus/chimeraslayer/rep_set_aligned_chimerafree.fasta)

去除嵌合体过程中可能出现的报错解决:

1、burrito.util.ApplicationNotFoundError: Cannot find formatdb. Is it installed? Is it in your path? 没有找到formatdb

鉴于大部分人都并不是完全安装,只是安装了qiime1的一部分所以很容易出现这个报错,出现这个错误的原因显然是没有安装formatdb。formatdb是来源于blast里的,可以通过该链接下载blast:
ftp://ftp.ncbi.nlm.nih.gov/blast/executables/legacy/2.2.22/blast-2.2.22-universal-macosx.tar.gz
直接输入到像迅雷这样的软件的下载地址输入框即可。
然后把它解压缩到你需要的路径下再配置一波环境即可,和之前的RDP有点像。

echo "export PATH=/Users/617/blast-2.2.22/bin:${PATH}" >> $HOME/.bashrc
source $HOME/.bashrc

2、执行parallel_identify_chimeric_seqs.py时出现burrito.util.ApplicationNotFoundError

error

原因是没有安装cdbfasta工具,具体的下载地址:ftp://occams.dfci.harvard.edu/pub/bio/tgi/software/cdbfasta/cdbfasta.tar.gz

$ cd cdbfasta

在运行make文件前,请先查看Makefile文件并注意以下事项:

  • GCLDIR must point to the directory containing the gclib source
    files (should be included in this source package already as a subdirectory)
  • in order to support record compression, change the BASEFLAGS variable
    to have -DENABLE_COMPRESSION=1 instead of -DENABLE_COMPRESSION=0
    (default is: no compression support)
  • if compression was enabled, ZDIR should point to the directory where the zlib library (libz.a and all the zlib header files like zlib.h) can be found.
    This is only needed if your system does not have the zlib library installed already (most systems do). In case you get zlib related errors when you try to compile cdbfasta you might have to download zlib and install/build it in a directory that should then be specified as ZDIR in the Makefile
#查看Makefile文件
$ nano Makefile
…
ZDIR := /usr/include #../zlib
…
-DENABLE_COMPRESSION=1
…
$ make
#根据自己的需要选择
$ mv cdbfasta cdbyank /Users/617/miniconda3/bin/
#Cleanup
$ cd ..
$ rm -rf cdbfasta