测序数据处理 —— 注释文件
介绍
基因组注释文件主要标注了基因组特征信息,包含基因及转录本在基因组上的位置信息,比如编码区、外显子内含子以及 UTR 等。
我们可以根据这些文件来提取基因组对应的信息,常见的文件格式包括 GFF、GTF 和 BED。
还有一种变异注释文件,用于记录和描述基因组中变异(如单核苷酸多态性(SNP)、插入和缺失(Indel)等)的详细信息及其功能注释。如 VCF 或 GVF 等。
GTF/GFF
GFF (General Feature Format) 文件格式是一种用于描述基因以及 DNA、RNA 和蛋白质特征的文件格式。
GFF 有不同的版本和格式(GFF2、 GFF3 和 GTF),但都使用制表符分隔,每行有 9 个字段。前 7 个字段的结构相同,但第 9 个字段的内容和格式会略有不同。
文件格式

最后一个字段使用键值对的形式表示,记录了基因的各种信息。例如:
##gff-version 3
#description: evidence-based annotation of the human genome (GRCh38), version 46 (Ensembl 112)
#provider: GENCODE
#contact: gencode-help@ebi.ac.uk
#format: gff3
#date: 2024-03-26
##sequence-region chr1 1 248956422
chr1 HAVANA gene 11869 14409 . + . ID=ENSG00000290825.1;gene_id=ENSG00000290825.1;gene_type=lncRNA;gene_name=DDX11L2;level=2;tag=overlaps_pseudogene
chr1 HAVANA transcript 11869 14409 . + . ID=ENST00000456328.2;Parent=ENSG00000290825.1;gene_id=ENSG00000290825.1;transcript_id=ENST00000456328.2;gene_type=lncRNA;gene_name=DDX11L2;transcript_type=lncRNA;transcript_name=DDX11L2-202;level=2;transcript_support_level=1;tag=basic,Ensembl_canonical;havana_transcript=OTTHUMT00000362751.1
chr1 HAVANA exon 11869 12227 . + . ID=exon:ENST00000456328.2:1;Parent=ENST00000456328.2;gene_id=ENSG00000290825.1;transcript_id=ENST00000456328.2;gene_type=lncRNA;gene_name=DDX11L2;transcript_type=lncRNA;transcript_name=DDX11L2-202;exon_number=1;exon_id=ENSE00002234944.1;level=2;transcript_support_level=1;tag=basic,Ensembl_canonical;havana_transcript=OTTHUMT00000362751.1
GTF
GTF(Gene Transfer Format)格式是 GFF2 的扩展,专门用于基因注释。它也有 9 个字段,与 GFF 相似,但在属性字段中对键值对的内容有更严格的要求。
它要求包括 gene_id 和 transcript_id 标识符,这使得对转录本和基因的描述更加明确。例如:
##description: evidence-based annotation of the human genome (GRCh38), version 42 (Ensembl 108)
##provider: GENCODE
##contact: gencode-help@ebi.ac.uk
##format: gtf
##date: 2022-07-20
chr1 HAVANA gene 11869 14409 . + . gene_id "ENSG00000290825.1"; gene_type "lncRNA"; gene_name "DDX11L2"; level 2; tag "overlaps_pseudogene";
chr1 HAVANA transcript 11869 14409 . + . gene_id "ENSG00000290825.1"; transcript_id "ENST00000456328.2"; gene_type "lncRNA"; gene_name "DDX11L2"; transcript_type "lncRNA"; transcript_name "DDX11L2-202"; level 2; transcript_support_level "1"; tag "basic"; tag "Ensembl_canonical"; havana_transcript "OTTHUMT00000362751.1";
chr1 HAVANA exon 11869 12227 . + . gene_id "ENSG00000290825.1"; transcript_id "ENST00000456328.2"; gene_type "lncRNA"; gene_name "DDX11L2"; transcript_type "lncRNA"; transcript_name "DDX11L2-202"; exon_number 1; exon_id "ENSE00002234944.1"; level 2; transcript_support_level "1"; tag "basic"; tag "Ensembl_canonical"; havana_transcript "OTTHUMT00000362751.1";
除了最后一个字段,其他字段基本一样。
BED
BED(Browser Extensible Data)格式是一个较为简单的文件格式,用于描述基因组区域的位置信息。一般来说,标准的 BED 格式至少需要 3 个字段,可添加九个可选字段,共十二列,每一行表示基因组上的一段区间。

例如,我们常见的一般是这种,只关注基因组位置信息
chr1 13043 13104 . 0 .
chr1 13297 13347 . 0 .
chr1 13949 14010 . 0 .
chr1 14913 14964 . 0 .
chr1 16221 16282 . 0 .
chr1 17467 17526 . 0 .
chr1 234290 234344 . 0 .
chr1 235090 235179 . 0 .
chr1 236181 236231 . 0 .
VCF
变异注释文件(Variant Call Format)用于记录和描述基因组变异(如单核苷酸多态性(SNP)、插入和缺失(Indel)等)的详细信息及其功能注释。
VCF 是一种简单的文本文件,用于记录基因组变异的标准格式,广泛用于各种变异数据集。
VCF 文件由两个部分组成:
- 头部信息:以
##开头的行,包含文件格式版本、参考基因组信息和其他元数据。 - 主体部分。以
#开头的行表示列标题,接下来的行表示每个变异的详细信息。
头部信息
头部信息推荐使用的字段包括:fileformat(文件格式)、fileDate(创建日期) 和 reference(参考基因组) 等。
还包含几个用于描述主体部分所用字段的关键字表示的含义及格式,主要有 INFO、FILTER 和 FORMAT。
例如,头部包含如下信息
##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">
其中 contig 指定了变异信息所在的染色体编号;INFO 和 FORMAT 分别指定了不同的关键字,每个关键字代表不同的信息;以及 FILTER 用于设置变异的过滤条件。
主体部分
VCF 的正文位于标题之后,用制表符分隔成 8 个必填列和数量不限的可选列,可用于记录有关样本的变异信息。
当使用附加列时,第一个可选列(FORMAT)用于描述后面各列的数据格式。

INFO
INFO 字段的关键字可以自由定义,只要与头部信息中定义的字段相同即可。如果不清楚 INFO 字段的关键字都代表什么意思,可以在头部查看其定义。
例如,几个常见的字段

FORMAT
类似于 INFO 字段,FORMAT 字段定义了每个样本应该包含哪些信息,也可以从头部对应字段的关键字的定义信息来查看具体含义。

例如,主体部分包含如下信息
#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
这 5 条变异记录都在 20 号染色体上,除了第二条记录值通过了质量分数的过滤,其他记录都通过了所有过滤条件。
INFO 字段中记录了包含变异的样本数,测序深度以及等位频率等;FORMAT 字段中定义了基因型、基因型质量、测序深度以及单倍型质量,值用 : 分隔。
BCF
BCF(Binary Call Format)和 VCF 都是用于存储和交换基因组变异数据的格式。它们之间的主要区别在于文件格式的存储方式和处理效率。
BCF 是二进制格式,相较于 VCF 文本文件,其可以高效地存储和处理变异数据,节省存储空间,适合大规模数据分析。
数据存储格式的主要区别在于,样本数据的存储方式。如下图所示

GVCF
GVCF(Genomic VCF)是一种特殊的 VCF 格式,用于存储基因组变异数据的详细信息。
与传统的 VCF 文件不同,GVCF 不仅记录变异位置的信息,还包括未变异位置的覆盖深度和质量信息。这使得 GVCF 在处理大规模基因组数据时更加高效和全面。
GVCF 通过定义变异和非变异区域的块来压缩信息,减少文件大小。每个块描述了一个连续的非变异区域,内含统一的置信度信息。
GVCF 文件格式在基本结构上与 VCF 相似。例如
##fileformat=VCFv4.2
##FILTER=<ID=PASS,Description="All filters passed">
##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">
##contig=<ID=1,length=249250621>
#CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Sample1
1 10010 . A <*> 50 PASS END=10020;BLOCKAVG_min30p3a GT:GQ:DP 0/0:50:10
1 10021 rs123456 T A 99 PASS . GT:GQ:DP 0/1:99:20
1 10022 . G <*> 50 PASS END=10100;BLOCKAVG_min30p3a GT:GQ:DP 0/0:50:15
其中,<*> 表示这是一个非变异区域的记录,END=10020 表示非变异块的结束位置,BLOCKAVG_min30p3a 可能是一种区块平均质量分数。
在 GVCF 和 VCF 文件中,<NON_REF> 和 <*> 两者都可以见到,它们用于指示非参考碱基的信息,但有不同的具体含义和用途。
<NON_REF>:表示所有可能的非参考碱基的集合,通常用于GVCF文件中。<*>:用于指示无法确定的或者未明确识别的替代碱基
5万+

被折叠的 条评论
为什么被折叠?



