使用bowtie2去除宿主序列
在研究组织或者肠道微生物时,常常需要去除宿主的DNA序列,以防止宿主的序列干扰研究。去宿主序列的主要研究方法是通过将质控后的序列与宿主基因组进行比对,将比对上的序列进行去除。比对软件通常有bowtie、bwa、SOAPaligner等短序列比对工具,去宿主比对的话通常选择bowtie2。
构建索引
用bowtie2-build来构建新的index
bowtie2-build --threads 20 human.fa human.fa
运行结束后,生成6个文件
比对
bowtie2命令
bowtie2 [options] -x <bt2-idx> { -1 <m1> -2 <m2> | -U <r>} [-S <hit>]
<文件>:
-x <bt2-idx>
参考基因组(reference genome)通过bowtie2-build指令构建的Index文件
-1 <m1>
双末端测序中第一个fastq文件,可以写多个文库但是必须用逗号隔开,但文件m1与文件m2必须一一对应,测序文件中的Reads的长度可以不同。
-2 <m2>
双末端测序对应的第二个fastq文件,与文件m1对应
-U <r>
与前面的文件1,文件2为或的关系,此处的文件是非双末端比对文件。例如lane1.fq,lane2.fq,lane3.fq,lane4.fq。可以是多个文件,但是必须用逗号隔开。
-S <hit>
指定输出文件,后缀是sam的格式的文件,默认标准输出
[options]:
-q
Reads(用<m1>,<m2>,<s>指定)是FASTQ格式的文件,默认即FASTQ。
--qseq
Reads(用<m1>,<m2>,<s>指定)是QSEQ格式的文件。
-f
Reads(用<m1>,<m2>,<s>指定)是FASTA文件。
-r
Reads(用<m1>,<m2>,<s>指定),每行代表一个输入序列,没有任何其他信息(无read名称,无qualities)。
-c
后面直接是比对的reads序列(而不是文件),即reads序列在命令行上给出。
-s/--skip <int>
<int>中是数字,input的reads跳过前<int>个reads或read pairs
-u/--qupto <int>
比对前<int>个reads或read pairs,然后停止。
-5/--trim5 <int>
剪掉5'(左)端<int>长度的碱基,再用于比对(默认值0)
-3/--trim3 <int>
剪掉3'(右)端<int>长度的碱基,再用于比对(默认值0)
--phred33
输入的序列质量数据为Phred33体系(默认为phred33)
--phred64
输入的序列质量数据为Phred64体系
-p
程序运行所用核数
比对去宿主
bowtie2 -p 4 --un-gz sample.filter --un-conc-gz sample.filter -x human -1 sample.clean_1.fq.gz -2 J2.clean_2.fq.gz
输出结果中sample.filter.1.fq.gz和sample.filter.2.fq.gz即为去除宿主之后的reads,可以进入下一步的分析。