Jalview успешно установлен! Пришлось повозиться, но дело сделано!
Для начала нам надо получить 2 списка, первый из которых содержит все аннотированные записи, чей ID заканчивается на "_ECOLI" (штамма К12 кишечной палочки), а второй - на "_BACSU" (штамма 168 сенной палочки). Я решил пойти по простому пути и воспользовался командами:
$ infoseq 'sw:*_ECOLI' -only -name -out ecoli.txt $ infoseq 'sw:*_BACSU' -only -name -out bacsu.txt
Вот результаты: ecoli.txt, bacsu.txt.
Найти из них совпадающие я решил с помощью скрипта. Вот ссылки на скрипт и результат его работы.
Отобрать из найденных пар функциально совпадающих белков 2-х организмов 3 пары я также решил с помощью скрипта, так как мне было слишком лень выбирать самому. Вот скрипт и результат его работы:
SYGB_ECOLI SYGB_BACSU RL27_ECOLI RL27_BACSU RS18_ECOLI RS18_BACSU
Дабы найти рекомендованные названия для всех 3-х белков, я воспользовался командой entret из пакета EMBOSS:
$ entret 'sw:SYGB_ECOLI' -filter | grep 'DE ' DE RecName: Full=Glycine--tRNA ligase beta subunit; DE EC=6.1.1.14; DE AltName: Full=Glycyl-tRNA synthetase beta subunit; DE Short=GlyRS; lewis@kodomo:~/term2/pr5$ entret 'sw:SYGB_BACSU' -filter | grep 'DE ' DE RecName: Full=Glycine--tRNA ligase beta subunit; DE EC=6.1.1.14; DE AltName: Full=Glycyl-tRNA synthetase beta subunit; DE Short=GlyRS;
Для того, чтобы найти названия других белков, я использовал ту же команду.
Для того, чтобы построить глобальное парное выравнивание 2-х белков, я воспользовался программой needle:
needle 'sw:SYGB_ECOLI' 'sw:SYGB_BACSU' 'sygb.needle' -auto
Аналогичными командами я воспользовался при выравнивании и 2-х других пар белков. Вот результаты: sygb.needle, rl27.needle, rs18.needle.
Характеристики глобального парного выравнивания трёх пар белков | |||||||
---|---|---|---|---|---|---|---|
Рекомендованное имя белка | ID | Длина в парах | Вес в битах | Идентичность | Сходство | Гэпы | Индели |
Glycine--tRNA ligase beta subunit | SYGB_ECOLI | 695 | 1074.5 | 35.5% | 55.1% | 22 | 10 |
SYGB_BACSU | |||||||
50S ribosomal protein L27 | RL27_ECOLI | 95 | 232 | 53.7% | 62.1% | 11 | 3 |
RL27_BACSU | |||||||
30S ribosomal protein S18 | RS18_ECOLI | 80 | 209 | 48.8% | 63.8% | 6 | 2 |
RS18_BACSU |
Для построения парных локальных выравниваний я использовал программу water из пакета программ EMBOSS:
water 'sw:SYGB_ECOLI' 'sw:SYGB_BACSU' 'sygb.water' -auto
Аналогичными командами были найдены и остальные 2 выравнивания. Вот результаты: sygb.water, rl27.water, rs18.water.
Для поиска длин последовательностей белков я использовал команду infoseq:
$ infoseq 'sw:SYGB_BACSU' -only -length -filter Length 679
Характеристики локального парного выравнивания трёх пар белков | ||||||||
---|---|---|---|---|---|---|---|---|
Рекомендованное имя белка | ID | Длина в парах | Вес в битах | Идентичность | Сходство | Гэпы | Индели | Покрытие выравниванием белка |
Glycine--tRNA ligase beta subunit | SYGB_ECOLI | 692 | 1077.5 | 35.7% | 55.3% | 20 | 9 | 99.9% |
SYGB_BACSU | 99.6% | |||||||
50S ribosomal protein L27 | RL27_ECOLI | 81 | 237 | 63% | 72.8% | 1 | 1 | 95.3% |
RL27_BACSU | 85.1% | |||||||
30S ribosomal protein S18 | RS18_ECOLI | 65 | 218 | 60% | 78.5% | 0 | 0 | 86.7% |
RS18_BACSU | 82.3% |
Для составления выравниваний и сбора информации о них я использовал все те же самые команды и программы, которые указаны выше. Здесь будут приведены сразу результаты и характеристики выравниваний.
Выбирал я белки из тех же кишечной палочки штамма К12 и сенной палочки штамма 168 с помощью файлов ecoli.txt, bacsu.txt и скрипта, выводящего 3 выбранных случайно строки файла (см. выше). В итоге я выбрал пару LPOA_ECOLI и NADA_BACSU.
Построим выравнивания. Результаты: nongom.needle, nongom.water.
Характеристики глобального парного выравнивания белков LPOA_ECOLI и NADA_BACSU | |||||||
---|---|---|---|---|---|---|---|
Рекомендованное имя белка | ID | Длина в парах | Вес в битах | Идентичность | Сходство | Гэпы | Индели |
Penicillin-binding protein activator LpoA | LPOA_ECOLI | 809 | 42 | 8% | 15.5% | 572 | 24 |
Quinolinate synthase A | NADA_BACSU |
Характеристики локального парного выравнивания белков LPOA_ECOLI и NADA_BACSU | ||||||||
---|---|---|---|---|---|---|---|---|
Рекомендованное имя белка | ID | Длина в парах | Вес в битах | Идентичность | Сходство | Гэпы | Индели | Покрытие выравниванием белка |
Penicillin-binding protein activator LpoA | LPOA_ECOLI | 171 | 54 | 19.3% | 38.6% | 51 | 9 | 19.2% |
Quinolinate synthase A | NADA_BACSU | 43.8% |
Выравнивания гомологичных белков от выравниваний НЕгомологичных белков отличаются практически всеми характеристиками:
Всё выше перечисленное подтверждается моим экспериментом.
Для поиска последовательностей (всего их нашлось 349 штук) и выбора из них 5-ти штук для исследования я воспользовался всё теми же командой и скриптом, которые указаны выше. Остановился я на мнемонике функции белка "SYGB". Вот результат поиска:
SYGB_ECOUT SYGB_MARHV SYGB_ALIFM SYGB_STRP7 SYGB_LISMF
К этим белкам ещё добавим SYGB_ECOLI и SYGB_BACSU, которые мы выравнивали в заданиях выше.
Построим множественное выравнивание.
Для этого я создал файл sygb1.txt, который имеет вид:
sw:SYGB_ECOLI sw:SYGB_BACSU sw:SYGB_ECOUT sw:SYGB_MARHV sw:SYGB_ALIFM sw:SYGB_STRP7 sw:SYGB_LISMF
С помощью этого файла и команды seqret я создал sygb.fasta, в котором хранятся выбранные мною последовательности в fasta-формате:
$ seqret @sygb1.txt sygb.fasta
Это необходимо для построения выравнивания.
Само выравнивание я построил с помощью muscle:
$ muscle -in sygb.fasta -out sygb_align.fasta
Вот результат выравнивания: sygb_align.fasta.
Позже выравнивание было импортировано в JalView.
Информация о множественном выравнивании 7-ми белков с мнемоникой функции SYGB | |||
---|---|---|---|
Рекомендованное название белка | Всего белков нашлось | Выбранные ID | Проект JalView |
Glycine--tRNA ligase beta subunit | 349 штук | SYGB_ECOLI | sygb_7_align.jvp |
SYGB_BACSU | |||
SYGB_ECOUT | |||
SYGB_MARHV | |||
SYGB_ALIFM | |||
SYGB_STRP7 | |||
SYGB_LISMF |
Анализ множественного выравнивания в JalView показал, что вероятность того, что все белки гомологичны, довольно высока. Такой вывод можно сделать, опираясь на то, что большое количество столбцов идентичны или схожи. Конечно, не обошлось и без участков, которые не подтверждают моей теории (например, большая вставка в столбцах 509-522 или индели в столбцах 605-608), но они в абсолютном меньшинстве.
В целом, в выравнивании довольно много высококонсервативных участков (например, столбцы 7-16 и 51-55), которые, на мой взгляд, преобладают над некоторым количеством неконсервативных участков (например, столбцы 28-34 и 118-123).
Пользуясь всеми вышеизложенными командами и программами, я нашёл по мнемонике функции белка его вероятного гомолога и построил локальное выравнивание (именно локальное потому, что я счёл его более объективной оценкой гомологии 2-х белков). По этой ссылке вы сможете найти результат выравнивания программой water.
Характеристики локального парного выравнивания белков | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
Рекомендованное имя белка | ID | Организм | Семейство | Длина в парах | Вес в битах | Идентичность | Сходство | Гэпы | Индели | Покрытие выравниванием белка |
Bacteriorhodopsin | BACR_HALSA | Halobacterium salinarum (strain ATCC 700922) | Halobacteriaceae | 248 | 651 | 53.2% | 66.5% | 11 | 3 | 92% |
Cruxrhodopsin-1 | BACR_HALAR | Haloarcula argentinensis | 97.6% |
Несмотря на разные рекомендованные названия и организмы, в которых найдены исследуемые белки, вес у выравнивания достаточно велик, также, как и процент идентичности. Ещё мы можем заметить, что при длине выравнивания в 248 пар гэпов всего 11 штук, а инделей так вообще 3. Учитывая все вышеприведённые факторы, можно смело сказать, что исследуемые белки гомологичны. Ура-ура-ура!
Обычно мы запускаем эти программы с параметром -auto, что очень удобно, позволяет не вводить многократно одно и то же. Но всё же, какие параметры с нас спросят эти программы, если мы запустим их без опции -auto? Давайте попробуем:
$ water 'sw:BACR_HALSA' 'sw:BACR_HALAR' 'bacr.water' Smith-Waterman local alignment of sequences Gap opening penalty [10.0]: Gap extension penalty [0.5]:
Аналогичные вопросы будет задавать и программа needle:
$ needle 'sw:BACR_HALSA' 'sw:BACR_HALAR' 'bacr.needle' Needleman-Wunsch global alignment of two sequences Gap opening penalty [10.0]: Gap extension penalty [0.5]:
Обе программы просят нас ввести какие-то gap opening penalty и gap extension penalty... Давайте разберёмся, что это. Как мы знаем из курса биоинформатики на ФББ 2-го семестра (лекция 9, лектор: Спирин С. А.):
Так, теперь понятно, что это за параметры такие. Но как их изменение повлияет на выравнивание?
Согласно источнику Megasoftware (дата последнего просмотра: 26.04.2020), если увеличить значение gap opening penalty, то это уменьшит количество, как я понял, инделей в выравнивании. А если увеличить значение gap extension penalty, то это уменьшит длину инделей в выравнивании. Интересно... Давайте проверим!
Как мы можем заметить выше, когда программы спрашивают с нас эти штрафы, они записывают рядом с названиями штрафов некие числа в квадратных скобках. Исходя из той же самой лекции Спирина С. А., мы знаем, что это те самые значения по умолчанию, которые задаются, если запустить программу с параметром -auto или нажав "enter", когда программа будет эти параметры с нас спрашивать непосредственно.
При запуске программы water с параметрами по умолчанию (я взял для проверки белки, которые использовал в задании 5), мы можем заметить 11 гэпов и 3 инделя, а при запуске программы needle - 34 гэпа и 5 инделей.
Увеличим оба штрафа в 2 раза. Water: 6 гэпов и 1 индель, needle: 24 гэпа и 3 инделя.
Уменьшим оба штрафа в 2 раза. Water: 26 гэпов и 12 инделей, needle: 30 гэпов и 13 инделей.
Как мы можем заметить, частично моя теория подтвердилась, но она также требует дальнейшего исследования, которое я вижу бессмысленным.