vcf格式简介
1)背景
伴随着大规模的基因分型及测序工程的产生(例如1000 Genomes Project),之前的信息贮存格式例如gff文件它记录了每一个基因的详细信息,其中许多基因信息在基因组之间是共享的,而我们需要记录的仅仅是不同基因组之间变异的地方,因此这些格式会显得格外冗余。这就迫切需要一种新的格式来记录高效的记录这些变异信息。VCF(Variant Call Format)就是这样一种用来贮存基因序列变异信息的文本文件(通常是压缩格式)。
2)VCF格式简介
VCF 格式文件包含有2部分:1) header section,元信息(meta-information),以‘##’为前缀,通常包含fileformat、fileDate、reference等信息,头行信息( header line ),以‘#’为前缀;2) data section,该部分为主题部分,记录了每个样品每个位点处的基因分型信息。
主题部分每列的含义:
1)CHROM - chromosome:参考基因组标识。
2)POS - position:变异位点相对于参考基因组所在的位置(1-based)。在每个染色体内,按照数字位置升序排列。
3)ID - identifier: 如果是dbSNP variant则需要给出相应的rs 号,若不是,则默认使用‘.’
4)REF - reference base(s): 参考序列碱基,必须是 A,C,G,T,N其中的一种。
5) ALT - alternate base(s): 表示variant的Allele,若有多个,则使用逗号分隔,(变异所支持的碱基类型及碱基数量)这里的碱基类型和碱基数量,对于SNP来说是单个碱基类型的编号,而对于Indel来说是指碱基个数的添加或缺失,以及碱基类型的变化
6)QUAL - quality:表示 Phred质量值,用来表示 ALT的可靠性
7)FILTER - filter status:表示是否通过过滤。PASS表示该位点通过过滤,否则表示没有通过。例如,q10表示质量值低于10
8)INFO - additional information:表示的是变异描述信息。包括18种,都是以<key>=[,data]格式,并使用分号分隔的形式,其中很多的注释信息在VCF文件的头部注释中给出。
AA :ancestral allele AC :allele count in genotypes, for each ALT allele, in the same order as listed AF :allele frequency for each ALT allele in the same order as listed: use this when estimated from primary data, not called genotypes AN :total number of alleles in called genotypes BQ :RMS base quality at this position CIGAR :cigar string describing how to align an alternate allele to the reference alleleDB :dbSNP membership DP :combined depth across samples, e.g. DP=154 END :end position of the variant described in this record H2 :membership in hapmap2 H3 :membership in hapmap3 MQ :RMS mapping quality, e.g. MQ=52 MQ0 :Number of MAPQ == 0 reads covering this record NS :Number of samples with data SB :strand bias at this position SOMATIC :indicates that the record is a somatic mutation, for cancer genomics VALIDATED :validated by follow-up experiment 1000G :membership in 1000 Genomes
9)FORMAT:可选的扩展,例如GT:AD:DP:GQ:PL。该部分是主体部分,表示基因型信息的多个标签,这些标签之间以冒号分割,其对应的值位于第10列,同样以冒号分割,表示第一个样品的基因型结果
10)SAMPLES:表示样本信息,各个Sample的值,由BAM文件中的@RG下的SM标签所决定,这些值对应着第9列的各个格式,不同格式的值用冒号分开,每一个sample对应着1列;多个samples则对应着多列,这种情况下列的数多余10列。
3)vcftools的下载与简单应用
vcftools 则是一款非常优秀的工具来处理vcf 文件,可以用来对vcf文件进行解析、分析、操作。vcftools大致可以被分为两个模块:1)Perl API,该模块主要是可以对vcf文件进行多种操作,包括合并,比较,取交并集,及简单的统计 2)第二个模块包含C++可执行程序,用来分析vcf文件中的SNP数据,可以用来估计等位基因频率,连锁不平衡,质量控制等分析。
1)下载https://github.com/vcftools/vcftools2)tar zxvf vcftools-vcftools-v0.1.16-0-g93ec375.tar.gz3)./configure --help4)./configure5)make6)make install
下面会给出三个简单的例子:
1)比较两个文件共享变异位点
vcftools --vcf input_data.vcf --diff other_data.vcf --out compare
2)计算等位基因频率
vcftools --vcf cohort.intersect.vcf --freq --out output
3)统计测序深度
vcftools --vcf input_data.vcf --depth -c >output
4)参考资源
The Variant Call Format Specification,VCFv4.3 and BCFv2.2
The variant call format and VCFtools
https://en.wikipedia.org/wiki/Variant_Call_Format
http://www.cnblogs.com/emanlee/p/4562064.html
https://gatkforums.broadinstitute.org/gatk/discussion/1268/how-should-i-interpret-vcf-files-produced-by-the-gatk
vcf格式简介的更多相关文章
- vcf格式
Variant Call Format(VCF)是一个用于存储基因序列突变信息的文本格式.表示单碱基突变, 插入/缺失, 拷贝数变异和结构变异等.BCF格式文件是VCF格式的二进制文件. CHROM ...
- Android Contact 导入导出 vcf格式(不依赖第三方库)
Android sdk 支持vcf处理的(忘记最低哪个版本开始支持的了,可以查一查) 备注:此代码来自Stack Overflow(原地址找不到了,o(╥﹏╥)o) 1. 导出联系人为vcf格式 Co ...
- JSON数据表示格式简介(JavaScript对象表示法)
[1] JSON简介 > JSON全称 JavaScript Object Notation > 类似于JS中对象的创建的方法 > JSON和XML一样,都是一种表 ...
- vcf格式文件转化为Excel(csv)格式文件(R语言的write.csv,write.table功能,Excel表的文件导入功能)
最近在整理文件,准备把vcf文件转化为Excel格式,或者CSV格式,网上搜了一堆资料,还真有人专门开发出转化格式的工具:叫vcf2csv(下载地址http://vcf2csv.sourceforge ...
- 33、VCF格式
转载:http://blog.sina.com.cn/s/blog_7110867f0101njf5.html http://www.cnblogs.com/liuhui0622/p/6246111. ...
- IFC格式简介
IFC是一个数据交换标准, 用于不同系统交换和共享数据.当需要多个软件协同完成任务时, 不同系统之间就会出现数据交换和共享的需求.这时, 工程人员都希望能将工作成果(这里就是工程数据), 从一个软件完 ...
- JSON格式简介
一.JSON:JavaScript Object Notation的简写,是一种轻量级数据交换格式. 二.数据类型:标量.序列(数组).映射(key-value) 三.JSON的四个原则 1 .并列数 ...
- RIFF格式简介
Resource Interchange File Format(简称RIFF),资源交换文件格式,是一种按照标记区块存储数据(tagged chunks)的通用文件存储格式,多用于存储音频.视频等多 ...
- LibSVM格式简介
对于训练或预测,XGBoost采用如下格式的实例文件: train.txt 1 101:1.2 102:0.03 0 1:2.1 10001:300 10002:400 0 0:1.3 1:0.3 1 ...
随机推荐
- PHP 图片打水印
<?php /*----------------------------------------------------------------------------------- *函数名称 ...
- NoSQL非结构化数据库高级培训课程-大纲
一.课程概述 本课程面向No-SQL开发人员.系统分析和系统架构师,目的在于帮助他们建立起完整的No-SQL数据库的概念,应用场景.相关开源技术框架和优缺点. 二.课程大纲 主题 时间 主题 No-S ...
- springMVC学习(3)-springMVC和mybatis整合
一.需求:使用springmvc和mybatis完成商品列表查询. 二.整合思路:springMVC+mybaits的系统架构: 1步):整合dao层 mybatis和spring整合,通过sprin ...
- 杂项:Mantis
ylbtech-杂项:Mantis 缺陷管理平台Mantis,也做MantisBT,全称Mantis Bug Tracker.Mantis是一个基于PHP技术的轻量级的开源缺陷跟踪系统,以Web操作的 ...
- zabbix企业应用:通过SNMP和iDRAC监控DELL服务器硬件
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://qicheng0211.blog.51cto.com/3958621/174998 ...
- 小项目,吃货联盟,java初级小项目,源代码
1:项目的实现效果.功能如图所示. 2:项目的源代码如下: import java.util.Scanner; /** * 吃货联盟订餐管理系统 * */ public class OrderingM ...
- storm的定时任务
应用场景: 第一种方法 参考代码StormTopologyTimer1.java package yehua.storm; import java.util.Map; import org.apach ...
- fs和http模块
fs模块写入文件的方式 导入内置模块 const fs=require("fs") 一.异步写入方式 fs.writeFile("写入文件的路径&qu ...
- 初试mysql5.7.2新特性:多源复制(MySQL 5.7 multi-source replication)
多源复制和多主复制的区别: 多主复制示意图: 多源复制示意图: 在my.cnf中添加crash safe特性参数:master_info_repository=TABLE;relay_log_info ...
- uva-10167-枚举
题意:生日蛋糕上面有2N草莓,怎么切能够将蛋糕和草莓平分成俩份,直接枚举,A和B,草莓不能落在直线上 #include <iostream> #include <stdio.h> ...