Кароче, я занимаюсь генетикой.
Словом, если брать Вашу
ссылку за отправную точку (сам я с генетикой не знаком от слова совсем, но тихо её ненавижу, т.к. мой рост 2 метра при весе в районе 70 кг и врожденном нарушении цветоощущения), то поулчаем примерно такой алгоритм... Открываем терминал (Ctrl+alt+t), и выполняем последовательно команды:
1. качаем саму программу:
wget --output-document=$HOME/gff3ToGenePred http://hgdownload.cse.ucsc.edu/admin/exe/linux.x86_64/gff3ToGenePred
2. даем файлу права на исполнение:
chmod +x $HOME/gff3ToGenePred
3. смотрим справку по использованию:
$HOME/gff3ToGenePred
В ответ получаем следующее:
gff3ToGenePred - convert a GFF3 file to a genePred file
usage:
gff3ToGenePred inGff3 outGp
options:
-warnAndContinue - on bad genePreds being created, put out warning but continue
-useName - rather than using 'id' as name, use the 'name' tag
-rnaNameAttr=attr - If this attribute exists on an RNA record, use it as the genePred
name column
-geneNameAttr=attr - If this attribute exists on a gene record, use it as the genePred
name2 column
-attrsOut=file - output attributes of mRNA record to file. These are per-genePred row,
not per-GFF3 record. Thery are derived from GFF3 attributes, not the attributes themselves.
-processAllGeneChildren - output genePred for all children of a gene regardless of feature
-unprocessedRootsOut=file - output GFF3 root records that were not used. This will not be a
valid GFF3 file. It's expected that many non-root records will not be used and they are not
reported.
-bad=file - output genepreds that fail checks to file
-maxParseErrors=50 - Maximum number of parsing errors before aborting. A negative
value will allow an unlimited number of errors. Default is 50.
-maxConvertErrors=50 - Maximum number of conversion errors before aborting. A negative
value will allow an unlimited number of errors. Default is 50.
-honorStartStopCodons - only set CDS start/stop status to complete if there are
corresponding start_stop codon records
-defaultCdsStatusToUnknown - default the CDS status to unknown rather
than complete.
-allowMinimalGenes - normally this programs assumes that genes contains
transcripts which contain exons. If this option is specified, genes with exons
as direct children of genes and stand alone genes with no exon or transcript
children will be converted.
-refseqHacks - enable various hacks to make RefSeq conversion work:
This turns on -useName, -allowMinimalGenes, and -processAllGeneChildren.
It try harder to find an accession in attributes
This converts:
- top-level gene records with RNA records
- top-level RNA records
- RNA records that contain:
- exon and CDS
- CDS, five_prime_UTR, three_prime_UTR
- only exon for non-coding
- top-level gene records with transcript records
- top-level transcript records
- transcript records that contain:
- exon
where RNA can be mRNA, ncRNA, or rRNA, and transcript can be either
transcript or primary_transcript
The first step is to parse GFF3 file, up to 50 errors are reported before
aborting. If the GFF3 files is successfully parse, it is converted to gene,
annotation. Up to 50 conversion errors are reported before aborting.
Input file must conform to the GFF3 specification:
http://www.sequenceontology.org/gff3.shtml
С учетом справки, если ввести теперь в терминале команду
$HOME/gff3ToGenePred /путь/к/файлу/Gff3/inGff3 /куда/сохранить/файл_outGp
то файл
/путь/к/файлу/Gff3/inGff3, который должен иметь структуру в соответствии со
спецификацией, будет программой обработан, и результат будет сохранен в
/куда/сохранить/файл_outGp. Обращаю Ваше внимание: я привожу полные пути к файлам. Пробелов эти пути не содержат. Если входной файл лежит в домашней папке пользователя и называется
inGff3, до для конвертирования его в файл
outGp с сохранением в домашнюю же папку пользователя, можно просто:
$HOME/gff3ToGenePred inGff3 outGp
Если файл (входной) лежит в каталоге
[домашняя папка пользователя]/Генетика/Геном 1/ и называется
inGff3 (входной), то можно так (результат будет сохранен в ту же папку
[домашняя папка пользователя]/Генетика/Геном 1/ в файл с названием
outGp):
$HOME/gff3ToGenePred ~/Генетика/Геном\ 1/inGff3 ~/Генетика/Геном\ 1/outGp
Или так:
$HOME/gff3ToGenePred "$HOME/Генетика/Геном 1/inGff3" "$HOME/Генетика/Геном 1/outGp"