Практикум 9

Выравнивание последовательностей

Автор старался, но не может гарантировать отсутствие биологических ошибок.

1. Глобальное парное выравнивание гомологичных белков

Скрипты, использовавшиеся для выполнения задания. Результаты их выдачи можно увидеть в соответствующем разделе. Далее в тексте отсылка на программы будет по номерам (и названиям).

Для выполнения задания, во-первых, были скачены из Uniprot два списка идентификаторов (ID) записей: всех аннотированных записей, чей идентификатор кончается на '_ECOLI' и всех аннотированных записей, чей идентификатор кончается на '_BACSU'. На kodomo были выполнены следующие команды:

infoseq 'sw:*_ECOLI' -only -name -nohead -out ecoli.txt
infoseq 'sw:*_BACSU' -only -name -nohead -out bacsu.txt

(полученные файлы находятся в домашней папке: /home/students/y22/aliserana/term2/pr9/ecoli.txt и /home/students/y22/aliserana/term2/pr9/bacsu.txt). Во-вторых, при помощи программы 1 (simid.py) был получен список пар белков с одинаковой мнемоникой функции и затем ее модфицированной версией, программой 2 (simidmod.py), были выбраны три пары белков. В-третьих, для получения рекомендованного полного имени при помощи конвейеров были проведены соответствующие поиски в полной записи Swiss-Prot. Пример использованного конвейера:

entret sw:ex7s_bacsu -filter | grep '^DE' | grep 'RecName' | less

Для всех пар белков рекомендованные полные имена совпали. В-четвертых, было наконец проведено глобальное парное выравнивание при помощи программ EMBOSS на kodomo:

needle sw:rada_ecoli sw:rada_bacsu rada.needle -auto
needle sw:flgk_ecoli sw:flgk_bacsu flgk.needle -auto
needle sw:ex7s_ecoli sw:ex7s_bacsu ex7s.needle -auto

Соответсвтующие файлы в формате needle хранятся в директории /home/students/y22/aliserana/term2/pr9. По данным в ним были заполнены почти все оставшиеся столбцы таблицы 1 (вес выравнивания, проценты совпадающих и сходных букв, число гэпов). Для подсчета числа инделей результаты выравниваний были получены в более удобном для программного анализа fasta формате (добавление опции -aformat fasta к вышепредставленным командам, файлы хранятся в той же директории). Подсчет был осуществлен с помощью программы 3 (indel.py), скрипт и результаты выдачи прикладываются.

Таблица 1. Характеристики глобального парного выравнивания трёх пар белков.
Protein Name ID 1 ID 2 Score % Identity % Similarity Gaps Indels
DNA repair protein RadA RADA_ECOLI RADA_BACSU 1067.5 46.8% 66.0% 18 10
Flagellar hook-associated protein 1 FLGK_ECOLI FLGK_BACSU 426.5 24.3% 41.9% 150 21
Exodeoxyribonuclease 7 small subunit EX7S_ECOLI EX7S_BACSU 157.5 39.1% 59.8% 10 4

По результатам можно говорить о гомологии первой пары белков. Вторая пара белков по результатам выравнивания вызывает некоторые сомнения, вероятно они очень давно разошлись от общего предка или/и в них сохранились многие мутации. Третья пара белков по длинам аминокислотных остатков оказались в несколько раз короче двух предшествующих, но в целом результаты выравнивания позволяют говорить об их гомологии.

Результаты выдачи программ

Определение пар белков с одинаковой мнемоникой функции

Файл, содержащий пары белков (из списков идентификаторов всех аннотированных записей, чей идентификатор кончается на _ECOLI и _BACSU), идентификаторы Swiss-Prot которых имеют одинаковую мнемонику функции.

Выбор трех пар белков с одинаковой мнемоникой функции

aliserana@kodomo:~/term2/pr9$ ./simidmod.py
Эта программа выбирает три пары белков с совпадающими мнемониками функции.
//мнемоники, начинающиеся на 'Y' целенаправленно отбрасываются
На вход принимаются два списка идентификаторов (ID) записей.
Введите название первого файла с ID записей:
ecoli.txt
Введите название второго файла с ID записей:
bacsu.txt
RADA_ECOLI RADA_BACSU
FLGK_ECOLI FLGK_BACSU
EX7S_ECOLI EX7S_BACSU

Подсчёт числа инделей

aliserana@kodomo:~/term2/pr9$ ./indel.py
Эта программа подсчитывает число инделей в выравнивании.
На вход принимается fasta файл с результатом выравнивания.
Введите название этого файла:
radaneedle.fasta
Число инделей: 10
aliserana@kodomo:~/term2/pr9$ ./indel.py
Эта программа подсчитывает число инделей в выравнивании.
На вход принимается fasta файл с результатом выравнивания.
Введите название этого файла:
flgkneedle.fasta
Число инделей: 21
aliserana@kodomo:~/term2/pr9$ ./indel.py
Эта программа подсчитывает число инделей в выравнивании.
На вход принимается fasta файл с результатом выравнивания.
Введите название этого файла:
ex7sneedle.fasta
Число инделей: 4

2. Локальное парное выравнивание гомологичных белков

Для выполнения парного выравнивания гомологичных белков были взяты те же пары белков. Локальное парное выравнивание выполнено при помощи программ EMBOSS:

water sw:rada_ecoli sw:rada_bacsu rada.water -auto
water sw:flgk_ecoli sw:flgk_bacsu flgk.water -auto
water sw:ex7s_ecoli sw:ex7s_bacsu ex7s.water -auto

Соответсвтующие файлы в формате water также хранятся в директории /home/students/y22/aliserana/term2/pr9. По данным в ним была заполнена часть столбцов таблицы 2 (вес выравнивания, проценты совпадающих и сходных букв, число гэпов). Для подсчета числа инделей использовалась та же программа 3 из прошлого задания. Проценты перекрытия первого и второго белка выравниванием вычислялись вручную - частное длины участка, попавшего в выравнивание (координата_конца-координата_начала+1) и полной длины последовательности (в соответствующих файлах глобального выравнивания).

Таблица 2. Характеристики локального парного выравнивания трёх пар белков.
Protein Name ID 1 ID 2 Score % Identity % Similarity Gaps Indels Coverage 1 Coverage 2
DNA repair protein RadA RADA_ECOLI RADA_BACSU 1075.0 47.4% 67.0% 14 8 98.7% 98.7%
Flagellar hook-associated protein 1 FLGK_ECOLI FLGK_BACSU 433.5 24.5% 42.3% 142 19 98.9% 97.2%
Exodeoxyribonuclease 7 small subunit EX7S_ECOLI EX7S_BACSU 162.5 43.6% 66.7% 3 2 97.5% 89.3%

Результаты парного и глобального выравнивания по весу выравнивания, а особенно по процентам совпадающих и сходных букв отличаются незначительно. В случае локального выравнивания все три показателя слегка увеличились. Число гэпов и инделей уменьшилось у всех пар белков, причем число инделей ровно на 2 единицы у каждой из пар. Проценты перекрытия, на мой взгляд, достаточно большие. Меньший размер третьего перекрытия вероятно связан с более короткими последовательностями аминокислотных остатков у самих белков пары.

Результаты выдачи программ

Подсчёт числа инделей

aliserana@kodomo:~/term2/pr9$ ./indel.py
Эта программа подсчитывает число инделей в выравнивании.
На вход принимается fasta файл с результатом выравнивания.
Введите название этого файла:
radawater.fasta
Число инделей: 8
aliserana@kodomo:~/term2/pr9$ ./indel.py
Эта программа подсчитывает число инделей в выравнивании.
На вход принимается fasta файл с результатом выравнивания.
Введите название этого файла:
flgkwater.fasta
Число инделей: 19
aliserana@kodomo:~/term2/pr9$ ./indel.py
Эта программа подсчитывает число инделей в выравнивании.
На вход принимается fasta файл с результатом выравнивания.
Введите название этого файла:
ex7swater.fasta
Число инделей: 2

3. Результат применения программ выравнивания к неродственным белкам

Случайная пара белков была выбрана при помощи программы 2 задания 1. Проведены локальное и глобальное выравнивания:

needle sw:rsga_ecoli sw:gudd_bacsu wrong.needle -auto
water sw:rsga_ecoli sw:gudd_bacsu wrong.water -auto

Файлы с результатами выравнивания доступны в /home/students/y22/aliserana/term2/pr9. По результатам были заполнены ячейки таблицы 3. Подсчет числа инделей осуществлялся той же программой 3, предварительно получены файлы в fasta формате. Проценты перекрытия также посчитаны вручную.

Таблица 3. Характеристики глобального и локального парного выравнивания пар белков с разными мнемониками функций.
Allignment ID 1 ID 2 Score % Identity % Similarity Gaps Indels Coverage 1 Coverage 2
Global RSGA_ECOLI GUDD_BACSU 33.0 13.7% 21.9% 289 25
Local RSGA_ECOLI GUDD_BACSU 46.0 19.8% 32.0% 106 20 86.6% 56.9%

Результаты выравниваний показывают, что выбранная пара белков действительно не является гомологичной. Показатели глобального и локального выравниваний в данном случае отличаются больше, например, число гэпов уменьшилось в более чем два раза. Локальное выравнивания этой пары по результатам схоже с локальным выравниванием для FLGK_ECOLI и FLGK_BACSU, но все же о гомологичности первой пары и неродственности второй могут говорить проценты перекрытия, особенно для GUDD_BACSU.

Результаты выдачи программ

Подсчёт числа инделей

aliserana@kodomo:~/term2/pr9$ ./indel.py
Эта программа подсчитывает число инделей в выравнивании.
На вход принимается fasta файл с результатом выравнивания.
Введите название этого файла:
wrongneedle.fasta
Число инделей: 25
aliserana@kodomo:~/term2/pr9$ ./indel.py
Эта программа подсчитывает число инделей в выравнивании.
На вход принимается fasta файл с результатом выравнивания.
Введите название этого файла:
wrongwater.fasta
Число инделей: 20

4. Множественное выравнивание белков и импорт в Jalview

Была выбрана мнемоника функции RADA, поскольку для нее были получены наиболее образцовые парные выравнивания из проводившихся. Рекомендованное полное имя белка из ECOLI: DNA repair protein RadA. В Swiss-Prot было найдено 84 белка, чьи идентификаторы начинаются с этой мнемоники:

infoseq 'sw:rada_*' -only -name -nohead | less -N

Дополнительные 5 белков помимо белков из ECOLI и BACSU выбраны программой. В таблице 4 отражена информация о выбранных белках, полученная конвейерами на kodomo, например:

entret sw:rada_chltr -filter | grep '^DE' | grep 'RecName'
entret sw:rada_chltr -filter | grep '^OS'

Решено было построить множенственное выравнивание на kodomo программой muscle. Все работы проводятся в директории /home/students/y22/aliserana/term2/pr9. Был создан списочный файл rada7.txt с идентификаторами выбранных записей в Swiss-Prot. Был создан файл в fasta-формате:

seqret @rada7.txt rada.fasta

После этого запустила muscle:

muscle -in rada.fasta -out rada_allignment.fasta
Таблица 4. Принадлежность организмам белков с выбранной мнемоникой RADA.
Идентификатор записи Рекомендованное название Органнизм
RADA_ECOLI DNA repair protein RadA Escherichia coli (strain K12)
RADA_BACSU DNA repair protein RadA Bacillus subtilis (strain 168)
RADA_CHLTR DNA repair protein RadA Chlamydia trachomatis (strain D/UW-3/Cx)
RADA_METMI DNA repair and recombination protein RadA Methanococcus maripaludis (Methanococcus deltae).
RADA_ARCFU DNA repair and recombination protein RadA Archaeoglobus fulgidus (strain ATCC 49558)
RADA_HELPY DNA repair protein RadA Helicobacter pylori (strain ATCC 700392)
RADA_DESA1 DNA repair and recombination protein RadA Desulfurococcus amylolyticus (strain DSM 18924)

Файл был переведен в /home/students/y22/aliserana/public_html/term2/block4 для дальнейшего экспорта в Jalview. В Jalview колонки выравнивания были окрашены по проценту идентичности: ссылка на проект.

Jalview project for RADA_
Рисунок 1. Фрагмент проекта Jalview с выравниванием для мнемоники RADA.

По моему мнению, белки хорошо выравнялись по двум группам, соответствующим их рекомендованным названиям. У выравнивания всех семи белков нет выраженной структуры и по результатам можно предполагать гомологию белков внутри каждой из двух групп (просто DNA repair protein RadA и DNA repair and recombination protein RadA). Возможно все 7 белков имели очень далекого предка. Более консервативные участки: 1, 25, 94-149, 194-195, 227, 248-252, 325-366. Менее консервативные участки: 24-47, 57-85, 196-205, 253-264, 276-298, 394-477. На остальных участках консервативность практически отсутствует. Решено было провести выравнивание для каждой из групп и убедиться в том, что белки внутри этих групп являются гомологами и это видно лучше в Jalview. Способ множественного выравнивания был выбран тот же. Были созданы файлы rada4.txt и rada3.txt.

seqret @rada4.txt rada4.fasta
seqret @rada3.txt rada3.fasta
muscle -in rada4.fasta -out rada4_allignment.fasta
muscle -in rada3.fasta -out rada3_allignment.fasta

Файлы rada4_allignment и rada3_allignment были переведены в /home/students/y22/aliserana/public_html/term2/block4 для дальнейшего экспорта в Jalview. В Jalview колонки выравнивания были окрашены по проценту идентичности: проекты для 4 и для 3 последовательностей.

Jalview project for RADA_4
Рисунок 2. Фрагмент проекта Jalview с выравниванием для RADA_ECOLI, RADA_HELPY, RADA_BACSU, RADA_CHLTR.
Jalview project for RADA_3
Рисунок 3. Фрагмент проекта Jalview с выравниванием для RADA_METMI, RADA_ARCFU, RADA_DESA1.

По результатам видно, что о гомологии белков в каждом из случаев можно теперь говорить с большей уверенностью. У выравниваний теперь есть выраженные структуры, более консервативных участков стало намного больше, число гэпов и инделей значительно уменьшилось.

Результаты выдачи программ

Выбор пяти белков с мнемоникой функции RADA

aliserana@kodomo:~/term2/pr9$ ./simidmod5.py
Эта программа выбирает n записей белков из списка.
На вход принимается список идентификаторов (ID) записей.
Введите название файла с ID записей:
rada.txt
Сколько записей надо выбрать?
5
Записи с каким идентификатором не надо брать (вводите через пробел, - если можно любые)?
RADA_ECOLI RADA_BACSU
RADA_CHLTR
RADA_METMI
RADA_ARCFU
RADA_HELPY
RADA_DESA1

6. (*) Подсчёт инделей

Программа находится по адресу ~/term2/indels/indels.py. Пример выдачи:

aliserana@kodomo:~/term2/indels$ ./indels.py
../pr9/flgk.water
FLGK_ECOLI 9
FLGK_BACSU 10
Total 19

Список источников

  1. Edgar, R.C. Nucleic Acids Res 32(5), 1792-97.