热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

NGSCheckMate:数据配对正确性检查好工具

NGSCheckMate:数据配对检查好工具求知若渴没有BUG背景生信小灶肿瘤NGS或者其它类似数据分析工作,大的前提就是样本使用的正确性&#x

NGSCheckMate:数据配对检查好工具

求知若渴 没有BUG

背景

生信小灶

肿瘤NGS或者其它类似数据分析工作,大的前提就是样本使用的正确性,然而很多意外的情况都会导致样本的错误使用,对它们进行质控显得尤其重要。

原理

软件处理fasq、bam、vcf等格式,获得VAF的信息,通过计算VAF的相关性,来判断样本是否来自同一个样本。

图片

如何实现fastq的VAF统计?

vcf文件中直接存在有VAF的信息,对于bam,可以转化成mpileup格式获得VAF信息,而对于未经比对的fastq,获得VAF是一件比较困难的事情,作者的处理非常巧妙:软件预构建了一个参考SNP的21-kmer的哈希表,通过reads提取的21-mer与哈希表匹配计算count,获得VAF的参考信息。

图片

图片

01

安装

安装NGScheckMate

软件非常容易安装,只需要拷贝源码即可。但是相关的环境与依赖需要进行配置一下。

安装

#下载源码
git clone https://github.com/parklab/NGSCheckMate.git
#配置环境变量
export NCM_HOME=/NGSCheckMate

配置

#在NGSCheckMate的软件目录,编辑ncm.conf的文件
#分别指定三个文件的绝对路径
#REF,参考序列的绝对路径,与生成bam指定为同一个;
#SAMTOOLS,samtools程序的绝对路径;
#BCFTOOLS,bcftools程序的绝对路径。
REF=
SAMTOOLS=
BCFTOOLS=

图片

02

fastq模式

输入文件

#文件为三列,read1,read2,样本名
#不需要表头,此段注释也不要出现在文件中
/path/NC_1.fq.gz /path/NC_2.fq.gz NC
/path/T_1.fq.gz /path/T_2.fq.gz T

运行命令

#使用python2来运行
python2 /PathOfNGScheckmate/ncm_fastq.py -pt /path/SNP.pt -l /path/NGS.input.list -O ./check_result

图片

03

vcf格式

输入文件

#每行是一个文件
/data1/public/GATK/03_1.NGScheckMate/NC.vcf
/data1/public/GATK/03_1.NGScheckMate/T.vcf

运行命令

python2 /PathOfNGScheckmate/ncm.py -V -l /path/vcf.input.list -bed /path/SNP_GRCh37_hg19_woChr.bed -O ./vcfout

Tips

1)BAM模式和VCF模式非常类似,只需要将-V参数换为-B参数,输入文件由vcf的list变为bam的list即可。

2)BAM模式最终仍是对各个样本进行变异检测,所以自己检测vcf然后使用软件检查也是一样的,而且可能更加灵活。

结果说明

最终的结果在输出目录中,*_all.txt,这个文件即是。文件一共五列:

样本1;
是否匹配的结论;
样本2;
相关性系数;
深度。

除此之外还有一些图表,一般情况没有什么大的价值。

图片

04

软件评价

优缺点

软件比较好装,也容易配置和使用,结果易于解读。但是它只能检测出两个样本是否匹配,但是样本之间是否有相互的污染,则不能够进行质控,对于肿瘤的检测,这个方面的信息仍是需要留意的。

我是国产TESLA,专注于肿瘤及肿瘤新生抗原的生物信息工程师,这里记得着我的一些原创探索和心得,愿能给参与到这个领域的人一些参考。

图片

图片

图片

提醒

“话题”在文章标题下方哦~


推荐阅读
  • 技术分享:使用 Flask、AngularJS 和 Jinja2 构建高效前后端交互系统
    技术分享:使用 Flask、AngularJS 和 Jinja2 构建高效前后端交互系统 ... [详细]
  • 本文介绍了如何使用 Node.js 和 Express(4.x 及以上版本)构建高效的文件上传功能。通过引入 `multer` 中间件,可以轻松实现文件上传。首先,需要通过 `npm install multer` 安装该中间件。接着,在 Express 应用中配置 `multer`,以处理多部分表单数据。本文详细讲解了 `multer` 的基本用法和高级配置,帮助开发者快速搭建稳定可靠的文件上传服务。 ... [详细]
  • Git命令基础应用指南
    本指南详细介绍了Git命令的基础应用,包括如何使用`git clone`从远程服务器克隆仓库(例如:`git clone [url/path/repository]`)以及如何克隆本地仓库(例如:`git clone [local/path/repository]`)。此外,还提供了常见的Git操作技巧,帮助开发者高效管理代码版本。 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • 在List和Set集合中存储Object类型的数据元素 ... [详细]
  • Python 程序转换为 EXE 文件:详细解析 .py 脚本打包成独立可执行文件的方法与技巧
    在开发了几个简单的爬虫 Python 程序后,我决定将其封装成独立的可执行文件以便于分发和使用。为了实现这一目标,首先需要解决的是如何将 Python 脚本转换为 EXE 文件。在这个过程中,我选择了 Qt 作为 GUI 框架,因为之前对此并不熟悉,希望通过这个项目进一步学习和掌握 Qt 的基本用法。本文将详细介绍从 .py 脚本到 EXE 文件的整个过程,包括所需工具、具体步骤以及常见问题的解决方案。 ... [详细]
  • 体积小巧的vsftpd与pureftpd Docker镜像在Unraid系统中的详细配置指南:支持TLS加密及IPv6协议
    本文详细介绍了如何在Unraid系统中配置体积小巧的vsftpd和Pure-FTPd Docker镜像,以支持TLS加密和IPv6协议。通过这些配置,用户可以实现安全、高效的文件传输服务,适用于各种网络环境。配置过程包括镜像的选择、环境变量的设置以及必要的安全措施,确保了系统的稳定性和数据的安全性。 ... [详细]
  • PHP预处理常量详解:如何定义与使用常量 ... [详细]
  • PTArchiver工作原理详解与应用分析
    PTArchiver工作原理及其应用分析本文详细解析了PTArchiver的工作机制,探讨了其在数据归档和管理中的应用。PTArchiver通过高效的压缩算法和灵活的存储策略,实现了对大规模数据的高效管理和长期保存。文章还介绍了其在企业级数据备份、历史数据迁移等场景中的实际应用案例,为用户提供了实用的操作建议和技术支持。 ... [详细]
  • 如何将TS文件转换为M3U8直播流:HLS与M3U8格式详解
    在视频传输领域,MP4虽然常见,但在直播场景中直接使用MP4格式存在诸多问题。例如,MP4文件的头部信息(如ftyp、moov)较大,导致初始加载时间较长,影响用户体验。相比之下,HLS(HTTP Live Streaming)协议及其M3U8格式更具优势。HLS通过将视频切分成多个小片段,并生成一个M3U8播放列表文件,实现低延迟和高稳定性。本文详细介绍了如何将TS文件转换为M3U8直播流,包括技术原理和具体操作步骤,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 在Linux系统中,网络配置是至关重要的任务之一。本文详细解析了Firewalld和Netfilter机制,并探讨了iptables的应用。通过使用`ip addr show`命令来查看网卡IP地址(需要安装`iproute`包),当网卡未分配IP地址或处于关闭状态时,可以通过`ip link set`命令进行配置和激活。此外,文章还介绍了如何利用Firewalld和iptables实现网络流量控制和安全策略管理,为系统管理员提供了实用的操作指南。 ... [详细]
  • 基于Linux系统的Kickstart自动化服务器部署方案
    本文针对企业需求,提出了一种基于Linux系统的Kickstart自动化服务器部署方案。该方案旨在通过无盘批量安装操作系统,提高企业IT基础设施的部署效率。Kickstart是一种利用Anaconda工具实现服务器自动化安装的技术,能够显著简化和加速操作系统的安装过程。通过详细的实施规划,本文介绍了Kickstart的工作原理及其在实际部署中的应用,为企业提供了高效的自动化部署解决方案。 ... [详细]
  • Git核心命令全解析:掌握日常开发必备技能
    本文深入解析了 Git 的核心命令,帮助开发者掌握日常开发中的必备技能。从 `git init` 命令开始,介绍了如何将当前目录转变为 Git 可管理的仓库。接着详细讲解了 `git add` 命令的使用方法,包括如何将文件(如 `readme.txt`)添加到暂存区,以便在后续提交时进行版本控制。此外,还探讨了其他关键命令,如 `git commit` 和 `git push`,以确保代码变更能够安全地保存和同步到远程仓库。通过这些命令的综合应用,开发者可以更加高效地管理和协作项目。 ... [详细]
  • 在Ubuntu系统中安装Android SDK的详细步骤及解决“Failed to fetch URL https://dlssl.google.com/”错误的方法
    在Ubuntu 11.10 x64系统中安装Android SDK的详细步骤,包括配置环境变量和解决“Failed to fetch URL https://dlssl.google.com/”错误的方法。本文详细介绍了如何在该系统上顺利安装并配置Android SDK,确保开发环境的稳定性和高效性。此外,还提供了解决网络连接问题的实用技巧,帮助用户克服常见的安装障碍。 ... [详细]
author-avatar
一个字-刘斌
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有