搜索
查看: 5753|回复: 0

gffcompare和gffread

[复制链接]

29

主题

131

帖子

1208

积分

金牌会员

Rank: 6Rank: 6

积分
1208
发表于 2017-10-22 21:47:56 | 显示全部楼层 |阅读模式
本帖最后由 anlan 于 2017-10-22 21:52 编辑

gffcompare和gffread可以认为是专门开发出来用于处理gff格式文件的小工具。现在gff格式一般是用第三版gff3,以小鼠genecode上下载的gff文件为例,如下所示:
[AppleScript] 纯文本查看 复制代码
chr1    HAVANA  gene    3073253 3074322 .   +   .   ID=ENSMUSG00000102693.1;gene_id=ENSMUSG00000102693.1;gene_type=TEC;gene_name=4933401J01Rik;level=2;havana_gene=OTTMUSG00000049935.1
chr1    HAVANA  transcript  3073253 3074322 .   +   .   ID=ENSMUST00000193812.1;Parent=ENSMUSG00000102693.1;gene_id=ENSMUSG00000102693.1;transcript_id=ENSMUST00000193812.1;gene_type=TEC;gene_name=4933401J01Rik;transcript_type=TEC;transcript_name=4933401J01Rik-001;level=2;transcript_support_level=NA;tag=basic;havana_gene=OTTMUSG00000049935.1;havana_transcript=OTTMUST00000127109.1
chr1    HAVANA  exon    3073253 3074322 .   +   .   ID=exon:ENSMUST00000193812.1:1;Parent=ENSMUST00000193812.1;gene_id=ENSMUSG00000102693.1;transcript_id=ENSMUST00000193812.1;gene_type=TEC;gene_name=4933401J01Rik;transcript_type=TEC;transcript_name=4933401J01Rik-001;exon_number=1;exon_id=ENSMUSE00001343744.1;level=2;transcript_support_level=NA;tag=basic;havana_gene=OTTMUSG00000049935.1;havana_transcript=OTTMUST00000127109.1
而gtf格式一般来说跟gtf很相似,也是以小鼠genecode上下载的gtf文件为例,如下所示:
[AppleScript] 纯文本查看 复制代码
chr1    HAVANA  gene    3073253 3074322 .   +   .   gene_id "ENSMUSG00000102693.1"; gene_type "TEC"; gene_name "4933401J01Rik"; level 2; havana_gene "OTTMUSG00000049935.1";
chr1    HAVANA  transcript  3073253 3074322 .   +   .   gene_id "ENSMUSG00000102693.1"; transcript_id "ENSMUST00000193812.1"; gene_type "TEC"; gene_name "4933401J01Rik"; transcript_type "TEC"; transcript_name "4933401J01Rik-001"; level 2; transcript_support_level "NA"; tag "basic"; havana_gene "OTTMUSG00000049935.1"; havana_transcript "OTTMUST00000127109.1";
chr1    HAVANA  exon    3073253 3074322 .   +   .   gene_id "ENSMUSG00000102693.1"; transcript_id "ENSMUST00000193812.1"; gene_type "TEC"; gene_name "4933401J01Rik"; transcript_type "TEC"; transcript_name "4933401J01Rik-001"; exon_number 1; exon_id "ENSMUSE00001343744.1"; level 2; transcript_support_level "NA"; tag "basic"; havana_gene "OTTMUSG00000049935.1"; havana_transcript "OTTMUST00000127109.1";
从上可以看出,就小鼠而言,gff和gtf文件只有在最后一列,也就是attribures列有略微区别;前者名称和值是以等号隔开,后者则是以空格隔开
因此gffcompare和gff不仅可以用来处理gff格式文件,还可以处理gtf格式文件
这两个工具都是约翰·霍普金斯大学开发的,也是hisat2和stringtie的开发者,下载地址如下:
http://ccb.jhu.edu/software/stringtie/gff.shtml,这个网页不仅有下载地址,还有软件的简单介绍。注:下载有二进制版本的,可以不用编译直接使用,方便。
还有这个网址也对其所定义的gtf格式以及gff格式做了解释,可以整体上了解gtf和gff的区别
gffcompare
按照官网的说法,gffcompare可以用来compare, merge, annotate and estimate accuracy of one or more GFF files,并且这个软件是基于cuffcompare开发的,所以gffcompare很多输入和输出文件都与cuffcompare相同
参数通过gffcompare -h命令查看即可
以stringTie组装并merge后的结果文件(merged.gtf)为例,参考基因组注释文件为gencode.vM13.annotation.gtf,compare下两者的结果并进行注释
[AppleScript] 纯文本查看 复制代码
gffcompare -R -r gencode.vM13.annotation.gtf -o merged.gtf
输出文件几乎跟cuffcompare一样,除了结果中的.combined.gtf变为.annotated.gtf,但是文件里的格式几乎是一样的,除了有一点,.annotated.gtf文件会保留original transcript IDs,但是.combined.gtf是没有这一点的
对于文件每列的具体含义可以看cuffcompare官网
gffread
gffread这工具,官网的定义为used to generate a FASTA file with the DNA sequences for all transcripts in a GFF file,在知道这工具前,我做这个操作是自己写的perl脚本,但是从运行效率上来说,还是这工具快。。。
比如一个很常见的需求,对于stringtie组装后的gtf文件,想将组装后的转录本的序列从对应的参考基因组上提取出来,这时就可以用gffread这工具了,还是上述的小鼠为例:
[AppleScript] 纯文本查看 复制代码
gffread -w transcripts.fa -g mm10.fa stringtie_merged.gtf
查看各参数的含义gffread -h
之前使用的时候只用了这个功能,但是最近在公众号(生信菜鸟团的一篇软文:NGS数据格式之gff/gtf)看到gffread可以将gtf和gff格式之间进行相互转化,所以试了下
如:gtf转化为gff
[AppleScript] 纯文本查看 复制代码
gffread gencode.vM13.annotation.gtf -o tmp.gff3
输出文件如下:
[AppleScript] 纯文本查看 复制代码
chr1    HAVANA  transcript  3073253 3074322 .   +   .   ID=ENSMUST00000193812.1;geneID=ENSMUSG00000102693.1;gene_name=4933401J01Rik
chr1    HAVANA  exon    3073253 3074322 .   +   .   Parent=ENSMUST00000193812.1
从结果上可以看出,gffread输出的是其定义后的gff3格式的文件,与输入的相比没有了feature为gene的行,attribures列也变得较为省略
如:gff转化为gtf
[AppleScript] 纯文本查看 复制代码
gffread gencode.vM13.annotation.gff3 -T -o tmp.gtf
输入文件如下:
[AppleScript] 纯文本查看 复制代码
chr1    HAVANA  exon    3073253 3074322 .   +   .   transcript_id "ENSMUST00000193812.1"; gene_id "ENSMUSG00000102693.1"; gene_name "4933401J01Rik";
从结果上来看,gffread定义的gtf文件变得更为省略了,并且还有做了些限制,当然这些在官网GFF utilities中有说明
综上所述,gffcompare和gffread用处还有可以的,值得留意下
[size=0em]​




上一篇:青山屋主的转录组入门7-用DESeq2进行差异表达分析
下一篇:OncoArray基因分型平台-最大规模的乳腺癌风险相关的新基因...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|生信技能树 ( 粤ICP备15016384号  

GMT+8, 2019-8-19 14:39 , Processed in 0.029641 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.