1)gff3及gtf2简介

一个物种的基因组测序完成后,需要对这些数据进行解读,首先要先找到这些序列中转录起始位点、基因、外显子、内含子等组成元件在染色体中的位置信息(即注释)后才能再进行深入的分析。gff/gtf是贮存这些注释信息的两种文件格式。

GFF(general feature format):这种格式主要是用来注释基因组。 现大部分利用的是第三版,即gff3。

GTF(gene transfer format):主要是用来对基因进行注释。当前所广泛使用的gtf格式为第二版,即gtf2 。

1.1)GFF3

GFF3允许使用#作为注释符号 ,除去注释外,主体部分共有9列。 GFF3中每一列的含义:seqid source type start end score strand strand attributes

1) seqid :序列的id。(The name of the sequence where the feature is located.)
2)source:注释的来源,一般指明产生此gff3文件的软件或方法(e.g. Augustus or RepeatMasker)。如果未知,则用点(.)代替。
3)type: 类型,此处不受约束,但为下游分析方便,建议使用gene,repeat_region,exon,CDS,或SO对应编号等。
4)start:起始位置,从1开始计数(区别于bed文件从0开始计数)。
5)end:终止位置。
6)score:得分,注释信息可能性说明,可以是序列相似性比对时的E-values值或者基因预测是的P-values值。”.”表示为空。(indicates the confidence of the source on the annotated feature)
7)strand:“+”表示正链,“-”表示负链,“.”表示不需要指定正负链,“?” 表示未知.
8)phase :步进。仅对编码蛋白质的CDS有效,本列指定下一个密码子开始的位置。可以是0、1或2,表示到达下一个密码子需要跳过碱基个数。
9)attributes:属性。一个包含众多属性的列表,格式为“标签=值”(tag=value),不同属性之间以分号相隔。
1.2)GTF2

gtf文件也是由9列组成,其中每一列含义:seqname source feature start end score strand frame attributes

1) seqname: 序列的名字。通常格式染色体ID或是contig ID。
2) source:注释的来源。通常是预测软件名或是公共数据库。
3) start:起始位置,从1开始计数。
4) end:终止位置。
5) feature :基因结构.根据所使用软件不同,feature types必须注明。CDS,start_codon,stop_codon是一定要含有的类型。
6) score :这一列的值表示对该类型存在性和其坐标的可信度,不是必须的,可以用点“.”代替。
7) strand:链的正向与负向,分别用加号+和减号-表示。
8) frame:密码子偏移,可以是0、1或2。
9) attributes:必须要有以下两个值:
     gene_id value: 表示转录本在基因组上的基因座的唯一的ID。gene_id与value值用空格分开,如果值为空,则表示没有对应的基因。
    transcript_id value: 预测的转录本的唯一ID。transcript_id与value值用空格分开,空表示没有转录本。

2)GFF3和GTF2之间的异同及相互转换。
---------------------------------------------------

GFF3和GTF2之间的转换可以用Cufflinks里面的工具"gffread":

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

3) 习题
---------------------------------------
3.1)gff3格式的功能是是什么?目前有几版?
3.2)gff3共有多少列?每一列的含义是什么?
3.3)gff3中的第8列代表的0,1,2分别代表什么含义?
3.4)gff3第9列不同属性之间是用什么符号分割的?
3.5)gtf2和gff3格式上有何异同?
3.6)gtf2和gff3在功能上有什么差异?
3.7)gtf2第9列中不同属性用什么符号分割?
3.8)如何将gtf和gff之间相互转换?
3.9)统计test.gff文件中组装出来的染色体条数
3.10)统计test.gff文件中lnc_RNA个数
3.11)统计基因组文件test.gff中有多少个基因
3.12)求最长基因的长度
3.13)查找一个基因下有3个转录本的基因个数
3.14)求相位为2的cds个数
3.15)找出基因含有最多的外显子的个数
3.16)  将test.gff转化为test.gtf
3.17)统计test.gtf中transcript的个数
3.18)根据test.gtf统计位于正链上的exon的个数
3.19)将test.gtf中所有的gene ID都统计出来
3.20) 找出test.gtf中位于正链上的最长的基因
4) 参考资源
---------------------------------------
https://en.wikipedia.org/wiki/General_feature_format
http://boyun.sh.cn/bio/?p=1602

gff/gtf格式的更多相关文章

  1. 探索gff/gtf格式

    参考: GFF格式说明 Generic Feature Format Version 3 (GFF3) 先下载一个 gtf 文件浏览一下 1 havana gene 11869 14409 . + . ...

  2. (转) gffcompare和gffread | gtf | gff3 格式文件的分析 | gtf处理 | gtfparse

    工具推荐:https://github.com/openvax/gtfparse 真不敢相信,Linux自带的命令会这么强大,从gtf中提取出需要的transcript,看起来复杂,其实一个grep就 ...

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

    我们在做生物分析的时候,经常会碰到GFF格式的文件以及GTF格式的注释文件.他们有着相似的名字,甚至连内容都极为相似~那么,他们究竟差在哪里呢? GFF全称为general feature forma ...

  4. 关于基因组注释文件GTF的解释

    GTF文件的全称是gene transfer format,主要是对染色体上的基因进行标注.怎么理解呢,其实所谓的基因名,基因座等,都只是后来人们给一段DNA序列起的名字而已,还原到细胞中就是细胞核里 ...

  5. 如何使用SnpEff 对SNP结果进行分析

    SnpEff is a variant annotation and effect prediction tool. It annotates and predicts the effects of ...

  6. 【转录组入门】6:reads计数

    作业要求: 实现这个功能的软件也很多,还是烦请大家先自己搜索几个教程,入门请统一用htseq-count,对每个样本都会输出一个表达量文件. 需要用脚本合并所有的样本为表达矩阵.参考:生信编程直播第四 ...

  7. tophat的用法

    概述:tophat是以bowtie2为核心的一款比对软件. tophat工作分两步: 1.将reads用bowtie比对到参考基因组上. 2.将unmapped-reads打断成更小的fragment ...

  8. Augustus指南(Trainning部分)

    Augustus指南 官方 Tutorial Index Augustus是一个真核生物基因预测软件,目前有网页服务端和本地版,它基于Hidden-Markov Model(隐马尔科夫链模型HMM)( ...

  9. bedtools 每天都会用到的工具

    详细的使用说明:http://bedtools.readthedocs.org/en/latest/ Collectively, the bedtools utilities are a swiss- ...

随机推荐

  1. 利用springMVC包装类上传多个文件

    前端JSP页面代码片段: <!-- springMVC包装类上传文件 --><form name="uploadFiles" id="uploadFil ...

  2. JAVA Date类与Calendar类【转】

    Date类 在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理.这里简单介绍一下Date ...

  3. bzoj 3768: spoj 4660 Binary palindrome二进制回文串

    Description 给定k个长度不超过L的01串,求有多少长度为n的01串S满足: 1.该串是回文串 2.该串不存在两个不重叠的子串,在给定的k个串中. 即不存在a<=b<c<= ...

  4. 小峰mybatis(2)mybatis传入多个参数等..

    一.mybatis传入多个参数: 前面讲传入多个参数都是使用map,hashmap:key value的形式:-- 项目中开发都建议使用map传参: 比如现在通过两个参数,name和age来查询: 通 ...

  5. EasyMall 项目记录-环境搭建

    一.搭建项目运行的环境 (1)修改hosts文件 更改:C:\Windows\System32\drivers\etc目录下hosts文件 添加:127.0.0.1        www.easyma ...

  6. Neutron 理解 (1): Neutron 所实现的网络虚拟化 [How Neutron Virtualizes Network]

    学习 Neutron 系列文章: (1)Neutron 所实现的网络虚拟化 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...

  7. Valgrind memcheck 8种错误实例

    调不尽的内存泄漏,用不完的Valgrind Valgrind 安装 1. 到www.valgrind.org下载最新版valgrind-3.2.3.tar.bz2 2. 解压安装包:tar –jxvf ...

  8. python3+selenium3.13的简单操作

    1.浏览器 1.1 浏览器窗口大小位置 driver.set_window_size(self, width, height, windowHandle) 将某个窗口设置为固定大小 driver.se ...

  9. pycharm fiddler requests.exceptions.SSLError

    一.SSL问题1.不启用fiddler,直接发https请求,不会有SSL问题(也就是说不想看到SSL问题,关掉fiddler就行) 2.启动fiddler抓包,会出现这个错误:requests.ex ...

  10. Linux常见英文报错中文翻译(菜鸟必知)

    Linux常见英文报错中文翻译(菜鸟必知) 1.command not found 命令没有找到 2.No such file or directory 没有这个文件或目录 3.Permission ...