Учебная страница курса биоинформатики,
год поступления 2017
Указания к практикуму 6
Задание 1.
Скачивание протеомов.
С заглавной страницы UniProt идёте по гиперссылке Proteomes.
Используйте расширенный (advanced) поиск по видовому названию организма (или по родовому, или по полному названию штамма, сами сориентируетесь). Протеом E. coli K12 должен быть референсным, протеом Вашей бактерии/археи – не обязательно. Если в базе нет протеома конкретно Вашего организма, возьмите ближайшего родственника (и обязательно отразите это в отчете).
- Найдя нужный протеом, щёлкните по числу белков (либо в таблице, либо со страницы протеома), затем кнопка "Download" → FASTA → сохраните файл и перенесите его в свою рабочую директорию на kodomo. Если файл запакован (имя кончается на gz) распакуйте его программой gunzip. Рекомендуется переименовать файл так, чтобы название было кратким и указывало на название организма, но расширение "fasta" обязательно оставить.
Подсчет последовательностей и аминокислот
- Количество последовательностей в fasta файле можно легко посчитать с помощью grep.
Для подсчета количества аминокислот рекомендуется использовать программу wordcount из пакета EMBOSS. Внимательно читайте wordcount -help. Опции, заключённые в квадратные скобки, можно не задавать в командной строке, тогда программа спросит о них (но все же советую задавать их в командной строке). Вам нужно подсчитать количество букв (аминокислотных остатков), т.е. слов длины 1.
- Не возбраняется решить одну или обе задачи с помощью скриптов на Python. В этом случае обязательно нужно прикрепить сам скрипт и команду его вызова.
Составление таблицы
Для этих целей можно использовать Excel (или аналог) или Python. В случае Excel необходимо прикрепить к отчету xls(x) файл, в котором можно разобраться, даже не зная задание; в случае Python – скрипт и команду его запуска.
Упражнения EMBOSS
Читайте help и пробуйте разные варианты, пока не получится в точности то, что нужно.
- Программы EMBOSS выдают свой help на stderr.
Программа entret служит для получения полных записей из банков, программа seqret — для получения последовательностей в заданных форматах (по умолчанию fasta). В качестве адреса последовательности (USA) годится выражение вида "банк:ID" или "банк:AC". На kodomo банк Swiss-Prot имеет обозначение sw (например, sw:p0a7c2 — это корректный адрес). Вместо неизвестных букв в ID или AC можно ставить звёздочку "*". Если звёздочки задают больше одной последовательности, то seqret или entret положит их все в один файл. Внимание: имя банка (или файла) и название последовательности в адресе разделяет двоеточие, не точка с запятой!
- Чтобы вырезать кусок последовательности (например, с началом в 202 остатке и концом в 504), можно поступить одним из трёх способов (крайне рекомендую 1 способ):
включить координаты прямо в USA, например sw:polg_fmdva[202:504]
добавить в командную строку параметры -sbeg и -send, например seqret sw:polg_fmdva -sbeg 202 -send 504
добавить в командную строку seqret опцию -sask, тогда программа сама спросит про начало и конец.
- Практически все программы EMBOSS, в том числе seqret, выдают результат на стандартный вывод вместо файла, если в качестве имени выходного файла указать "stdout".
Программы EMBOSS, будучи запущены с опцией -filter, принимают в качестве входа стандартный вход и выдают результат на стандартный вывод. Это удобно для конвейеров, например для переименования участков последовательностей, вырезанных seqret'ом из полных последовательностей, программой descseq. Подробнее про EMBOSS читайте на сайте http://emboss.sourceforge.net/docs/ .
- При использовании в grep выражений, содержащих пробелы (и вообще что-либо, кроме букв и цифр), не забывайте про кавычки! Чтобы выделить FT с данным ключом, полезно посчитать число пробелов между буквами FT и ключевым словом и всё это выражение в кавычках скормить grep'у.
Упражнения по sed
На kodomo стоит не самая последняя версия sed, которая плевать хотела на стандарты. В этой версии опция для включения обработки расширенных регулярных выражений (ERE) называется -r, а не -E.
В bash есть специальная конструкция $name, которая имеет определенный смысл (поговорим об этом в следующий раз) и может испортить Вам команду sed. Например,
1 sed -E -e "$d" filename
не удаляет последнюю строчку файла. Чтобы избежать непонимания со стороны bash, нужно экранировать $ в командах sed с помощью обратного слэша:
1 sed -E -e "\$d" filename