• bowtie:短序列比对的新工具


    bowtie:短序列比对的新工具(转)

     (2014-11-17 22:15:24)
    标签: 

    转载

     

    Bowtie是一个超级快速的,较为节省内存的短序列拼接至模板基因组的工具。它在拼接35碱基长度的序列时,可以达到每小时2.5亿次的拼接速度。

    Bowtie并不是一个简单的拼接工具,它不同于Blast等。它适合的工作是将小序列比对至大基因组上去。它最长能读取1024个碱基的片段。换言之,bowtie非常适合下一代测序技术。

    在 使用bowtie前,需要使用bowtie-build来构建比对模板。如果你需要比对是比较常见的基因组的话,你可以去http://bowtie- bio.sourceforge.net/manual.shtml下载你所需要的Pre-built indexes文件就可以了。

    如 前所述,bowtie适合于将短序列拼接至大的模板上,尤其是基因组。模板最小尺寸不能小于1024碱基,而短序列最长而不能超过1024碱基。 Bowtie设计思路是,1)短序列在基因组上至少有一处最适匹配, 2)大部分的短序列的质量是比较高,3)短序列在基因组上最适匹配的位置最好只有一处。这些标准基本上和RNA-seq, ChIP-seq以及其它一些正在兴起的测序技术或者再测序技术的要求一致。

    如果bowtie在你的机器上运行起来很慢,那么你可以试试以下的一些办法来让它跑得快一些:

    1. 尽 可能的使用64位bowtie。很显然,64位运算会比32位运算更快。所以最好使用支持64位运算的计算机来运行64位的bowtie。如果你是从原文 件开始编译程序,在g++编译时,你需要传递-m64参数,你也可以在make的时候加入这一信息,比如说传递BITS=64给make,具体 的:make BITS=64 bowtie。想知道你自己运算的是什么版本的bowtie,你可以运行bowtie –version
    2. 如果你的计算机有多个CPU或者CPU内核,那么请使用-p参数。-p参数会让bowtie进入多线程模式。每一个线程都会使用单独的CPU或者CPU内核。这种并行的运算模式也会大大加快运算速度。
    3. 如 果你的报告文件中每条短序列都有太多的匹配位点(超过10)那么你可以试着重新使用bowtie-build加上 –offrate参数,如bowtie-build –offrate 4。-o/–offrate默认值为5,每下降1,比对速度会增加1倍,但是系统消耗(硬盘空间和内存)也会加倍。
    4. 如果你的系统 配置太低,比如内存不足4GB,那么建议你在bowtie的时候使用–offrate参数。与上一条相反的,你需要加大offrate的值。bowtie –offrate 6. 其默认值为5。每增加1,内存空间的要求下降,这样会减少读取硬盘当中虚拟内存的次数,速度反而会有所上升。

    -n模式与-v模式

    默认的,bowtie采用了和Maq一样的质量控制策略,设置 -n 2 -l 28 -e 70。总的来说,比对模式分为两种,一种是 -n 模式, 一种是 -v 模式,而且这两种模式是不能同时使用的。bowtie默认使用-n模式。

    -n模式参数: -n N -l L -e E

    其中N,L,E都为整数。-n N 代表在高保真区内错配不能超过N个,可以是0?3,一般的设置为2。-l L代表序列高保真区的长度,最短不能少于5,对于短序列长度为32的,设置为28就很不错。-e E代表在错配位点Phred quality值不能超过E,默认值为40。Phred quality值的计算式为:-10 log(P,base(10))

    Phred Quality值 错配可能性 正配可能性
    10 1/10 90%
    20 1/100 99%
    30 1/1000 99.9%
    40 1/10000 99.99%
    50 1/100000 99.999%

    而-v模式的参数相对较少。

    -v模式参数:-v V

    其中V为整数。-v V代表全长错配不能超过V个,可以是0?3。这时,不考虑是否高保真区,也不考虑Phred quality值。

    –best 与–strata

    –best 参数代表报告文件中,每个短序列的匹配结果将按匹配质量由高到低排序。–strata参数必须与–best参数一起使用,其作用是只报告质量最高的那部 分。所谓质量高低,其实就是指错配的碱基数,如果指定了-l L参数,那就是在高保真区内的错配数,否则就是全序列的错配数。如果你还指定了 -M X的话,那就会在质量最高的当中,随机选择X个来报告。也就是说,当我们指定了-M 1 –best –strata的话,那就只报告1个最好的。

    对于输入,-q是指输入的文件为FASTQ(文件扩展名通常为.fq或者.fastq)格式;-f是指输入文件为FASTA(文件扩展名通常为.fa, .mfa或者.fna)格式;-c是指在命令行直接输入要比对的序列。

    下面就是一个具体的例子:

    bowtie -v 2 -M 1 –best –strata Genomes/hg19_ebwt/hg19 Pol2ChIP.fastq Pol2ChIP.map

    1.本人用过的短序列比对工具里,感觉bowtie最好使,大体用法和blast挺像的,也很简单,就两步:
    第一步,build:感觉和blast的第一步formatdb差不多,在命令行输入bowtie-build <seqfile> <dbname>
    第二步,align:和blast的核心(blastall)差不多,在命令行输入:bowtie [options]* <dbname> <short_reads_file> <outfile>
    bowtie的速度比Maq和SOAP都快,PC机上也能胜任大规模数据分析,一般100M大小的基因组做mapping,2-3min就可以了,快的让我不敢接受,呵呵,bwt算法就是牛!
    bowtie的用途不仅仅是短序列比对最mapping,更多信息请参考:
    http://bowtie-bio.sourceforge.net/index.shtml

    2.


    Bowtie aligner 簡介
    軟體簡介 Bowtie is an ultrafast, memory-efficient short read aligner
    核心技術 Mapping / Burrows-Wheeler / FM Index
    原創作者 Ben Langmead / Cole Trapnell
    維護狀況 0.12.3 release - 2010/02/17
    輸入格式 FASTQ
    輸出格式 SAM / Bowtie default format
    適用機器架構 i386 / x86_64
    作業平台 Linux, Windows, and Mac OS X

    使用說明

    本軟體目前安裝於BIP2(140.123.126.234)主機, 實驗帳號為Bioinfo 若有需要利用此軟體進行實驗, 請與 冠宏/盈達 聯絡索取實驗帳號資料

    軟體目錄目標路徑: /home/bioinfo/alignmentTool/bowtie-0.12.3


    Getting started
    Building a new index
    Performing alignments
    Finding variations with SAMtools
    準備資料
    Reference genome data (*.fa)
    NGS Short reads data (*.fastq)
    Building a new index
    根據 reference genome data(e.g. reference.fa) 建立 Index File
    # bowtie-build [options]* <reference_in> <ebwt_base>

    Performing alignments
    NGS short reads data (e.g. leftRead.fastq / rightRead.fastq)
    refernece genome data(e.g. reference.fa)
    # bowtie [options]* <ebwt> {-1 <m1> -2 <m2> | --12 <r> | <s>} [<hit>]

    Solid data for single-read alignment
    # bowtie -S -a -f -C -p 7 <reference-index> <singleRead.csfasta> -Q <singleRead.qual> > <alignResult.sam> -S :輸出為sam檔 -a :把所有對到的read列出來,即使有multiple mapping -C :input為.csfasta -Q :.csfasta 內容裡無 quality value,所以需準備 .qual -f :伴隨 -Q -C 參數 -p int :用幾顆cpu跑

    If bowtie Paired end 100% failed to align

    http://seqanswers.com/forums/showthread.php?t=6522


    Finding variations with SAMtools
    輸出sam格式

    # bowtie -S e_coli reads/e_coli_10000snp.fq ec_snp.sam


    轉成bam格式

    # samtools view -bS -o ec_snp.bam ec_snp.sam


    排序bam資料

    # samtools sort ec_snp.bam ec_snp.sorted


    結合bam資料

    # samtools merge <out.bam> <in.bam> | <in.bam> …


    找尋SNP

    # samtools pileup -cv -f genomes/NC_008253.fna ec_snp.sorted.bam


    其他
    參考資料

    Langmead B, Trapnell C, Pop M, Salzberg SL.. 2009. Genome Biology

    Bowtie Introduction on NCBI Presentation


    相關連結

    Bowtie Homepage


    http://bioinfo.cs.ccu.edu.tw/wiki/doku.php?id=bowtie
  • 相关阅读:
    【POJ 3162】 Walking Race (树形DP-求树上最长路径问题,+单调队列)
    【POJ 2152】 Fire (树形DP)
    【POJ 1741】 Tree (树的点分治)
    【POJ 2486】 Apple Tree (树形DP)
    【HDU 3810】 Magina (01背包,优先队列优化,并查集)
    【SGU 390】Tickets (数位DP)
    【SPOJ 2319】 BIGSEQ
    【SPOJ 1182】 SORTBIT
    【HDU 5456】 Matches Puzzle Game (数位DP)
    【HDU 3652】 B-number (数位DP)
  • 原文地址:https://www.cnblogs.com/wangprince2017/p/9937586.html
Copyright © 2020-2023  润新知