zoukankan      html  css  js  c++  java
  • 去duplicate的方法

    1.什么是duplicate,为什么要去除。

    什么是duplicate:这是在建库的过程后,对已连有接头的DNA片段进行扩增,然后去接flowcell。之所以在建库后扩增,这是由于接flowcell的效率很低,建库后的分子很少。

    为什么要去除:因为PCR duplicate后就会导致一个序列被重复测了多次。如果这个序列在后面的分析中有突变位点,则不去pcr dup就会增加它的深度,然后被定位真的突变位点。

    2.主要有运用两种工具:samtools和picard

    samtools

    A:利用flags值:samtools view -F 1024 - h test.bam >rmdup.bam

    B:rmdup工具:samtools rmdup test.bam rmdup.bam 

    C1:fixmate和markdup工具:samtools markdup test.bam markdup.bam

    C2:fixmate和markdup工具:samtools markdup -r test.bam markdup.bam 

    类型 wc -l 查看read数目 备注  
    去重前 4888252    
    去重A 4888252

    用于测试的sam文件中的flags值最高只到181,所以是没有过滤掉任何reads。

    sam文件来自于比对软件bwa,那么flags值是否。

     
    去重B 4888252 说明只是在duplicate read上标注,并没有将它从sam文件中去除  
    去重C1 4888252 说明只是在duplicate read上标注,并没有将它从sam文件中去除  
    去重C2 3930244 说明已经将duplicate read从sam文件中去除  
    去重D1 4888252 说明只是在duplicate read上标注,并没有将它从sam文件中去除  
    去重D2 3930212 说明已经将duplicate read从sam文件中去除  

    picard

    D1:java -jar picard.jar MarkDuplicate I=test.bam O=picard1.bam M=picard1.txt  (test.bam是坐标轴排序的bam文件)

    D2:java -jar picard.jar MarkDuplicate REMOVE_DUPLICATES I=test.bam O=picard1.bam M=picard1.txt 

    拒绝低效率勤奋,保持高效思考
  • 相关阅读:
    sql 四大排名函数--简介
    Markdown语法规则
    利用ADO操作外部数据——Excel之VBA(15)
    VBA中的用户信息交换——Excel之VBA(14)
    窗体和控件(2)——Excel之VBA(13)
    窗体和控件(1)——Excel之VBA(12)
    使用VBA数组公式——Excel之VBA(11)
    使用DIR函数合并多个文件的数据——Excel之VBA(10)
    ubuntu jupter python虚拟环境
    Pytorch_加载自己的数据集并训练
  • 原文地址:https://www.cnblogs.com/timeisbiggestboss/p/7897430.html
Copyright © 2011-2022 走看看