bowtie2比对软件的安装及参数详解

测序数据分析软件,Bowtie是一个超快的,存储高效的短序列片段比对程序。它能够以每小时处理2500万35bp reads的速度,将短的DNA序列片段(reads)比对到人类基因组上。

一、安装

  • conda安装
conda install -y bowtie2
  • 传统安装

1、下载源码包

nohup wget https://nchc.dl.sourceforge.net/project/bowtie-bio/bowtie2/2.3.5.1/bowtie2-2.3.5.1-linux-x86_64.zip

2、解压

unzip bowtie2-2.3.5.1-linux-x86_64.zip

3、添加环境变量

vim ~/.bashrc
export PATH="/data/hushy/tools/bowtie2:$PATH"
source ~/.bashrc  # source命令通常用于重新执行刚修改的初始化文件

4、测试

bowtie2 --help

二、创建索引

1、下载参考基因组

less -S /data/database/kraken2/NT/library/nt/library.fna

2、创建索引

nohup bowtie2-build /data/database/kraken2/NT/library/nt/library.fna index &  #内存很大,可能会把服务器节点搞挂

三、下载官方索引

nohup wget ftp://ftp.ccb.jhu.edu/pub/data/bowtie2_indexes/mm10.zip &
unzip mm10.zip
rm mm10.zip make_mm10.sh

四、基本用法

  • 语法
Usage: 
  bowtie2 [options]* -x  {-1  -2  | -U  | --interleaved  | -b } [-S ]
  • 参数选项
    • 必选参数
-x  由bowtie2-build所生成的索引文件的前缀,需要指定路径及其共用文件名
-1  使用trimmomatic质控后与read2配对(paired)的read1。可以为多个文件,并用逗号分开;多个文件必须和 -2  中制定的文件一一对应。
-2  使用trimmomatic质控后与read1配对的read2
-U  使用trimmomatic质控后未配对(unpaired)的reads。可以为多个文件,并用逗号分开,测序文件中的reads的长度可以不一样。
-S  所生成的SAM格式的文件前缀。默认是输入到标准输出。
  • 可选参数

    • 输入参数
-q                输入的文件为FASTQ格式文件,此项为默认值
-f                输入的文件为FASTA格式文件
-5/--trim5   剪掉5'端长度的碱基,再用于比对。(default: 0)
-3/--trim3   剪掉3'端长度的碱基,再用于比对。(default: 0).
--phred33         输入的碱基质量等于ASCII+33
  • Paired-end 参数
--no-mixed       默认设置下, 一对reads不能成对比对到参考序列上, 则单独对每个read进行比对. 该选项则阻止此行为.
--no-discordant  默认设置下, 一对reads不能和谐比对(concordant alignment,即满足-I, -X, --fr/--rf/--ff的条件)到参考序列上, 则搜寻其不和谐比对(disconcordant alignment, 即两条reads都能独一无二地比对到参考序列上, 但是不满足-I,-X,--fr/--rf/--ff的条件). 该选项阻止此行为.
  • –end-to-end模式下的预设参数
--end-to-end 比对是将整个read和参考序列进行比对. 该模式--ma的值为0. 该模式为默认模式, --local模式冲突.
--local 该模式下对read进行局部比对, 从而, read两端的一些碱基不比对,从而使比对得分满足要求. 该模式下 –ma默认为2.
--very-fast Same as: -D 5 -R 1 -N 0 -L 22 -i S,0,2.50 
--fast Same as: -D 10 -R 2 -N 0 -L 22 -i S,0,2.50 
--sensitive Same as: -D 15 -R 2 -N 0 -L 22 -i S,1,1.15 (default in --end-to-end mode) 
--very-sensitive Same as: -D 20 -R 3 -N 0 -L 20 -i S,1,0.50
  • 报告参数
-k   默认设置下, bowtie2搜索出了一个read不同的比对结果, 并报告其中最好的比对结果(如果好几个最好的比对结果得分一致, 则随机挑选出其中一个). 而在该模式下, bowtie2最多搜索出一个read 个比对结果, 并将这些结果按得分降序报告出来.
-a   和-k参数一样, 不过不限制搜索的结果数目. 并将所有的比对结果都按降序报告出来. 此参数和-k参数冲突. 值得注意的是: 如果基因组含有很多重复序列时, 该参数会导致程序运行极其缓慢.
  • Sam 参数
--no-unal 不记录没比对上的reads.
--no-hd 不记录SAM header lines (以@开头).
--no-sq 不记录@SQ的SAM header lines.
--rg-id  设定read group Id到.
--rg  增加作为一行@RG.
  • 输出参数
-t/--time  --un         将unpaired reads写入到.
--no-unal                     不能map到GENOME的reads,不保留sam记录
--un-conc               不能map到GENOME的reads,fasta格式.
--un-conc-gz            不能map到GENOME的reads,fasta格式, gzip压缩.
--al-conc               能map到GENOME的reads,fasta格式.
--al-conc-gz            能map到GENOME的reads,fasta格式, gzip压缩.
-p/--threads NTHREADS         设置线程数. Default: 1  如果你的计算机有多个CPU或者CPU内核,那么请使用-p参数。-p参数会让bowtie进入多线程模式。每一个线程都会使用单独的CPU或者CPU内核。这种并行的运算模式也会大大加快运算速度。
  • 示例
bowtie2 -p 10 -x /data/ref/bowtie2/mm10/mm10 -1 input_1.fq -2 input_2.fq | samtools sort -O bam -@ 10 -o - > output.bam
##双端测序数据去宿主:
bowtie2 --end-to-end --no-mixed --no-discordant --no-unal --sensitive --threads 8 \
        -x /data/hostClean/Index/host.fa \
        -1 /data/hospital_microbiome/trimmed_reads/ERR320975-trimmed-pair1.fastq.gz \
        -2 /data/hospital_microbiome/trimmed_reads/ERR320975-trimmed-pair2.fastq.gz \
        --un-conc-gz /data/hospital_microbiome/cleanData/ERR320975.clean.fastq.gz \

你可能感兴趣的:(bowtie2比对软件的安装及参数详解)