Conpair: 配对样本一致性concordance与污染contamination分析

news/2024/11/13 16:02:49/

Conpair 于2016年被发表在《Bioinformatics》上,用于分析配对样本(如某个病人的肿瘤样本和正常样本)WGS或WES测序的一致性和交叉个体污染。

特点

  • 支持的基因组

因为需要指定markers选项,作者只提供了GRCh37, GRCh38, GRCm38的文件。

  • Python版本

python2与python3均适用,这是作者在0.2版本做出的修改。

  • 消耗时间

整体耗时较短,使用数分钟就可以完成Conpair分析

示例

run_gatk_pileup_for_sample.py

  • 调用GATK的Pileup功能进行分析,不想太麻烦就用GATK3版本。

Tumor

~/miniconda3/envs/py27/bin/python ~/biosoft/Conpair/scripts/run_gatk_pileup_for_sample.py \
--bam WES_FD_T_1.bam \
--outfile WES_FD_T_1_pileup \
--conpair_dir ~/biosoft/Conpair/ \
--reference ~/db/ref/ucsc-human-hg38/hg38.fa \
--markers ~/biosoft/Conpair/data/markers/GRCh38.autosomes.phase3_shapeit2_mvncall_integrated.20130502.SNV.genotype.sselect_v4_MAF_0.4_LD_0.8.liftover.bed \
--gatk ~/miniconda3/envs/rna/share/gatk4-4.5.0.0-0/gatk-package-4.5.0.0-local.jar \
--java ~/miniconda3/envs/rna/bin/java \
--xmx_java 20g > WES_FD_T_1_gatk_pileup.log 2>&1

Normal

~/miniconda3/envs/py27/bin/python ~/biosoft/Conpair/scripts/run_gatk_pileup_for_sample.py \
--bam WES_FD_N_1.bam \
--outfile WES_FD_N_1_pileup \
--conpair_dir ~/biosoft/Conpair/ \
--reference ~/db/ref/ucsc-human-hg38/hg38.fa \
--markers ~/biosoft/Conpair/data/markers/GRCh38.autosomes.phase3_shapeit2_mvncall_integrated.20130502.SNV.genotype.sselect_v4_MAF_0.4_LD_0.8.liftover.bed \
--gatk ~/miniconda3/envs/rna/bin/gatk \
--java "" \
--xmx_java 20g > WES_FD_N_1_gatk_pileup.log 2>&1

verify_concordance.py

  • 作者建议是添加-H,--normal_homozygous_markers_only 选项移除拷贝数变对变异的影响。添加后一致性会增高concordance
~/miniconda3/envs/py27/bin/python ~/biosoft/Conpair/scripts/verify_concordance.py \
-T WES_FD_T_1_pileup \
-N WES_FD_N_1_pileup \
--outfile WES_FD_1_concordance.txt \
--markers ~/biosoft/Conpair/data/markers/GRCh38.autosomes.phase3_shapeit2_mvncall_integrated.20130502.SNV.genotype.sselect_v4_MAF_0.4_LD_0.8.liftover.txt \
--conpair_dir ~/biosoft/Conpair/ \
--min_cov 10 \
--min_mapping_quality 10 \
--min_base_quality 20 > WES_FD_1_verify_concordance.log 2>&1

不加-H选项结果

$ cat WES_FD_1_concordance.txt
Concordance: 71.68%
Based on 6092/7353 markers (coverage per marker threshold : 10 reads)
Minimum mappinq quality: 10
Minimum base quality: 20

-H选项结果

$ cat WES_FD_1_concordance_H.txt
Concordance: 96.33%
Based on 3431/7353 markers (coverage per marker threshold : 10 reads)
Minimum mappinq quality: 10
Minimum base quality: 20

estimate_tumor_normal_contamination.py

  • 肿瘤样本即使污染水平在0.5%也会对体细胞突变calling产生严重影响,从而导致特异性降低。
~/miniconda3/envs/py27/bin/python ~/biosoft/Conpair/scripts/estimate_tumor_normal_contamination.py \
-T WES_FD_T_1_pileup \
-N WES_FD_N_1_pileup \
--outfile WES_FD_1_contamination.txt \
--markers ~/biosoft/Conpair/data/markers/GRCh38.autosomes.phase3_shapeit2_mvncall_integrated.20130502.SNV.genotype.sselect_v4_MAF_0.4_LD_0.8.liftover.txt \
--grid 0.01 \
--min_mapping_quality 10 > WES_FD_1_verify_contamination.log 2>&1

结果

$ cat WES_FD_1_contamination.txt
Normal sample contamination level: 0.291%
Tumor sample contamination level: 0.351%

http://www.ppmy.cn/news/1546716.html

相关文章

Science Robotics 综述揭示演化研究新范式,从机器人复活远古生物!

在地球46亿年的漫长历史长河中,生命的演化过程充满着未解之谜。如何从零散的化石证据中还原古生物的真实面貌?如何理解关键演化节点的具体过程?10月23日,Science Robotics发表重磅综述,首次系统性提出"古生物启发…

【分布式】CAP理论

CAP定理的核心要点: CAP定理指出,任何一个分布式系统在面对网络分区(Partition)的情况下,最多只能同时满足以下三个特性中的两个: 一致性(Consistency): 所有节点在同一…

算法求解(C#)-- 寻找包含目标字符串的最短子串算法

1. 引言 在字符串处理中,我们经常需要从一个较长的字符串中找到包含特定目标字符串的最短子串。这个问题在文本搜索、基因序列分析等领域有着广泛的应用。本文将介绍一种高效的算法来解决这个问题。 2. 问题描述 给定一个源字符串 source 和一个目标字符串 targe…

新日撸java三百行` 新手小白java学习记录 `Day1

新日撸java三百行新手小白java学习记录 Day1 模拟多线程回调机制 文章目录 新日撸java三百行 新手小白java学习记录 前言一 、模拟异步机制提出问题解决方案 前言 古人称长江为江,黄河为河。长江水清,黄河水浊,长江在流,黄河也在…

cesium 3DTiles之pnts格式详解

Point Cloud 1 概述 点云(Point Cloud)瓦片格式用于高效流式传输大规模点云数据,常用于 3D 可视化中。每个点由位置(Position)和可选的属性定义,这些属性用来描述点的外观(如颜色、法线等&…

Spring Cloud微服务超详细讲解

Spring Cloud 是一个基于 Spring Boot 的微服务框架,它提供了一系列工具和服务来帮助开发者构建和管理微服务架构。以下是一个超级详细的讲解,涵盖了 Spring Cloud 的核心概念、组件以及如何构建一个简单的微服务应用。 1. 微服务架构概述 什么是微服务…

【开源免费】基于SpringBoot+Vue.JS医疗病历交互系统(JAVA毕业设计)

博主说明:本文项目编号 T 072 ,文末自助获取源码 \color{red}{T072,文末自助获取源码} T072,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析…

Java从入门到精通笔记篇(十二)

枚举类型与泛型 枚举类型可以取代以往常量的定义方式,即将常量封装在类或接口中 使用枚举类型设置常量 关键字为enum 枚举类型的常用方法 values()方法 枚举类型实例包含一个values()方法,该方法将枚举中所有的枚举值以数组的形式返回。 valueOf()可…