Учебная страница курса биоинформатики,
год поступления 2020
Задания практикума 9
Отчёт – страница со ссылкой со страницы семестра. Мягкий дедлайн – 23:59 11 ноября, жесткий дедлайн – 01:00 16 ноября. После мягкого дедлайна штраф 0.5 балла, после жесткого – 2 балла.
1. Поиск гомологов белков в неаннотированном геноме
Краткая инструкция по BLAST+ от Юры Пекова.
Задача: с помощью BLAST+ сделать вывод о наличии гомолога белка в неаннотированной сборке генома Amoeboaphelidium protococcarum (примитивный родственник грибов). Сборка генома лежит на kodomo в файле /P/y20/term3/X5.fasta.
Задание следует выполнить три раза, для любых трёх белков, которые, по вашему мнению, должны быть почти у всех эукариот. В отчете обязательно опишите, как получили последовательность белка для поиска (придется вспомнить предыдущий семестр). Для поиска гомолога следует выбрать белок из сравнительно близкого организма, который, при этом, должен быть хорошо аннотирован. Скорее всего у вас получится найти гомолога, даже если вы будете искать по последовательности белка, например, человека. Но это вызовет сомнения у проверяющего в том, что вы вообще понимаете, что и зачем делаете.
Прошу обратить особое внимание на следующие факты:
- сборку генома следует считать черновой и, вероятно, неполной;
- ген белка не обязан полностью уместиться на одном контиге;
- белки часто бывают многодоменными, поэтому наличие гомологичного домена не всегда говорит о гомологии белков.
В отчете для каждого из 3 белков нужно привести ссылку на его последовательность, описание того, как вы её получили, параметры запуска BLAST и выдачу (желательно в текстовом виде), обоснованный вывод о наличии гомолога в геноме Amoeboaphelidium. Загрузить последовательность белка на kodomo проще всего с помощью entret по AC, предварительно выполнив поиск на сайте UniProt. В отчете надо будет указать поисковый запрос в UniProt и команду загрузки последовательности на kodomo.
2. Упражнения по EMBOSS
Команды для освоения:
справка и мануалы: wossname, tfm, опции -help -verbose, http://emboss.sourceforge.net/
- работа с последовательностями: entret, seqret, seqretsplit, infoseq, descseq, wordcount, compseq, fuzznuc.
- работа с выравниваниями: infoalign, tranalign, consambig.
- работа с аннотациями записей: featcopy, extractfeat.
- работа с кодирующими последовательностями: transeq, cusp, getorf, tranalign.
- работа со случайными последовательностями: shuffleseq, makenucseq.
- вспомогательные: noreturn, degapseq.
Кроме того, нужно знать формат USA (адрес последовательности).
Нужно выбрать 5 упражнений из списка, выполнить их и записать правильные команды в текстовый файл ~/term3/pr9/emboss.txt. Файл должен быть в следующем формате:
#number command #number command ...
где number – номер упражнения, command – команда, которая это упражнение выполняет. Файл должен быть с переносами строк в формате Unix, и лишних пустых строк быть не должно. Наличие входных и результирующих файлов проверять не буду, только сами команды.
Упражнения:
- Несколько файлов в формате fasta собрать в единый файл.
- Один файл в формате fasta с несколькими последовательностями разделить на отдельные fasta файлы (в презентации есть слайд про это).
Из файла с аннотированной хромосомой в формате gb (из GenBank или RefSeq) или embl (из ENA) вырезать три кодирующих последовательности по указанным координатам "от", "до", "ориентация" и сохранить в одном fasta файле.
- Транслировать (с первого кодона, то есть в первой рамке) кодирующие последовательности, лежащие в одном fasta файле, в аминокислотные, используя указанную таблицу генетического кода, и положить результат в один fasta файл.
- Вывести открытые рамки длиной не менее заданной, имеющиеся в данной нуклеотидной последовательности, используя указанную таблицу генетического кода.
- Перевести выравнивание из формата fasta в формат msf.
- Выдать в файл число совпадающих букв между второй последовательностью выравнивания и всеми остальными (на выходе только имена последовательностей и числа).
- (featcopy) Перевести аннотации особенностей из файла формата gb или embl в табличный формат gff.
- (extractfeat) Из данного файла с хромосомой в формате gb или embl получить fasta файл с кодирующими последовательностями.
- Перемешать буквы в данной нуклеотидной последовательности.
- Создать три случайных нуклеотидных последовательностей длины 100.
- Найти частоты кодонов в данных кодирующих последовательностях.
(tranalign) Выровнять кодирующие последовательности соответственно выравниванию белков – их продуктов.
- Удалить символы гэпов из выравнивания (превратив его тем самым снова в набор невыровненных последовательностей).
- Перевести символы конца строки из формата Windows в формат Unix (с помощью программы из пакета EMBOSS).
Использовать можно любые входные последовательности. Для многих заданий данные можно найти в папке /P/y20/term3/pr9 на kodomo. Везде, где написано, что надо использовать что-то "указанное" или "заданное", выбор на ваше усмотрение, но нельзя оставлять значение по-умолчанию.
3. Работа с Entrez Direct
Проверять буду наличие сценария bash с именем ~/term3/pr9/edirect.sh. Должна быть возможность запуска сценария без указания интерпретатора, т.е. в файле должен быть shebang, и у владельца файла должно быть право на исполнение.
Сценарий должен содержать три описанных ниже конвейера в указанном порядке.
Конвейер 1: получает AC записи в базе Nucleotide (из первого аргумента сценария edirect.sh) и скачивает эту запись в формате (-format) docsum в виде (-mode) json. Сохраняет выдачу в файл {AC}.json, {AC} – это полученный АС нуклеотидной записи. Работу конвейера надо проверить на геноме прокариотического вируса, выбранного вами в задании 2 практикума 7. Посмотрите на содержимое файла, может быть найдете ответы на некоторые вопросы, на которые не смогли ответить при выполнении пр. 7.
Конвейер 2: получает АС записи в базе Nucleotide (из первого аргумента сценария edirect.sh), переходит по ссылкам на записи в базе дынных Protein и загружает их в формате fasta в файл {AC}_proteins.fasta, {AC} – это полученный АС нуклеотидной записи. Работу конвейера надо проверить на геноме прокариотического вируса, выбранного вами в задании 2 практикума 7.
Конвейер 3: получает AC записи в базе Assembly (из второго аргумента сценария edirect.sh), и печатает в STDOUT ID записи (не AC) и N50 для контигов этой сборки в виде строки {ID} <tab> {N50} (два значения, разделенные символом табуляции). Последовательность шагов придумайте сами. Последний этап (получение нужных полей в нужном формате из XML или JSON) можно реализовать в виде простенького сценария на Python, или с помощью вызова xtract с нужными аргументами. Если это будет сценарий на Python, то он должен лежать в той же папке, иметь адекватное название с расширением py, и не должен создавать каких-либо промежуточных файлов. Конвейер надо проверить на сборке, которую вы выбрали в задании 1 практикума 7.
Пример запуска скрипта:
$ ./edirect.sh "NC_022094.1" "GCA_003604245.1"
2022931 46102
$ ls
...
edirect.sh
NC_022094.1.json
NC_022094.1_proteins.fasta
...