美文网首页生信linux
SAMtools——bam文件合并

SAMtools——bam文件合并

作者: Wei_Sun | 来源:发表于2022-02-12 02:02 被阅读0次

    当存在多个样本的bam文件时,可以通过SAMtools的merge命令实现。

    官方说明书:
    http://www.htslib.org/doc/samtools-merge.html

    基础用法

    samtools merge要求是对排序后的bam文件进行合并,生成和现在顺序一样的bam文件。需要注意的是,bam文件需要有.bai索引。

    samtools merge [options] -o out.bam [options] in1.bam ... inN.bam
    

    或者:

    samtools merge [options] out.bam in1.bam ... inN.bam
    

    option

    • -h FILE
      Use the lines of FILE as `@' headers to be copied to out.bam, replacing any header lines that would otherwise be copied from in1.bam. (FILE is actually in SAM format, though any alignment records it may contain are ignored.)
      指定FILE内的’@’的RG表头,复制到输出bam文件中,并替换输出文件的文件头。

    • -r
      Attach an RG tag to each alignment. The tag value is inferred from file names.
      使RG标签添加到每一个比对文件上,标签值来自文件名;

    举例:

    生成一个rg.txt的文件,并赋值给合并后的bam文件。

    $ perl -e 'print "@RG\\tID:ga\\tSM:hs\\tLB:ga\\tPL:Illumina\\n@RG\\tID:454\\tSM:hs\\tLB:454\\tPL:454\\n"' > rg.txt
    $ samtools merge -rh rg.txt merged.bam ga.bam 454.bam
    

    实例:

    $ samtools merge \
            -o CPF1_CE.rg.sort.dup.bam \
            CPF1_R1_CE.rg.sort.dup.bam \
            CPF1_R2_CE.rg.sort.dup.bam \
            CPF1_R3_CE.rg.sort.dup.bam
    
    $ samtools view -H CPF1_CE.rg.sort.dup.bam | grep '@RG'
    @RG     ID:CPF1_R1_CE   LB:lib1 PL:illumina     SM:CPF1_R1_CE   PU:unit1
    @RG     ID:CPF1_R2_CE   LB:lib1 PL:illumina     SM:CPF1_R2_CE   PU:unit1
    @RG     ID:CPF1_R3_CE   LB:lib1 PL:illumina     SM:CPF1_R3_CE   PU:unit1
    

    引用转载请注明出处,如有错误敬请指出。

    相关文章

      网友评论

        本文标题:SAMtools——bam文件合并

        本文链接:https://www.haomeiwen.com/subject/eoxtlrtx.html