Использование матриц подсчета для измерения эволюционного расстояния

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

Доступ к веб-сайту и базе данных NCBI

Больше информации о ретинобластоме можно найти в разделе «Гены и болезни» веб-сайта NCBI.

Ссылка «BLink» на этой странице показывает родственные последовательности в разных организмах. Эти ссылки могут часто меняться, поэтому в данном примере можно загрузить набор ранее сохраненных данных из MAT-файла.

load retinoblastoma

Можно также использовать getgenpept функция для извлечения информации о последовательности из репозитория данных NCBI и загрузки ее в MATLAB.

human = getgenpept('AAA69808','SequenceOnly',true);
chicken = getgenpept('NP_989750','SequenceOnly',true);
trout = getgenpept('AAD13390','SequenceOnly',true);
xenopus = getgenpept('A44879','SequenceOnly',true);

Выравнивание CAH72243 (белок человека) к CAA51019 (куриный белок)

Одним из подходов к изучению связи между этими двумя белками является использование глобального выравнивания со nwalign функция.

[sc,hvc] = nwalign(human,chicken)
sc = 1.4543e+03
hvc = 3x938 char array
    'MPPKTPRKTAATAAAAAAEPPAPPPPPPPEEDPEQDSGPEDLPLVRLEFEETEEPDFTALCQKLKIPDHVRERAWLTWEKVSSVDGVLGGYIQKKKELWGICIFIAAVDLDEMSFTFTELQKNIEISVHKFFNLLKE--I--DT-STKVDNAMSRLLKKYDVLFALFSKLERTCELIYLTQPSSSISTEINSALVLKVSWITFLLAKGEVLQMEDDLVISFQLMLCVLDYFIKLSPPMLLKEPYKTAV--IPINGSPRTPRRGQNRSARIAKQLENDTRIIEVLCKEHECNIDEVKNVYFKNFIPFMNSLGLVTSNGLPEVENLSKRYEEIYLKNKDLDARLFLDHDKTLQTDSIDSFETQRTPRKSNLDEEVNVIPPHTPVRTVMNTIQQLMMILNSASDQPSENLISYFNNCTVNPKESILKRVKDIGYIFKEKFAKAVGQGCVEIGSQRYKLGVRLYYRVMESMLKSEEERLSIQNFSKLLNDNIFHMSLLACALEVVMATYSRSTSQ-NLDSG-TDLSFPWILNVLNLKAFDFYKVIESFIKAEGNLTREMIKHLERCEHRIMESLAWLSDSPLFDLIKQSKDREGPTDHLESACPLNLPLQNNHTAADMYLSPVRSPKKKGSTTRVNSTANAETQATSAFQTQKPLKSTSLSLFYKKVYRLAYLRLNTLCERLLSEHPELEHIIWTLFQHTLQNEYELMRDRHLDQIMMCSMYGICKVKNIDLKFKIIVTAYKDLPHAVQETFKRVLIKEEEYDSIIVFYNSVFMQRLKTNILQYASTRPPTLSPIPHIPRSPYKFPSSPLRIP-GGNIYISPLKSPYKISEGLPTPTKMTPRSRILVSIGESFGTSEKFQKINQMVCNSDRVLKRSAEGSNPPKPLKKLRFDIEGSDEADGSKHLPGESKFQQKLAEMTSTRTRMQKQKMNDSMDTSNKEEK'
    '|||| | : |::| :  : | :      |   |   :|      :|||  |: |  |:|||: || || |||:||:|:::::::||: ::| :|||| ||:||||:|:|||||:|||||| |:: |||  ||::|||  :  || |||||:::||| ||||||:||: |:|||| |||| |||| ||:|::|:||||  |||||||||:||||||||||||||:||||||||||||| :||||||:||  : :||| |||||||||:|| :||:::||::||:|||||:||:|||||||| :||||:||||:|:|||||||: |||:|:|:||||||:|||||||||:||| | |   : :|||||:| ||||| : |:||||::||||||||||||||:|:||::||:|||||||||::||||||:::|:|||:|||:||||||:|||||||:||||||||||||||||||||||::|||||||||||| ||||||||:|||||:|::|| :  |: |||||||||||::|||||||||||||||:| :|||:|||||||||||||||||| |||||||||||||:||| ||: | :  ||||||:||||||:|||||||||||:|    ::|:| ::| ::: ||||| ||||||||||||:|||||||:||  |||||||:|| :|||||||||||| ||||||||||||||||||||||||:||:|| ||:|||:||:: |||||||||:||:||||||||| ||||:||||||||||:||||||||||||||||:| :|| |:| |:||||||||||||:|:|: :||||||||||||||||:|||||||||||||||||:  :||||| |: |||||:|||||||:|||||:|||| ||||||||||||||||||||||:||: ||| :|||'
    'MPPK-PLRRAGAARSQRTSPEGGAGTASP---P---GG------TRLEVGEA-E--FVALCDALKAPDSVREKAWMTYQSLAAADGA-SAYNKKKKETWGVCIFIVAIDLDEMTFTFTELLKSLSISVCTFFQFLKEVDVNMDTVSTKVDSTVSRLKKKYDVLLALYHKFERTCGLIYLEQPSSEISAELSSVLVLKNYWITFLLAKGKVLQMEDDLVISFQLLLCVLDYFIKLSPPAMLKEPYKSAVTALTVNGSTRTPRRGQNRNARASKQIDTDTKVIEILCKEHDCNLDEVKNVYFTSFIPFLNSLGVVASNGLPEVDVLSKQYDELYLKNKDIDARLFLDHDETLQPDVIACSQLERTPRKNNPDEEVNHVLPQTPVRAAMNTIQQLMMILNSATDKPSDTLIAYFNNCTVNPEDSILKRVESLGHIFKKKFAEAVGQGCAEIGSQRYQLGVRLYYRVMESMLKSEEERLSVHNFSKLLNDNIFHTSLLACALEIVMATYGRTASQSDGTSAETDLSFPWILNVFDLKAFDFYKVIESFIKVEPSLTRDMIKHLERCEHRIMESLAWQSDSPLFDLIKQSKEREGQTDQPEPTSTLNLPLQHNHTAADLYLSPVRSPKKKASGHPQSGTSNPDAQPSATSQTQKPQKSTSLSLFYKKVFRLAYLRLHTLFFRLLSEHPDLEPLIWTLFQHTLQNESELMRDRHLDQIMMCSMYGICKVKNVDLRFKTIVSAYKELPNTNQETFKRVLIREEQYDSIIVFYNLVFMQKLKTNILQYASNRPPTLSPIPHIPRSPYQFSNSPRRVPAGNNIYISPLKSPYKFSDGFHSPTKMTPRSRILVSIGETFGTSEKFQKINQMVCNSESHVKRSAEPSDAPKPLKRLRFDIEGQDEADGGKHLPQESKFQQKLAEMTSTRTRMQKQKLNDGNDTSANEEK'

В этом выравнивании функция использовала матрицу оценки по умолчанию, BLOSUM62. Различные матрицы скоринга могут давать различные выравнивания. Как найти лучшее выравнивание? Один из подходов состоит в том, чтобы попробовать различные матрицы оценки и искать самый высокий счет. Когда счет от функций выравнивания находится в одной шкале (в этом случае, битах), можно сравнить различные выравнивания, чтобы увидеть, который дает самый высокий счет.

Этот пример использует семейство матриц PAM, хотя используемый подход может также использоваться с семейством матриц оценки BLOSUM. Семейство PAM матриц в Bioinformatics Toolbox™ состоит из 50 матриц, PAM10, PAM20..., PAM490, PAM500.

Берите две последовательности (CAH72243 и CAA51019) и выравнивайте их по каждому представителю семейства PAM, а затем ищите самый высокий счет.

score = zeros(1,50);
fprintf('Trying different PAM matrices ')
Trying different PAM matrices 
for step = 1:50
   fprintf('.')
   PamNumber = step * 10;
   [matrix,info] = pam(PamNumber);
   score(step) = nwalign(human,chicken,'scoringmatrix',matrix,'scale',info.Scale);
end
..................................................

Графическое изображение счетов

Можно использовать plot функция для создания графика результатов.

x = 10:10:500;
plot(x,score)
legend('Human vs. Chicken');
title('Global Alignment Scores for Different PAM Scoring Matrices');
xlabel('PAM matrix');ylabel('Score (bits)');

Figure contains an axes. The axes with title Global Alignment Scores for Different PAM Scoring Matrices contains an object of type line. This object represents Human vs. Chicken.

Нахождение лучшего счета

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

[bestScore, idx] = max(score)
bestScore = 2.2605e+03
idx = 3

Выравнивание по отношению к другим организмам

Повторите это с разными организмами: ксенопусом и радужной форелью.

xenopusScore = zeros(1,50);
troutScore = zeros(1,50);
fprintf('Trying different PAM matrices ')
Trying different PAM matrices 
for step = 1:50
   fprintf('.')
   PamNumber = step * 10;
   [matrix,info] = pam(PamNumber);
   xenopusScore(step) = nwalign(human,xenopus,'scoringmatrix',matrix,'scale',info.Scale);
   troutScore(step) = nwalign(human,trout,'scoringmatrix',matrix,'scale',info.Scale);
end
..................................................

Добавление дополнительных линий к тому же графику

Можно использовать команду hold on чтобы сообщить MATLAB ® добавить новые графики к существующему рисунку. Завершив это, вы должны не забывать отключить эту функцию при помощи hold off.

hold on
plot(x,xenopusScore,'g')
plot(x,troutScore,'r')
legend({'Human vs. Chicken','Human vs. Xenopus','Human vs. Trout'});box on
title('Global Alignment Scores for Different PAM Scoring Matrices');
xlabel('PAM matrix');ylabel('Score (bits)');
hold off

Figure contains an axes. The axes with title Global Alignment Scores for Different PAM Scoring Matrices contains 3 objects of type line. These objects represent Human vs. Chicken, Human vs. Xenopus, Human vs. Trout.

Нахождение лучших счетов

Вы увидите, что различные матрицы дают самые высокие счета для различных организмов. Для человека и ксенопуса лучший счет с PAM40, а для человека и форели лучший счет PAM50.

[bestXScore, Xidx] = max(xenopusScore)
bestXScore = 1607
Xidx = 4
[bestTScore, Tidx] = max(troutScore)
bestTScore = 1484
Tidx = 5

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