欢迎关注”生信修炼手册”!

在NGS的数据分析中,去除PCR重复序列是一个常见的分析步骤,无论是WES/WGS的snp calling,还是chip_seq, ATAC_seq,都需要对原始的bam文件进行过滤,去除其中的PCR重复序列。

为了完成这一工作,常用的工具有以下几种

1. samtools

操作SAM/BAM文件,samtools肯定是首选的工具。在samtools中也提供了去除PCR重复的命令markdup, 该命令对输入的bam文件有以下两点要求

  1. 必须是经过samtools fixmate命令处理之后的文件

  2. 必须是按照比对上染色体坐标位置排序之后的文件

另外,由于fixmate命令要求输入的bam文件为按照read name,即序列名称排序之后的文件,所以在使用markdup命令时,需要以下4步转换过程

# 第一步,按照read name排序bam文件
samtools sort -n -o namesort.bam input.bam
# 第二步,运行fixmate命令
samtools fixmate -m namesort.bam fixmate.bam
# 第三步,按照coordinate排序bam文件
samtools sort -o positionsort.bam fixmate.bam
#第四步,运行markdup命令
samtools markdup positionsort.bam markdup.bam

虽然samtools处理bam文件的速度很快,但是经过这一系列的排序操作之后,整个duplicate做的过程耗时非常久。

2. picard MarkDuplicates

picard的MarkDuplicates命令称得上是使用的最广泛的去除PCR重复的工具了,要求输入的bam文件为按照比对位置排序之后的文件,用法如下

# 第一步,按照coordinate排序bam文件
samtools sort -o positionsort.bam input.bam
# 第二步,运行MarkDuplicate命令
java -jar picard.jar MarkDuplicate \
I=positionsort.bam \
O=markdup.bam \
M=markdup.metrc.csv

3. sambamba

sambamba是一款比samtools速度更快的操作BAM文件的工具,也提供了markdup命令,其PCR重复的判定方法和picard是一致的,用法如下

# 第一步,按照coordinate排序bam文件
sambamba sort -o positionsort.bam input.bam
# 第二步,运行markdup命令
sambamba markdup positionsort.bam markdup.bam

除了这三种方法之外,还有很多的工具可以去除PCR重复序列,只不过这3种方法最为常见,其中sambamba的操作速度最快,推荐使用。

·end·

—如果喜欢,快分享给你的朋友们吧—

原创不易,欢迎收藏,点赞,转发!生信知识浩瀚如海,在生信学习的道路上,让我们一起并肩作战!

本公众号深耕耘生信领域多年,具有丰富的数据分析经验,致力于提供真正有价值的数据分析服务,擅长个性化分析,欢迎有需要的老师和同学前来咨询。

更多精彩

  • KEGG数据库,除了pathway你还知道哪些

  • 全网最完整的circos中文教程

  • DNA甲基化数据分析专题

  • 突变检测数据分析专题

  • mRNA数据分析专题

  • lncRNA数据分析专题

  • circRNA数据分析专题

  • miRNA数据分析专题

  • 单细胞转录组数据分析专题

  • chip_seq数据分析专题

  • Hi-C数据分析专题

  • HLA数据分析专题

  • TCGA肿瘤数据分析专题

  • 基因组组装数据分析专题

  • CNV数据分析专题

  • GWAS数据分析专题

写在最后

转发本文至朋友圈,后台私信截图即可加入生信交流群,和小伙伴一起学习交流。

扫描下方二维码,关注我们,解锁更多精彩内容!

一个只分享干货的

生信公众号

NGS测序中PCR重复序列的判定方法相关推荐

  1. 判定能否构成三角形的方法 java_java中判断是否三角形的方法

    java中判断是否三角形的方法: package Angle; import java.util.Scanner; public class Angle { //判断是否能构成三角形 public s ...

  2. 肿瘤NGS测序行业背景介绍

    肿瘤NGS测序行业背景介绍 1.行业基本情况 1.1 行业分类 1.2 主管部门 1.3 行业监管 1.4 行业法规 1.5 医保报销流程 2.肿瘤基本介绍 2.1 肿瘤基础概念 2.2 癌症分期 2 ...

  3. Nature综述:宏基因组测序研究耐药基因的方法和资源

    本文转自红皇后学术,链接 https://mp.weixin.qq.com/s/2QMrq6hwr4mIPSpe_rfXJg 论文信息 论文题目:Sequencing-based methods an ...

  4. Microbiome | 宏基因组测序中减少样品中真核宿主的DNA污染

    Microbiome | 宏基因组测序中减少样品中真核宿主的DNA污染 文献导读 与16S rRNA测序相比,使用鸟枪法宏基因组测序不仅可以更加深入地了解样本中微生物的分类和功能,也可以避免PCR扩增 ...

  5. 燃石22Q2财报信息及肿瘤NGS测序行业感想

    燃石22Q2财报信息及肿瘤NGS测序行业感想 1.泛司退市 1.1 家底有限 1.2 每季度亏出1个小目标 1.3 退市后的猜想 2.燃司挺住 2.1 燃司的钱还可以烧2年 2.2 业务有突破希望 2 ...

  6. 检测到目标服务器启用了trace方法_综述:目标检测中的多尺度检测方法

    ↑ 点击蓝字 关注极市平台作者丨SFXiang来源丨AI算法修炼营编辑丨极市平台 极市导读 本文从降低下采样率与空洞卷积.多尺度训练.优化Anchor尺寸设计.深层和浅层特征融合等多个方面入手,对目标 ...

  7. 基于Warshall算法的连通图及欧拉图判定方法

    1736年欧拉解决了哥尼斯堡七桥问题.他在这一具体问题的基础上进一步研究,最终找到了一个简便的原则可以鉴别一个图(多重图)能否一笔画成. 本文中,笔者使用布尔矩阵来存储一个无向图,并结合集合论中&qu ...

  8. python从包中导入模块_Python中包,模块导入的方法

    Python中包,模块导入的方法 http://www.cnblogs.com/allenblogs/archive/2011/05/24/2055149.html 1. import modname ...

  9. 二叉搜索树判定方法(c++实现)

    --- 欢迎指正--- 自己想到的方法是:使用 中序遍历数组或者链表,然后比较数组或者链表中的数据是否有序. CC150 提供了更棒的解法. 原文大致描述: //<方法1> //首先我们想 ...

最新文章

  1. numpy中的转置Transpose和.T以及轴对换swapaxis
  2. python web-Python的哪个Web框架学习周期短,学习成本低?
  3. [Office]Word2010(windows版)粘贴不合并格式
  4. C# .NET Web API 如何自訂 ModelBinder
  5. 养成一个SQL好习惯带来一笔大财富
  6. 工作十余年,还是一直被问 委托和事件 有什么区别? 真是够了
  7. python变量声明语句_python – 在条件语句中声明变量有问题吗?
  8. Linux nc命令详解
  9. 必须掌握的Python技巧(三)
  10. springmvc整合fastjson
  11. Matlab中fread函数用法
  12. 【tcp】网络连接中的长连接和短连接是什么意思?
  13. Centos7.5系统部署禅道协调管理系统以及配置优化
  14. Ubuntu使用问题(一):Ubuntu不能正常关机的解决方法
  15. oracle资产负债表重分类吗,资产负债表必须重分类的吗
  16. 二值形态学之击中击不中变换
  17. python文件操作入门
  18. python下划线怎么输入_python中下划线的用法
  19. java一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下 求它在 第10次落地时,共经过多少米?第10次反弹多高?
  20. 李建忠设计模式之总结

热门文章

  1. oracle函数 向右截取,Oracle截取函数
  2. 北京小厂Java实习面经
  3. 计算机网络与python知识点总结
  4. 红旗linux无线网卡驱动,红旗Linux下配置无线网卡(驱动安装/wep sid设置)[图文]
  5. 【20230401】【每日一题】前K个高频元素
  6. python人脸识别百度api_python3调用百度人脸识别api检测颜值demo
  7. HM3115A33MRG低噪声电荷泵升压 DC-DC 转换器升压IC
  8. 自制USB接口供电的手机电池充电器电路
  9. Windows 不能在 本地计算机 启动 SQL Server (MSSQLSERVER)。有关更多信息,查阅系统事件日志。如果这是非 Microsoft 服务,请与服务厂商联系,并参考特定服务错误代
  10. 微信小程序中的加载更多(即列表分页)