Entrez Direct, BLAST+, EMBOSS


1

В первом упражении отрабатывались команды EMBOSS. Были выбраны 9 из 15 упражнений и написаны следующие команды:


2. Один файл в формате fasta с несколькими последовательностями разделить на отдельные fasta файлы.

seqretsplit -sequence coding2.fasta -filter


4. Транслировать (с первого кодона, то есть в первой рамке) кодирующие последовательности, лежащие в одном fasta файле, в аминокислотные, используя указанную таблицу генетического кода, и положить результат в один fasta файл.

transeq -sequence coding.fasta -frame 1 -table 0 -outseq 4.fasta


7. Выдать в файл число совпадающих букв между второй последовательностью выравнивания и всеми остальными (на выходе только имена последовательностей и числа).

infoalign -sequence protein_alignment.fasta -outfile 7.fasta -refseq 2 -name -idcount -only


10. Перемешать буквы в данной нуклеотидной последовательности.

shuffleseq -sequence coding.fasta -outseq 10.fasta -filter


11. Создать три случайных нуклеотидных последовательностей длины 100.

makenucseq -amount 3 -length 100 -outseq 11.fasta -filter


12. Найти частоты кодонов в данных кодирующих последовательностях.

cusp -sequence coding.fasta -outfile 12.cusp -filter


13. Выровнять кодирующие последовательности соответственно выравниванию белков – их продуктов.

tranalign -asequence gene_sequences.fasta -bsequence protein_alignment.fasta -outseq 13.fasta -filter


14. Удалить символы гэпов из выравнивания (превратив его тем самым снова в набор невыровненных последовательностей).

degapseq -sequence alignment.fasta -outseq 14.fasta -filter


15. Перевести символы конца строки из формата Windows в формат Unix (с помощью программы из пакета EMBOSS).

noreturn -infile dosseq.fasta -outfile 15.fasta -filter


2

Во втором упражении нужно было написать три конвейера с использованием Entrez Direct.

Конвейер 1: получает AC записи в базе Nucleotide (из первого аргумента сценария edirect.sh) и скачивает эту запись в формате docsum в виде json. Сохраняет выдачу в файл {AC}.json, {AC} – это полученный АС нуклеотидной записи.

epost -db nucleotide -id "${1}" -format acc | efetch -format docsum -mode json > "${1}".json


Конвейер 2: получает АС записи в базе Nucleotide (из первого аргумента сценария edirect.sh), переходит по ссылкам на записи в базе данных Protein и загружает их в формате fasta в файл {AC}_proteins.fasta, {AC} – это полученный АС нуклеотидной записи.

epost -db nuccore -id "${1}" -format acc | elink -target protein | efetch -format fasta > "${1}"_proteins.fasta


Конвейер 3: получает AC записи в базе Assembly (из второго аргумента сценария edirect.sh), и печатает в STDOUT ID записи (не AC) и N50 для контигов этой сборки в виде строки {ID} {N50}.

epost -db assembly -id "${2}" -format acc | efetch -format docsum | xtract -pattern "DocumentSummary" -element "Id" "ContigN50" -tab "\t"