GTF/GFF文件的差异及其相互转换

 

 

 

GFF全称为general feature format,这种格式主要是用来注释基因组
GTF全称为gene transfer format,主要是用来对基因进行注释。

 

数据结构

GTF文件以及GFF文件都由9列数据组成,这两种文件的前8列都是相同的(一些小的差别)

123456789
reference sequence name annotation source feature type start coordinate end coordinate score strand frame attributes


GFF

GFF文件是一种用来描述基因组特征的文件,现在我们所使用的大部分都是第三版(GFF3)。GFF允许使用#作为注释符号,例如很多GFF文件都会使用如下的两行来表明其版本其创建日期:

##gff-version 2
##created 11/11/11 

GFF文件每一列所代表的含义前面表格中有,但请注意,它的第3列feature type是不受约束的,你可以使用任意的名称,但也不要太淘气~用一些适当的名称对于后面的分析会有很大的帮助。
我们需要注意的是GFF文件的第9列,从第二版开始(GFF2),所有的属性都以标签=值的方式呈现,各个属性之间以;作为分隔符

ID=geneAExon1;Name=geneA;Parent=geneA;Organism=human

在最新版本的GFF文件中(GFF3),有一些是已经预先定义的属性特征,并且这些特征往往还有特殊的含义:ID这个标签实在各行都要有的;另外有一个Parent的属性,它表明了当前的特征是Parent特征的子集

Contig01  PFAM  gene  501  750  .  +  0  ID=geneA;Name=geneA
Contig01  PFAM  exon  501  650  .  +  2  ID=exonA1;Parent=geneA
Contig01  PFAM  exon  700  750  .  +  2  ID=exonA2;Parent=geneA

GTF

当前所广泛使用的GTF格式为第二版(GTF2),它主要是用来描述基因的注释。GTF格式有两个硬性标准:

  • 根据所使用的软件的不同,feature types是必须注明的。
  • 第9列必须以gene_id以及transcript_id开头
    GTF文件的第9列同GFF文件不同,虽然同样是标签与值配对的情况,但标签与值之间以空格分开,且每个特征之后都要有分号;(包括最后一个特征):
gene_id "geneA";transcript_id "geneA.1";database_id "0012";modified_by "Damian";duplicates 0;


两种文件的差异比较

GTF2GFF3
reference sequence name same same
annotation source same same
feature type feature requirements depend on software can be anything
start coordinate same same
5. end coordinate same same
score not used optional
strand same same
frame same same
attributes 空格分隔 =分隔

两种文件格式之间的转换

偷个懒,直接使用Cufflinks里面的工具gffread

#gff2gtf
gffread my.gff3 -T -o my.gtf
#gtf2gff
gffread merged.gtf -o- > merged.gff3

来源:




GTF/GFF文件的差异及其相互转换

posted on 2020-07-30 10:38  BPSO_mynotes  阅读(1262)  评论(0编辑  收藏  举报

导航