Для подсчета берется файл в формате .fasta.
Код на python:
from sys import argv
with open(argv[1]) as f:
f = f.read().split('>')
# название первой послед-ти
a = f[1]
seq_name1 = a.split()[0]
# название второй послед-ти
b = f[2]
seq_name2 = b.split()[0]
# первая послед-ть целиком
c = a.split('\n')[1:]
seq1 = ''.join(c)
# вторая послед-ть целиком
d = b.split('\n')[1:]
seq2 = ''.join(d)
# подсчет инделей в 1
flag1 = False
k1 = 0
for i in seq1:
if i == '-':
if not flag1:
flag1 = True
k1 += 1
else:
flag1 = False
# подсчет инделей в 2
flag2 = False
k2 = 0
for i in seq2:
if i == '-':
if not flag2:
flag2 = True
k2 += 1
else:
flag2 = False
print(seq_name1, k1)
print(seq_name2, k2)
print('Total', k1+k2)
Выбранные мнемоники: ZUR_, 6PGD_, ACCA_.
Результаты выравнивания программой needle (глобальное выравнивание) с параметрами по умолчанию представлены в таблице 1.
| Protein name | ID 1 | ID 2 | Score | % Identity | % Similarity | Gaps | Indels |
|---|---|---|---|---|---|---|---|
| 6-phosphogluconate dehydrogenase, NADP(+)-dependent, decarboxylating | 6PGD_ECOLI | 6PGD_BACSU | 1718.0 | 70.0 | 83.4 | 3 | 3 |
| Acetyl-coenzyme A carboxylase carboxyl transferase subunit alpha | ACCA_ECOLI | ACCA_BACSU | 814.5 | 51.1 | 66.0 | 14 | 4 |
| Zinc-specific metallo-regulatory protein | ZUR_ECOLI | ZUR_BACSU | 93.0 | 21.0 | 33.7 | 46 | 9 |
Выбранные мнемоники: ZUR_, 6PGD_, ACCA_.
Результаты выравнивания программой water (локальное выравнивание) с параметрами по умолчанию представлены в таблице 2.
| Protein name | ID 1 | ID 2 | Score | % Identity | % Similarity | Gaps | Indels | Coverage 1 (%) | Coverage 2 (%) |
|---|---|---|---|---|---|---|---|---|---|
| 6-phosphogluconate dehydrogenase, NADP(+)-dependent, decarboxylating | 6PGD_ECOLI | 6PGD_BACSU | 1719.0 | 70.1 | 83.6 | 3 | 3 | 99.6 | 99.8 |
| Acetyl-coenzyme A carboxylase carboxyl transferase subunit alpha | ACCA_ECOLI | ACCA_BACSU | 814.5 | 51.1 | 66.0 | 14 | 4 | 100.0 | 99.0 |
| Zinc-specific metallo-regulatory protein | ZUR_ECOLI | ZUR_BACSU | 93.0 | 21.0 | 33.7 | 46 | 9 | 96.6 | 93.3 |
Глобальное выравнивание через программу needle показало большие проценты идентичности (70.0%) и сходства (83.4%), небольшое количество гэпов (3 штуки) и большой вес (1718.0).
Локальное выравнивание через программу water также показало большие проценты идентичности (70.1%) и сходства (83.6%) и крайне высокие проценты покрытия – 99.6% для первой последовательности и 99.8% для второй последовательности.
Тем самым, мы можем вполне уверенно говорить о гомологии данных белков по всей длине на основе их высокого сходства. И глобальное, и локальное выравнивания показывают эту гомологичность хорошо.
Глобальное выравнивание через программу needle показало 51.1% идентичности и 66.0% сходства. Количество гэпов – 14, вес выравнивания – 814.5.
Локальное выравнивание через программу water показало такие же параметры. Процент покрытия для первой последовательности – 100%, для второй – 99.0%.
Исходя из этого, мы можем утверждать о гомологии этих белков по всей длине. Обе программы (needle и water) отражают это.
Глобальное выравнивание через программу needle показало низкий вес (93.0), маленькие проценты идентичности (21.0%) и сходства (33.7%), а также большое количество гэпов.
Локальное выравнивание через программу water показало такие же результаты. Процент покрытия для первой последовательности – 99.6%, для второй – 93.3%.
Тем самым, мы можем говорить только о гомологии некоторых участков этих белков, но точно не о гомологии по всей дине. И глобальное, и локальное выравнивания в данном случае дают однозначно утверждать об отсутствии гомологии по всей длине.
Были выбраны белки AAAT_ECOLI и 4OT_BACSU, для которых были построены глобальное (через программу needle) и локальное (через программу water) выравнивания. Результаты представлены в таблице 3 и 4.
| Protein 1 name | ID 1 | Protein 2 name | ID 2 | Score | % Identity | % Similarity | Gaps | Indels |
|---|---|---|---|---|---|---|---|---|
| L-amino acid N-acetyltransferase AaaT | AAAT_ECOLI | 2-hydroxymuconate tautomerase | 4OT_BACSU | 13.0 | 6.2 | 13.6 | 130 | 4 |
| Protein 1 name | ID 1 | Protein 2 name | ID 2 | Score | % Identity | % Similarity | Gaps | Indels | Coverage 1 (%) | Coverage 2 (%) |
|---|---|---|---|---|---|---|---|---|---|---|
| L-amino acid N-acetyltransferase AaaT | AAAT_ECOLI | 2-hydroxymuconate tautomerase | 4OT_BACSU | 13.0 | 25.0 | 45.0 | 0 | 0 | 100.0 | 100.0 |
Мы видим, что белки однозначно имеют гомологичный участок (но точно не гомологичны по всей длине), которые хорошо показывает локальное выравнивание через программу water.
Для поиска белков была выбрана мнемоника ACCA_. Рекомендованное полное имя для белка из ECOLI: Acetyl-coenzyme A carboxylase carboxyl transferase subunit alpha. С помощью запроса (id:ACCA_*) было получено 465 находок.
Выбранные для множественного выравнивания белки:
Проект выравнивания: 9pr.jvp
Выравнивание было выполнено с помощью программы MUSCLE, окраска по clustal и conservation (identity=50%).
По моему мнению, данное выравнивание хорошее, так как все белки схожи – об этом можно судить по большому количеству консервативных колонок, а также гэпам, расположенным в одних и тех же местах у разных последовательностей. После окраски выравнивания видно, что в основном консервативные колонки сконцентрированы в центре последовательностей: примерно с 65 по 275 колонки.