后记:

************************************************************************

在使用cufflinks和cuffmerge中 我使用的都是gff3, 海宝说最好用gtf, 无论怎么样gtf一定是可以用的。

由gff3转化为gtf用gffread:

命令:

gffread Osativa_204_gene.gff3 -T -o Osativa_204_gene.gtf

转化后gff3文件中的信息都会被保留。 虽然feature中没有UTR等,但是可以通过exon-CDS推算出来,

所以才会有 用gff3 和 gtf 跑snpEff 结果会一样。

************************************************************************

ASE终于做到要考虑到使用gtf文件的时候,不得不学习一下,在这里对gtf文件格式做个简单介绍。

GFF : general feature format

GTF : gene transfer format

这种文件contain gene annotations or other transcript data.

GFF have many versions, but the two most popular are GTF2 and GFF3

the proposed GFF3 format adresses the most common extensions to GFF, while preserving backward compatibility with previous formats.

GTF2,他属于gff格式。在GTF2文件中,attributes 有 transcript_id, gene_id, gene_name

Chr1  phytozome9_0      exon  10274 10430 .     +     .     transcript_id "PAC:24118181"; gene_id "LOC_Os01g01010"; gene_name "LOC_Os01
Chr1  phytozome9_0      exon  10504 10817 .     +     .     transcript_id "PAC:24118181"; gene_id "LOC_Os01g01010"; gene_name "LOC_Os01
Chr1  phytozome9_0      CDS   3449  3616  .     +     0     transcript_id "PAC:24118181"; gene_id "LOC_Os01g01010"; gene_name "LOC_Os01
Chr1  phytozome9_0      CDS   4357  4455  .     +     0     transcript_id "PAC:24118181"; gene_id "LOC_Os01g01010"; gene_name "LOC_Os01
Chr1  phytozome9_0      CDS   5457  5560  .     +     0     transcript_id "PAC:24118181"; gene_id "LOC_Os01g01010"; gene_name "LOC_Os01

GFF文件格式:
每行有9列,不同列tab delimited.

第一列: seqname, 来自于哪个序列。

第二列:source, 这个注释的来源是哪里。上表是来自于pytozome.

第三例:feature, 有exon, CDS, *UTR。 等同于bed 格式中的name列。

在gff3文件中。feature的关系是:gene最大,然后是mRNA(transcript),然后是exon, 然后是CDS和*UTR。 如果没有exon信息,可以利用CDS和*UTR算出exon. 一个gene 可以有多个mRNA.

第四列: start 从哪个碱基开始。比如上表第一行,参考序列的第一个碱基是1, 即1-based, 第一个exon从10274个碱基开始。到10430个碱基处结束。 相对于正链来说的。

第五列: end 到哪结束,注意end坐标是include的。

在这里解释一下坐标的问题,对于RNAseq,如果某个read比到forward strand, 说明正链表达了, 坐标是从小到大,比如start condon, CDS1, CDS2, CDS3, end condon。但是如果比到了反链,说明对于这个基因来说,反链转录了。方向相对于正链正好是反的,正链是5’到3‘, 这个就是3’到5‘。但是坐标还是按着正链的坐标来说,坐标从小到大就应该是这样:end condon, CDS3, CDS2, CDS1, start condon。想明白这个问题你要懂得基因转录,对于一条双联DNA,并不是固定的某个链发转录,不是正链发生转录了,反链就没转录。而是对于某个基因来说的,可能在这个双链DNA中含有很多个基因,对于gene1,发生转录的是正链,对于gene2,发生的是反链。所以你才会在gtf, gff文件中看到+ -, 倘若只有一个链发生转录,哪来的同时有+ - 一 说?

这里感谢G博士的耐心讲解,thank you very much, 要不都研究生了还没弄懂,真的好丢人。。。

第六列: 得分~ 貌似没啥用

第七列:strand, 即是正链还是反链。不管是正链还是反链,坐标从小到大的,所以对于正链,第一个CDS所在的坐标范围是小于第二个的。而对于反链,第一个CDS坐标范围是大于第二个。

dot 估计代表不知道哪个strand。。。

第八列: frame, codon是从start的首个碱基开始的,就是0. 从第二个碱基开始的,就是1, 从第三个碱基开始的, 就是2.

第九列:attributes。 textual attribtes 要用double quotes, 不同的attribute用semiclon分开. attribute 和 textual attribute之间是一个space,  不是一个tab.

gene_id ,a globally unique indentifier for the genomic source of the transcript.  一个gene_id 可以对应多个transcript_id. 因为选择性剪切。

transcript_id , a globally unique indentifer for the predicted transcript.

these attributes are designed for handling multiple transcripts from the same genomic region.

其他的attributes 必须放在这两个attribute之后。

by freemao

FAFU

free_mao@qq.com

GFF format的更多相关文章

  1. 如何用cufflinks 拼出一个理想的注释文件

    后记: cufflinks安装: 下载安装包, 不要下载source code ,直接下载binary.    Source code    Linux x86_64 binary http://cu ...

  2. 【基因组注释】ncRNA注释

    目录 1. ncRNA 2. 软件 tRNA注释 rRNA注释 其他ncRNA注释 3. 注释 tRNA rRNA snRNA.miRNA等 4. snRNA.miRNA等结果的统计 1. ncRNA ...

  3. jbrowse 的配置与使用gff, vcf, fa, bed, bam

    1,jbrowse 是什么东西 ? JBrowse is a genome browser with a fully dynamic AJAX interface, being developed a ...

  4. GFF高仿QQ客户端及服务器

    一.GFF简介 GFF是仿QQ界面,通信基于SAEA.MessageSocket.SAEA.Http.SAEA.MVC实现包含客户端和服务器的程序,源码完全公开,项目源码地址:https://gith ...

  5. 探索gff/gtf格式

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

  6. gff/gtf格式

    1)gff3及gtf2简介 一个物种的基因组测序完成后,需要对这些数据进行解读,首先要先找到这些序列中转录起始位点.基因.外显子.内含子等组成元件在染色体中的位置信息(即注释)后才能再进行深入的分析. ...

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

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

  8. Spring resource bundle多语言,单引号format异常

    Spring resource bundle多语言,单引号format异常 前言 十一假期被通知出现大bug,然后发现是多语言翻译问题.法语中有很多单引号,单引号在format的时候出现无法匹配问题. ...

  9. c# 字符串连接使用“+”和string.format格式化两种方式

    参考文章:http://www.liangshunet.com/ca/201303/218815742.htm 字符串之间的连接常用的两种是:“+”连接.string.format格式化连接.Stri ...

随机推荐

  1. POJ 3687 逆序拓扑

    额.题目大意:有N个球.编号和重量都是唯一不重复的.然后.给你m个pair a和b,表示编号为a的点一定比编号为b的点轻.然后捏.输出每个点对应的重量.关键是要求.如果有多种可能性的话,输出让序号小的 ...

  2. MySql避免全表扫描【转】

    原文地址:http://blog.163.com/ksm19870304@126/blog/static/37455233201251901943705/ 对查询进行优化,应尽量避免全表扫描,首先应考 ...

  3. Java 面向对象编程——第一章 初识Java

      第一章    初识Java 1.  什么是Java? Java是一种简单的.面向对象的.分布式的.解释的.安全的.可移植的.性能优异的多线程语言.它以其强安全性.平台无关性.硬件结构无关性.语言简 ...

  4. OL/SQL编程练习

    create or replace procedure pr_first is --一个变量 v_a ) := '总有一天我的生命将走到尽头'; --一个常量 c_b constant ) := '而 ...

  5. Linux下的多线程编程

    1 引言 线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者.传统的 Unix也支持线程的概念,但是在一个进程(proces ...

  6. 在linux终端下打开pdf文件

    已经使用linux有很长的时间了,感觉linux的终端使用起来非常的方便.但是怎么在linux下用命令的方式打开pdf文件呢.我查了一下,打开pdf的命令是: evince [filename] 例如 ...

  7. 【NOIP2015】提高day2解题报告

    题目: P1981跳石头 描述 一年一度的“跳石头”比赛又要开始了!这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石.组委会已经选择好了两块岩石作为比赛起点和终点.在起点和终点之间,有 N ...

  8. Rhel6-tomcat+nginx+memcached配置文档

    理论基础: User - > web ->nginx  ->tomcat1 ->*.jsp 80          8080 ↓      -> tomcat2 html ...

  9. Matlab:max函数

    Matlab中max函数在矩阵中求函数大小的实例如下: C = max(A)返回一个数组各不同维中的最大元素.如果A是一个向量,max(A)返回A中的最大元素.如果A是一个矩阵,max(A)将A的每一 ...

  10. JS中javascript:void(0)真正含义

    对于下面的代码,其中void(0)的含义是什么? <a href="javascript:Test();void(0);">hello</a> 其实,Jav ...