GFF (формат файла): различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[отпатрулированная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Статья «Формат файлов GFF» НЕ избрана с помощью гаджета QA (v. 0s1fn6o)
оформление, источники, дополнение
Строка 1: Строка 1:
'''GFF''' ({{lang-en|General Feature Format, GFF}}) — [[формат файлов]], используемый для разметки [[Ген|генов]] и других характеристик последовательностей [[ДНК]], [[РНК]] и [[Белки|белков]]. Используемое для такого типа файлов [[Файловое расширение|расширение]] обозначается как <code>.GFF</code>. Формат был предложен исследователями из [[Институт_Сенгера|Института Сенгера]], его версия GFF2 вышла в 1998 году{{sfn|Zhang|2016}}.
{{нет сносок}}
'''Формат файлов GFF''' ({{lang-en|general feature format, GFF}}) — [[формат файлов]], используемый для разметки [[ген]]ов и других характеристик последовательностей [[ДНК]], [[РНК]] и [[Белки|белков]]. Используемое для такого типа файлов [[Файловое расширение|расширение]] обозначается как <code>.GFF</code><ref name="multiple">http://www.ensembl.org/info/website/upload/gff.html</ref>.


== Общие сведения ==
== Общие сведения ==
Появление технологий [[Методы секвенирования нового поколения|секвенирования нового поколения]] сделало задачу расшифровки [[геном]]а более простой и доступной. Существуют программы, позволяющие идентифицировать в полученной нуклеотидной последовательности того или иного организма такие функциональные элементы, как [[ген]]ы, [[экзон]]ы, [[интрон]]ы, стартовые и [[стоп-кодон]]ы, [[Мотив (молекулярная биология)|мотивы]], сайты [[сплайсинг]]а и т. д. Формат GFF часто используется для хранения таких характеристик генома.
Появление технологий [[Методы_секвенирования_нового_поколения|секвенирования нового поколения]] сделало задачу расшифровки [[геном|генома]] более простой и доступной. Существуют программы, позволяющие идентифицировать в полученной нуклеотидной последовательности того или иного организма такие функциональные элементы, как [[Ген|гены]], [[Экзон|экзоны]], [[Интрон|интроны]], стартовые и [[Стоп-кодон|стоп-кодоны]], [[Мотив_(молекулярная_биология)|мотивы]], сайты [[Сплайсинг|сплайсинга]] и т.д. Формат GFF часто используется для хранения таких характеристик генома{{sfn|Zhang|2016}}.


Файл в формате GFF — это текстовый файл, где для каждого функционального элемента генома отводится одна строка. Каждая строка содержит 9 полей, разделенных знаком табуляции<ref name="multiple" />. Такая структура файла позволяет легко и быстро извлекать необходимые данные, а также обрабатывать их такими средствами, как [[bash]] (например, команды grep, sort и др.), простыми скриптами awk и perl.
Файл в формате GFF — это текстовый файл, где для каждого функционального элемента генома отводится одна строка. Каждая строка содержит 9 полей, разделенных знаком табуляции{{sfn|Deng et al|2017}}. Такая структура файла позволяет легко и быстро извлекать необходимые данные, а также обрабатывать их такими средствами, как [[bash]] (например, команды grep, sort и др.), простыми скриптами awk и perl.


Ниже представлен пример файла в формате GFF<ref>http://gmod.org/wiki/GFF2</ref>:
Ниже представлен пример файла в формате GFF<ref name="gmod">{{cite web |url=http://gmod.org/wiki/GFF2 |title=Generic Model Organism Database, GFF2}}</ref>:
<pre>
<pre>
IV curated mRNA 5506800 5508917 . + . Transcript B0273.1; Note "Zn-Finger"
IV curated mRNA 5506800 5508917 . + . Transcript B0273.1; Note "Zn-Finger"
Строка 20: Строка 19:
== Версии GFF ==
== Версии GFF ==
Существует три версии формата файлов GFF:
Существует три версии формата файлов GFF:
* [http://www.sanger.ac.uk/resources/software/gff/spec.html GFF Version 2 (GFF2)]
* [http://gmod.org/wiki/GFF2 GFF Version 2 (GFF2)]
* [http://mblab.wustl.edu/GTF22.html Gene Transfer Format (GTF)]
* [http://gmod.org/wiki/GFF3#GTF Gene Transfer Format (GTF)]
* [http://www.sequenceontology.org/gff3.shtml GFF Version 3 (GFF3)]
* [http://gmod.org/wiki/GFF3 GFF Version 3 (GFF3)]
GFF2 имеет ряд недостатков. Наиболее существенным является то, что он может представлять только двухуровневые иерархии характеристик, и, соответственно, не может справиться с трёхуровневой иерархией типа ген → транскрипт → экзон. Сейчас он объявлен устаревшим.<ref name="c">http://gmod.org/wiki/GFF2</ref>
GFF2 имеет ряд недостатков. Наиболее существенным является то, что он может представлять только двухуровневые иерархии характеристик, и, соответственно, не может справиться с трёхуровневой иерархией типа ген → транскрипт → экзон. Сейчас он объявлен устаревшим<ref name="gmod" />.
GFF3 поддерживает сколь угодно много уровней иерархии.
GFF3 поддерживает сколь угодно много уровней иерархии.
Формат GTF является уточнением второй версии GFF2, и иногда называется как GFF2.5<ref>http://gmod.org/wiki/GFF3#GTF</ref>. Они отличаются девятым полем: [[#Структура формата GFF|см. раздел «Структура формата GFF»]].
Формат GTF является уточнением второй версии GFF2, и иногда называется как GFF2.5<ref name="gtf">{{cite web |url=http://gmod.org/wiki/GFF3#GTF |title=Generic Model Organism Database, GTF}}</ref>. Они отличаются девятым полем: [[#Структура формата GFF|см. раздел «Структура формата GFF»]].


== Структура формата GFF ==
== Структура формата GFF ==
Каждая строка в файле формата GFF содержит 9 колонок, разделенных знаком табуляции. Каждая колонка называется полем и имеет своё назначение. Список названий полей и их содержание приведены ниже.
Каждая строка в файле формата GFF содержит 9 колонок, разделенных знаком табуляции{{sfn|Zhang|2016}}. Каждая колонка называется полем и имеет своё назначение. Список названий полей и их содержание приведены ниже.


{| class="wikitable"
{| class="wikitable"
Строка 46: Строка 45:
| 3
| 3
| feature
| feature
| Тип характеристики, например, «CDS», «stop_codon» ([[стоп-кодон]]), «exon» ([[экзон]]). В правильно структурированном файле GFF все характеристики, что ниже по иерархии, следуют за характеристикой более высокого порядка. Так, все экзоны одного [[Транскрипт (биология)|транскрипта]] должны быть записаны сразу после строки «своего» транскрипта, один под другим
| Тип характеристики, например, «CDS», «stop_codon» ([[стоп-кодон]]), «exon» ([[экзон]]). В правильно структурированном файле GFF все характеристики, что ниже по иерархии, следуют за характеристикой более высокого порядка. Так, все экзоны одного [[Транскрипт_(биология)|транскрипта]] должны быть записаны сразу после строки «своего» транскрипта, один под другим
|-
|-
| 4
| 4
Строка 66: Строка 65:
| 8
| 8
| phase (GFF3) '''''или''''' frame (GTF, GFF2)
| phase (GFF3) '''''или''''' frame (GTF, GFF2)
| [[Открытая рамка считывания|Рамка считывания]] для белок-кодирующих характеристик. В формате GFF3 указывает, какому основанию участка соответствует первое основание кодона рамки: первому (0), второму (1) или третьему (2). «.» указывается, когда описываемый участок нельзя отнести к первым трем случаям. В форматах GFF2 и GTF обозначает остаток от деления на 3 длины всех предыдущих кодирующих фрагментов<ref name="so">https://github.com/The-Sequence-Ontology/Specifications/blob/master/gff3.md</ref>
| [[Открытая рамка считывания|Рамка считывания]] для белок-кодирующих характеристик. В формате GFF3 указывает, какому основанию участка соответствует первое основание кодона рамки: первому (0), второму (1) или третьему (2). «.» указывается, когда описываемый участок нельзя отнести к первым трем случаям. В форматах GFF2 и GTF обозначает остаток от деления на 3 длины всех предыдущих кодирующих фрагментов<ref name="so">{{cite web |url=https://github.com/The-Sequence-Ontology/Specifications/blob/master/gff3.md |title=GFF3 specifications}}</ref>
|-
|-
| 9
| 9
| group (GFF, GTF) '''''или''''' attributes (GFF3)
| group (GFF, GTF) '''''или''''' attribute (GFF3)
| Поле для дополнительной информации, например, для группировки отдельных наборов записей под одним названием. Здесь прописываются идентификаторы характеристик более высоких порядков, к примеру, группировка [[интрон]]ов и [[экзон]]ов в предсказание одного определённого [[ген]]а. Формат, структура и содержание различаются в форматах GFF, GTF, GFF3.
| Поле для дополнительной информации, например, для группировки отдельных наборов записей под одним названием. Здесь прописываются идентификаторы характеристик более высоких порядков, к примеру, группировка [[интрон]]ов и [[экзон]]ов в предсказание одного определенного [[ген]]а. Формат, структура и содержание различаются в форматах GFF, GTF, GFF3.
|}
|}


=== Поле 9 в различных версиях ===
=== Поле 9 в различных версиях ===
Есть несколько причин использовать поле ''group''/''attribute''<ref name="c" />:
Есть несколько причин использовать поле ''group''/''attribute''<ref name="gmod" />:
* объединить в одну группу характеристики, принадлежащие одной последовательности (например, разные экзоны одного гена);
* объединить в одну группу характеристики, принадлежащие одной последовательности (например, разные экзоны одного гена);
* дать характеристике имя, тем самым облегчив её поиск в файле;
* дать характеристике имя, тем самым облегчив ее поиск в файле;
* добавить заметки о характеристике;
* добавить заметки о характеристике;
* добавить альтернативное имя.
* добавить альтернативное имя.
Строка 87: Строка 86:
• ''gene_id'' — уникальный идентификатор для геномного локуса транскрипта; если он не указан,
• ''gene_id'' — уникальный идентификатор для геномного локуса транскрипта; если он не указан,
тогда нет гена, связанного с определённой характеристикой;
тогда нет гена, связанного с определенной характеристикой;


• ''transcript_id'' — уникальный идентификатор для предсказанного транскрипта; если он не
• ''transcript_id'' — уникальный идентификатор для предсказанного транскрипта; если он не
указан, тогда нет транскрипта, связанного с описанной характеристикой.
указан, тогда нет транскрипта, связанного с описанной характеристикой.


Такие атрибуты предназначены для обработки нескольких транскриптов и одной и той же области генома. Пример использования поля ''attribute'' в формате GTF<ref>http://mblab.wustl.edu/GTF22.html</ref>:
Такие атрибуты предназначены для обработки нескольких транскриптов и одной и той же области генома. Пример использования поля ''attribute'' в формате GTF<ref name="gtf" />:


<pre>AB000381 Twinscan CDS 380 401 . + 0 gene_id "001"; transcript_id "001.1";</pre>
<pre>AB000381 Twinscan CDS 380 401 . + 0 gene_id "001"; transcript_id "001.1";</pre>


Формат GFF3 поддерживает многоуровневую иерархию благодаря атрибуту Parent. Его значение — это идентификатор характеристики на 1 уровень выше<ref name="c" />. Между атрибутом и его значением ставится «=»:
Формат GFF3 поддерживает многоуровневую иерархию благодаря атрибуту Parent. Его значение — это идентификатор характеристики на 1 уровень выше<ref name="gff3">{{cite web |url=http://gmod.org/wiki/GFF3 |title=Generic Model Organism Database, GFF3}}</ref>. Между атрибутом и его значением ставится «=»:
<pre>##gff-version 3
<pre>##gff-version 3
ctg123 . mRNA 1300 9000 . + . ID=mrna0001;Name=sonichedgehog
ctg123 . mRNA 1300 9000 . + . ID=mrna0001;Name=sonichedgehog
Строка 118: Строка 117:
| IGB || Integrated Genome Browser || [[Визуализация данных секвенирования РНК#Integrated Genome Browser .28IGB.29|Integrated Genome Browser]]
| IGB || Integrated Genome Browser || [[Визуализация данных секвенирования РНК#Integrated Genome Browser .28IGB.29|Integrated Genome Browser]]
|-
|-
| Jalview || Просмотр и редактирование [[Множественное выравнивание последовательностей|множественных выравниваний]] || {{не переведено|:en:Jalview|Jalview}}
| Jalview || Просмотр и редактирование [[Множественное_выравнивание_последовательностей|множественных выравниваний]] || {{не переведено|:en:Jalview|Jalview}}
|-
|-
| STRAP || Поиск характеристик во множественных выравниваниях, [http://www.charite.de/bioinf/strap/exampleOutput.html пример выдачи] || [http://3d-alignment.eu/ STRAP]
| STRAP || Поиск характеристик во множественных выравниваниях, [http://www.charite.de/bioinf/strap/exampleOutput.html пример выдачи] || [http://3d-alignment.eu/ STRAP]
Строка 124: Строка 123:


== Конвертирование GFF2 в GFF3 ==
== Конвертирование GFF2 в GFF3 ==
Существует несколько серверов, позволяющих перевести файл из GFF2 в формат GFF3. Однако каждый из них немного по-разному интерпретирует исходные данные в файле GFF2, что создает проблемы при конвертации и ограничивает возможность их применения<ref name="so" />.
Существует несколько серверов, позволяющих перевести файл из GFF2 в формат GFF3. Однако каждый из них немного по-разному интерпретирует исходные данные в файле GFF2, что создает проблемы при конвертации и ограничивает возможность их применения<ref name="so" />.


Вот некоторые моменты, которые учитывает любой конвертер:
Вот некоторые моменты, которые учитывает любой конвертер:
* ''feature'': если GFF2 не содержит {{Нп5|Sequence Ontology||en|Sequence Ontology}} (SO) в третьей колонке, то их необходимо каким-либо образом добавить при переводе в формат GFF3;
* ''feature'': если GFF2 не содержит {{не переведено|:en:Sequence_Ontology|Sequence Ontology (SO)}} в третьей колонке, то их необходимо каким-либо образом добавить при переводе в формат GFF3;
* ''group''/''attribute'': много мелких различий.
* ''group''/''attribute'': много мелких различий.


Строка 136: Строка 135:


== См. также ==
== См. также ==
[[Функциональная аннотация геномов млекопитающих]]
* [[Расширение имени файла]]
* [[Выравнивание последовательностей]]
* [[Функциональная аннотация геномов млекопитающих]]


== Примечания ==
== Примечания ==
Строка 144: Строка 141:


== Литература ==
== Литература ==
* {{книга
* [http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3848729/pdf/1756-0381-6-15.pdf gff2sequence, a new user friendly tool for the generation of genomic sequences]
|автор = Hongen Zhang

|часть = Overview of Sequence Data Formats

|заглавие = Statistical Genomics

|ссылка = http://link.springer.com/10.1007/978-1-4939-3578-9_1
[[Категория:Форматы файлов]]
|место = New York, NY
|издательство = Springer New York
|год = 2016
|страницы = 3-17
| ref = Zhang
|isbn = 978-1-4939-3576-5 978-1-4939-3578-9
}}
* {{статья
| автор = Feilong Deng, Shi-Yi Chen, Zhou-Lin Wu, Yongsong Hu, Xianbo Jia, Song-Jia Lai
| заглавие = GFFview: A Web Server for Parsing and Visualizing Annotation Information of Eukaryotic Genome
| издание = Journal of Computational Biology
| издательство = Oxford Journals
| год = 2017
| ref = Deng et al
| ссылка = http://online.liebertpub.com/doi/10.1089/cmb.2016.0216
}}

Версия от 10:29, 5 июля 2017

GFF (англ. General Feature Format, GFF) — формат файлов, используемый для разметки генов и других характеристик последовательностей ДНК, РНК и белков. Используемое для такого типа файлов расширение обозначается как .GFF. Формат был предложен исследователями из Института Сенгера, его версия GFF2 вышла в 1998 году[1].

Общие сведения

Появление технологий секвенирования нового поколения сделало задачу расшифровки генома более простой и доступной. Существуют программы, позволяющие идентифицировать в полученной нуклеотидной последовательности того или иного организма такие функциональные элементы, как гены, экзоны, интроны, стартовые и стоп-кодоны, мотивы, сайты сплайсинга и т.д. Формат GFF часто используется для хранения таких характеристик генома[1].

Файл в формате GFF — это текстовый файл, где для каждого функционального элемента генома отводится одна строка. Каждая строка содержит 9 полей, разделенных знаком табуляции[2]. Такая структура файла позволяет легко и быстро извлекать необходимые данные, а также обрабатывать их такими средствами, как bash (например, команды grep, sort и др.), простыми скриптами awk и perl.

Ниже представлен пример файла в формате GFF[3]:

IV     curated  mRNA   5506800 5508917 . + .   Transcript B0273.1; Note "Zn-Finger"
IV     curated  5'UTR  5506800 5508999 . + .   Transcript B0273.1
IV     curated  exon   5506900 5506996 . + .   Transcript B0273.1
IV     curated  exon   5506026 5506382 . + .   Transcript B0273.1
IV     curated  exon   5506558 5506660 . + .   Transcript B0273.1
IV     curated  exon   5506738 5506852 . + .   Transcript B0273.1
IV     curated  3'UTR  5506852 5508917 . + .   Transcript B0273.1

Версии GFF

Существует три версии формата файлов GFF:

GFF2 имеет ряд недостатков. Наиболее существенным является то, что он может представлять только двухуровневые иерархии характеристик, и, соответственно, не может справиться с трёхуровневой иерархией типа ген → транскрипт → экзон. Сейчас он объявлен устаревшим[3]. GFF3 поддерживает сколь угодно много уровней иерархии. Формат GTF является уточнением второй версии GFF2, и иногда называется как GFF2.5[4]. Они отличаются девятым полем: см. раздел «Структура формата GFF».

Структура формата GFF

Каждая строка в файле формата GFF содержит 9 колонок, разделенных знаком табуляции[1]. Каждая колонка называется полем и имеет своё назначение. Список названий полей и их содержание приведены ниже.

Номер поля Название поля Описание
1 seqname Название последовательности, где расположена характеристика. Как правило, совпадает с идентификатором той последовательности, которая лежит в прилагающемся файле формата FASTA, а также с номером последовательности в базах данных EMBL/GenBank/DDBJ
2 source Источник определения характеристики, в качестве которого может выступать программа, или база данных, или экспериментальная проверка, или организация (например, TAIR англ.)
3 feature Тип характеристики, например, «CDS», «stop_codon» (стоп-кодон), «exon» (экзон). В правильно структурированном файле GFF все характеристики, что ниже по иерархии, следуют за характеристикой более высокого порядка. Так, все экзоны одного транскрипта должны быть записаны сразу после строки «своего» транскрипта, один под другим
4 start Номер стартовой позиции характеристики в последовательности. Нумерация начинается с 1
5 end Номер конечной позиции характеристики в последовательности
6 score Оценка от 0 до 1000. Чем выше, тем определение характеристики считается более достоверным. В случае, когда нет оценки (например, для сенсора, который записывает возможное присутствие сигнала), используют обозначение «.»
7 strand Допустимые значения для обозначения цепей «+» (направление 5'->3'), «-» (направление 3'->5'), «.» (не определено). В формате GFF2 «.» используется для обозначения цепи РНК или белка
8 phase (GFF3) или frame (GTF, GFF2) Рамка считывания для белок-кодирующих характеристик. В формате GFF3 указывает, какому основанию участка соответствует первое основание кодона рамки: первому (0), второму (1) или третьему (2). «.» указывается, когда описываемый участок нельзя отнести к первым трем случаям. В форматах GFF2 и GTF обозначает остаток от деления на 3 длины всех предыдущих кодирующих фрагментов[5]
9 group (GFF, GTF) или attribute (GFF3) Поле для дополнительной информации, например, для группировки отдельных наборов записей под одним названием. Здесь прописываются идентификаторы характеристик более высоких порядков, к примеру, группировка интронов и экзонов в предсказание одного определенного гена. Формат, структура и содержание различаются в форматах GFF, GTF, GFF3.

Поле 9 в различных версиях

Есть несколько причин использовать поле group/attribute[3]:

  • объединить в одну группу характеристики, принадлежащие одной последовательности (например, разные экзоны одного гена);
  • дать характеристике имя, тем самым облегчив ее поиск в файле;
  • добавить заметки о характеристике;
  • добавить альтернативное имя.

Пример использования поля group в формате GFF:

Chr3 giemsa heterochromatin 4500000 6000000 . . . Band 3q12.1 ; Note "Marfan's syndrome"

Атрибуты поля отделены от их значений пробелом, между двумя парами «атрибут-значение» ставится точка с запятой. В формате GTF вместо поля group записывается attribute, которое включает два обязательных атрибута:

gene_id — уникальный идентификатор для геномного локуса транскрипта; если он не указан, тогда нет гена, связанного с определенной характеристикой;

transcript_id — уникальный идентификатор для предсказанного транскрипта; если он не указан, тогда нет транскрипта, связанного с описанной характеристикой.

Такие атрибуты предназначены для обработки нескольких транскриптов и одной и той же области генома. Пример использования поля attribute в формате GTF[4]:

AB000381 Twinscan  CDS          380   401   .   +   0  gene_id "001"; transcript_id "001.1";

Формат GFF3 поддерживает многоуровневую иерархию благодаря атрибуту Parent. Его значение — это идентификатор характеристики на 1 уровень выше[6]. Между атрибутом и его значением ставится «=»:

##gff-version 3
ctg123 . mRNA            1300  9000  .  +  .  ID=mrna0001;Name=sonichedgehog
ctg123 . exon            1300  1500  .  +  .  ID=exon00001;Parent=mrna0001
ctg123 . exon            1050  1500  .  +  .  ID=exon00002;Parent=mrna0001

Варианты использования GFF

GFF — простой и стандартизованный файловый формат, который можно подавать на вход многим программам, работающим с генами. Часто применяется при решении таких задач, как:

  • тестирование методов идентификации функциональных элементов последовательности;
  • представление найденных в эксперименте характеристик генома в формате GFF. Такие «экспериментальные» GFF-файлы могут быть полезными для проверки предсказанных методами биоинформатики элементов генома;
  • поиск новых, более сложных функциональных элементов генома с использованием нескольких GFF-файлов, содержащих разные характеристики последовательности;

Программы, использующие формат GFF:

Программа Описание Ссылка
GBrowse GMOD genome viewer GBrowse
IGB Integrated Genome Browser Integrated Genome Browser
Jalview Просмотр и редактирование множественных выравниваний шаблон не поддерживает такой синтаксис
STRAP Поиск характеристик во множественных выравниваниях, пример выдачи STRAP

Конвертирование GFF2 в GFF3

Существует несколько серверов, позволяющих перевести файл из GFF2 в формат GFF3. Однако каждый из них немного по-разному интерпретирует исходные данные в файле GFF2, что создает проблемы при конвертации и ограничивает возможность их применения[5].

Вот некоторые моменты, которые учитывает любой конвертер:

  • feature: если GFF2 не содержит шаблон не поддерживает такой синтаксис в третьей колонке, то их необходимо каким-либо образом добавить при переводе в формат GFF3;
  • group/attribute: много мелких различий.

Ниже приведен список некоторых серверов, осуществляющих конвертацию GFF2 в GFF3:

См. также

Функциональная аннотация геномов млекопитающих

Примечания

Литература

  • Hongen Zhang. Overview of Sequence Data Formats // Statistical Genomics. — New York, NY: Springer New York, 2016. — С. 3-17. — ISBN 978-1-4939-3576-5 978-1-4939-3578-9.
  • Feilong Deng, Shi-Yi Chen, Zhou-Lin Wu, Yongsong Hu, Xianbo Jia, Song-Jia Lai. GFFview: A Web Server for Parsing and Visualizing Annotation Information of Eukaryotic Genome // Journal of Computational Biology. — Oxford Journals, 2017.