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 

    拒绝低效率勤奋,保持高效思考
  • 相关阅读:
    spring applicationContext.xml中<beans>中属性概述
    ES6新特性
    JavaWeb工程 目录结构
    web项目目录结构
    关于 eclipse启动卡死的问题 解决方法
    eclipse 僵死/假死 问题排查及解决
    Ajax的text/plain、application/x-www-form-urlencoded和application/json
    js的等值比较规则
    jsp页面中注释 <!-- --> 和<%-- --%> 的区别
    Spring的配置文件ApplicationContext.xml配置头文件解析
  • 原文地址:https://www.cnblogs.com/timeisbiggestboss/p/7897430.html
Copyright © 2011-2022 走看看