不同的结构变异(structural variation,SV)鉴定工具鉴定出的VCF结果文件格式不尽相同,但也不是完全没有规律可循,主要的格式就有两种,分别是:
- BND notation:BND表示法,即在INFO列以
SVTYPE=BND
标出 - Symbolic notation:符号表示法,即在ALT列标出具体的SV类型(如<TRA>, <DEL>, <INV>, <DUP>),并在INFO列标出位置信息(如CHR2=1;END=800;CT='3to5')
简单变异的VCF
提到VCF格式,就不得不提一下用以表示SNP和短的indels (insertions/deletions)的标准VCF格式,格式如下:
##fileformat=VCFv4.3
##fileDate=20090805
##source=myImputationProgramV3.1
##reference=file:///seq/references/1000GenomesPilot-NCBI36.fasta
##contig=<ID=20,length=62435964,assembly=B36,md5=f126cdf8a6e0c7f379d618ff66beb2da,species="Homo sapiens",taxonomy=x>
##phasing=partial
##INFO=<ID=NS,Number=1,Type=Integer,Description="Number of Samples With Data">
##INFO=<ID=DP,Number=1,Type=Integer,Description="Total Depth">
##INFO=<ID=AF,Number=A,Type=Float,Description="Allele Frequency">
##INFO=<ID=AA,Number=1,Type=String,Description="Ancestral Allele">
##INFO=<ID=DB,Number=0,Type=Flag,Description="dbSNP membership, build 129">
##INFO=<ID=H2,Number=0,Type=Flag,Description="HapMap2 membership">
##FILTER=<ID=q10,Description="Quality below 10">
##FILTER=<ID=s50,Description="Less than 50% of samples have data">
##FORMAT=<ID=GT,Number=1,Type=String,Description="Genotype">
##FORMAT=<ID=GQ,Number=1,Type=Integer,Description="Genotype Quality">
##FORMAT=<ID=DP,Number=1,Type=Integer,Description="Read Depth">
##FORMAT=<ID=HQ,Number=2,Type=Integer,Description="Haplotype Quality">
#CHROM POS ID REF ALT QUAL FILTER INFO FORMAT NA00001 NA00002 NA00003
20 14370 rs6054257 G A 29 PASS NS=3;DP=14;AF=0.5;DB;H2 GT:GQ:DP:HQ 0|0:48:1:51,51 1|0:48:8:51,51 1/1:43:5:.,.
20 17330 . T A 3 q10 NS=3;DP=11;AF=0.017 GT:GQ:DP:HQ 0|0:49:3:58,50 0|1:3:5:65,3 0/0:41:3
20 1110696 rs6040355 A G,T 67 PASS NS=2;DP=10;AF=0.333,0.667;AA=T;DB GT:GQ:DP:HQ 1|2:21:6:23,27 2|1:2:0:18,2 2/2:35:4
20 1230237 . T . 47 PASS NS=3;DP=13;AA=T GT:GQ:DP:HQ 0|0:54:7:56,60 0|0:48:4:51,51 0/0:61:2
20 1234567 microsat1 GTC G,GTCT 50 PASS NS=3;DP=9;AA=G GT:GQ:DP 0/1:35:4 0/2:17:2 1/1:40:3
以 ## 开头的是header部分,主要描述了VCF文件的版本(fileformat),创建时间(fileDate),参考序列(reference)及其他重要的字段信息(尤其是FILTER,INFO和FORMAT列)。像这种VCF格式是比较规范的,在合并多个工具或多个样本的结果时不会出现太大问题。
由于SV比SNP和短的indels复杂很多,一些鉴定SV的工具的结果就比较复杂了,因此像 SURVIVOR 和 mergesv 等在合并多个样本或工具的结果时就会进行统一VCF格式的转换,即将符号表示法转换为BND表示法。
断点方式(SVTYPE=BND)
在描述SV的VCF规范中,其中之一就是详细的描述SV的断点,并在INFO列标明SVTYPE=BND,这时,SV的具体发生情况就有四种类型:
如上图所示,VCF的BND表示法遵守以下的规则:
- 首先列出染色体和第一个断点的位置,第二个断点的染色体和位置在ALT列标出(如上图的1:800)
- 第二个断点的方向由
[
的方向决定,[1:800[
表示从给定位置向右延伸,]1:800]
表示从左边开始延伸并在指定位置结束 - REF 列
N
相对于[1:800[
和]1:800]
的位置即为第一个断点1:500相对于第二个断点的位置 -
N
可能是某一个特定序列,这取决于REF列
符号表示法的易位(<TRA>)
VCF中描述SV的另一种方式是“符号表示法”。在VCF的ALT列中相应的标签,如<INV>表示倒位,<DUP>表示重复。
由于易位相对复杂,因此这里的<TRA>表示的也比较模糊,仅有标签是不够的。所以就有了在INFO列增加相应的标签(CHR2表示第二个断点的染色体,END表示具体位置)表示第二个断点的位置和方向。最后还需要的一个信息就是两个断点间的相邻关系,这里用CT表示。
所以,两种表示方法间的对应关系就有了:
BND | <TRA> with CT INFO field |
---|---|
1 500 . N N[1:800[ | 1 500 . N <TRA> ... CHR2=1;END=800;CT='3to5' |
1 500 . N ]1:800]N | 1 500 . N <TRA> ... CHR2=1;END=800;CT='5to3' |
1 500 . N [1:800[N | 1 500 . N <TRA> ... CHR2=1;END=800;CT='5to5' |
1 500 . N N]1:800] | 1 500 . N <TRA> ... CHR2=1;END=800;CT='3to3' |
其他类型的符号标签(<DEL>, <INV>, <DUP>)
下图展示了删除,倒位和重复的几种情况:
由此可见,删除和重复只有一种相邻关系,而易位则会存在两种情况,两种表示法的对应关系如下:
Symbolic Call | As BND call(s) |
---|---|
1 10 . N <DEL> ... END=20; | 1 10 . N N[1:21[ |
1 10 . N <INV> ... END=20; | 1 10 . N N]1:20] |
1 11 . N [1:21[N | |
1 1 . N <DUP> ... END=10; | 1 1 . N ]1:10]N |
在合并多个样本或工具生成的SV VCF时,mergevcf 和 SURVIVOR 均会将符号表示法转为BND表示法,因此,很有必要搞清楚它们之间的对应关系。