Сравнение целых геномов

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

Этот пример использует две деформации хламидии, Хламидии трахоматис и Chlamydophila pneumoniae. Это тесно связанные бактерии, которые вызывают отличающийся, хотя оба очень распространенные, болезни в людях. Целые геномы доступны в базе данных GenBank® для обоих организмов.

Получение геномов

Можно загрузить эти геномы с помощью функции getgenbank. Во-первых, мы посмотрим на Хламидию трахоматис. Заметьте, что геном является круговым и чуть более чем один миллион BP в длине. Эти последовательности являются довольно большими, так может требовать времени к загрузке.

seqtrachomatis = getgenbank('NC_000117');

Затем, загрузите Chlamydophila pneumoniae. Этот геном является также круговым и немного более длинным в 1.2 Mbp.

seqpneumoniae = getgenbank('NC_002179');

Для вашего удобства ранее загруженные последовательности включены в MAT-файл. Обратите внимание на то, что данные в общедоступных репозиториях часто курируются и обновляются; поэтому результаты этого примера могут немного отличаться, когда вы используете актуальные наборы данных.

load('chlamydia.mat','seqtrachomatis','seqpneumoniae')

Очень простой подход для сравнения этих двух геномов должен выполнить попарное выравнивание между всеми генами в геномах. Учитывая, что это бактериальные геномы, простой подход должен был бы сравнить весь ORFs в этих двух геномах. Однако данные GenBank включают больше информации о генах в последовательностях. Это хранится в поле CDS структуры данных. У хламидии трахоматис есть 895 областей кодирования, в то время как Chlamydophila pneumoniae имеет 1112.

M = numel(seqtrachomatis.CDS)
N = numel(seqpneumoniae.CDS)
M =

   895


N =

        1112

Большинство записей CDS содержит перевод в последовательности аминокислот. Первая запись CDS в данных о Хламидии трахоматис является гипотетическим белком длины 591 остаток.

seqtrachomatis.CDS(1)
ans = 

  struct with fields:

       location: 'join(1041920..1042519,1..1176)'
           gene: []
        product: 'hypothetical protein'
    codon_start: '1'
        indices: [1041920 1042519 1 1176]
     protein_id: 'NP_219502.1'
        db_xref: 'GeneID:884145'
           note: []
    translation: 'MSIRGVGGNGNSRIPSHNGDGSNRRSQNTKGNNKVEDRVCSLYSSRSNENRESPYAVVDVSSMIESTPTSGETTRASRGVFSRFQRGLVRVADKVRRAVQCAWSSVSTRRSSATRAAESGSSSRTARGASSGYREYSPSAARGLRLMFTDFWRTRVLRQTSPMAGVFGNLDVNEARLMAAYTSECADHLEANKLAGPDGVAAAREIAKRWEQRVRDLQDKGAARKLLNDPLGRRTPNYQSKNPGEYTVGNSMFYDGPQVANLQNVDTGFWLDMSNLSDVVLSREIQTGLRARATLEESMPMLENLEERFRRLQETCDAARTEIEESGWTRESASRMEGDEAQGPSRAQQAFQSFVNECNSIEFSFGSFGEHVRVLCARVSRGLAAAGEAIRRCFSCCKGSTHRYAPRDDLSPEGASLAETLARFADDMGIERGADGTYDIPLVDDWRRGVPSIEGEGSDSIYEIMMPIYEVMDMDLETRRSFAVQQGHYQDPRASDYDLPRASDYDLPRSPYPTPPLPPRYQLQNMDVEAGFREAVYASFVAGMYNYVVTQPQERIPNSQQVEGILRDMLTNGSQTFRDLMRRWNREVDRE'
           text: [19x58 char]

Четвертая запись CDS для gatA гена, который имеет glutamyl-тРНК продукта amidotransferase подблок A. Длина последовательности продукта является 491 остатком.

seqtrachomatis.CDS(4)
ans = 

  struct with fields:

       location: '2108..3583'
           gene: 'gatA'
        product: [2x47 char]
    codon_start: '1'
        indices: [2108 3583]
     protein_id: 'NP_219505.1'
        db_xref: 'GeneID:884087'
           note: [7x58 char]
    translation: 'MYRKSALELRDAVVNRELSVTAITEYFYHRIESHDEQIGAFLSLCKERALLRASRIDDKLAKGDPIGLLAGIPIGVKDNIHITGVKTTCASKMLENFVAPFDSTVVRRIEMEDGILLGKLNMDEFAMGSTTRYSAFHPTNNPWDLERVPGGSSGGSAAAVSARFCPIALGSDTGGSIRQPAAFCGVVGFKPSYGAVSRYGLVAFGSSLDQIGPLTTVVEDVALAMDAFAGRDPKDSTTRDFFKGTFSQALSLEVPKLIGVPRGFLDGLQEDCKENFFEALAVMEREGSRIIDVDLSVLKHAVPVYYIVASAEAATNLARFDGVRYGHRCAQADNMHEMYARSRKEGFGKEVTRRILLGNYVLSAERQNIFYKKGMAVRARLIDAFQAAFERCDVIAMPVCATPAIRDQDVLDPVSLYLQDVYTVAVNLAYLPAISVPSGLSKEGLPLGVQFIGERGSDQQICQVGYSFQEHSQIKQLYPKAVNGLFDGGIE'
           text: [26x58 char]

Несколько из CDS Chlamydophila pneumoniae имеют пустые переводы. Мы можем заполнить их в использовании функций от Bioinformatics Toolbox. Найдите все пустые переводы, затем отобразите первый пустой перевод.

missingPn = find(cellfun(@isempty,{seqpneumoniae.CDS.translation}));
seqpneumoniae.CDS(missingPn(1))
ans = 

  struct with fields:

       location: 'complement(73364..73477)'
           gene: []
        product: 'hypothetical protein'
    codon_start: '1'
        indices: [73477 73364]
     protein_id: 'NP_444613.1'
        db_xref: 'GeneID:963699'
           note: 'hypothetical protein; identified by Glimmer2'
    translation: []
           text: [10x52 char]

Функциональный featureparse извлекает функции, такие как CDS, от структуры последовательности. Можно затем использовать cellfun, чтобы применить nt2aa к последовательностям с недостающими переводами.

allCDS = featureparse(seqpneumoniae,'Feature','CDS','Sequence',true);
missingSeqs = cellfun(@nt2aa,{allCDS(missingPn).Sequence},'uniform',false);
[seqpneumoniae.CDS(missingPn).translation] = deal(missingSeqs{:});
seqpneumoniae.CDS(missingPn(1))
ans = 

  struct with fields:

       location: 'complement(73364..73477)'
           gene: []
        product: 'hypothetical protein'
    codon_start: '1'
        indices: [73477 73364]
     protein_id: 'NP_444613.1'
        db_xref: 'GeneID:963699'
           note: 'hypothetical protein; identified by Glimmer2'
    translation: 'MLTDQRKHIQMLHKHNSIEIFLSNMVVEVKLFFKTLK*'
           text: [10x52 char]

Выполнение генных сравнений

Сравнение gatA гена у Хламидии трахоматис со всеми генами CDS в Chlamydophila pneumoniae очень просто: Только поместите цикл for вокруг функции nwalign. Вы могли альтернативно использовать локальное выравнивание (swalign).

tic
gatAScores = zeros(1,N);
for inner = 1:N
    gatAScores(inner) = nwalign(seqtrachomatis.CDS(4).translation,...
        seqpneumoniae.CDS(inner).translation);
end
toc % |tic| and |toc| are used to report how long the calculation takes.
Elapsed time is 1.941612 seconds.

Гистограмма очков показывает большое количество отрицательных очков и одного очень высокого положительного счета.

hist(gatAScores,100)
title(sprintf(['Alignment Scores for Chlamydia trachomatis %s\n',...
    'with all CDS in Chlamydophila pneumoniae'],seqtrachomatis.CDS(4).gene))

Как вы ожидали бы, высокое соответствие выигрыша с gatA геном в Chlamydophila pneumoniae.

[gatABest, gatABestIdx] = max(gatAScores);
seqpneumoniae.CDS(gatABestIdx)
ans = 

  struct with fields:

       location: 'complement(838828..840306)'
           gene: 'gatA'
        product: [2x47 char]
    codon_start: '1'
        indices: [840306 838828]
     protein_id: 'NP_445311.1'
        db_xref: 'GeneID:963139'
           note: [7x58 char]
    translation: 'MYRYSALELAKAVTLGELTATGVTQHFFHRIEEAEGQVGAFISLCKEQALEQAELIDKKRSRGEPLGKLAGVPVGIKDNIHVTGLKTTCASRVLENYQPPFDATVVERIKKEDGIILGKLNMDEFAMGSTTLYSAFHPTHNPWDLSRVPGGSSGGSAAAVSARFCPVALGSDTGGSIRQPAAFCGVVGFKPSYGAVSRYGLVAFASSLDQIGPLANTVEDVALMMDVFSGRDPKDATSREFFRDSFMSKLSTEVPKVIGVPRTFLEGLRDDIRENFFSSLAIFEGEGTHLVDVELDILSHAVSIYYILASAEAATNLARFDGVRYGYRSPQAHTISQLYDLSRGEGFGKEVMRRILLGNYVLSAERQNVYYKKATAVRAKIVKAFRTAFEKCEILAMPVCSSPAFEIGEILDPVTLYLQDIYTVAMNLAYLPAIAVPSGFSKEGLPLGLQIIGQQGQDQQVCQVGYSFQEHAQIKQLFSKRYAKSVVLGGQS'
           text: [26x58 char]

Попарное выравнивание одного гена от Хламидии трахоматис со всеми генами от Chlamydophila pneumoniae занимает чуть менее чем минуту на Intel® Pentium 4, машина на 2,0 ГГц рабочий Windows® XP. Чтобы сделать это вычисление для всех 895 CDS у Хламидии трахоматис заняло бы приблизительно 12 часов на той же машине. Не прокомментируйте следующий код, если вы хотите выполнить целое вычисление.

scores = zeros(M,N);
parfor outer = 1:M
   theScore = zeros(1,outer);
   theSeq = seqtrachomatis.CDS(outer).translation;
   for inner = 1:N
       theScore(inner) = ...
           nwalign(theSeq,...
           seqpneumoniae.CDS(inner).translation);
   end
   scores(outer,:) = theScore;
end

Отметьте команду, parfor используется во внешнем цикле. Если ваша машина будет сконфигурирована, чтобы запустить несколько лабораторий затем, то внешний цикл будет выполняться параллельно. Для полного понимания этого построения смотрите doc parfor.

Исследование значения очков

Если вы посмотрите на дистрибутивы музыки к нескольким генам, то вы будете видеть шаблон. CDS (3) из Хламидии трахоматис является gatC геном. Это имеет относительно короткий продукт, подблок aspartyl/glutamyl-tRNA amidotransferase C, только с 100 остатками.

gatCScores = zeros(1,N);
for inner = 1:N
    gatCScores(inner) = nwalign(seqtrachomatis.CDS(3).translation,...
        seqpneumoniae.CDS(inner).translation);
end
figure
hist(gatCScores,100)
title(sprintf(['Alignment Scores for Chlamydia trachomatis %s\n',...
    'with all CDS in Chlamydophila pneumoniae'],seqtrachomatis.CDS(3).gene))
xlabel('Score');ylabel('Number of genes');

Лучший счет снова соответствует тому же гену в Chlamydophila pneumoniae.

[gatCBest, gatCBestIdx] = max(gatCScores);
seqpneumoniae.CDS(gatCBestIdx).product
ans =

  2x47 char array

    'aspartyl/glutamyl-tRNA amidotransferase subunit'
    'C                                              '

CDS (339) из Хламидии трахоматис является uvrA геном. Это имеет очень длинный продукт, excinuclease подблок ABC A, длины 1786.

uvrAScores = zeros(1,N);
for inner = 1:N
    uvrAScores(inner) = nwalign(seqtrachomatis.CDS(339).translation,...
        seqpneumoniae.CDS(inner).translation);
end
figure
hist(uvrAScores,100)
title(sprintf(['Alignment Scores for Chlamydia trachomatis %s\n',...
    'with all CDS in Chlamydophila pneumoniae'],seqtrachomatis.CDS(339).gene))
xlabel('Score');ylabel('Number of genes');

[uvrABest, uvrABestIdx] = max(uvrAScores);
seqpneumoniae.CDS(uvrABestIdx)
ans = 

  struct with fields:

       location: '716887..722367'
           gene: []
        product: 'excinuclease ABC subunit A'
    codon_start: '1'
        indices: [716887 722367]
     protein_id: 'NP_445220.1'
        db_xref: 'GeneID:963214'
           note: [6x58 char]
    translation: 'MKSLPVYVSGIKVRNLKNVSIHFNSEEIVLLTGVSGSGKSSIAFDTLYAAGRKRYISTLPTFFATTITTLPNPKVEEIHGLSPTIAIKQNHFSHYSHATVGSTTELFSHLALLFTLEGQARDPKTKEVLDLYSKEKVLSTIMELSEGVQISILAPLLRKDIAAIHEYAQQGFTKVRCNGTIHPIYSFLTSGIPEDCSVDIVIDTLIKSENNIARLKVSLFTALEFGEGHCSVLSDEELMTFSTKQQIDDVTYTPLTQQLFSPHALESRCSLCQGSGIFISIDNPLLIDENLSIKENCCSFAGNCSSYLYHTIYQALADALNFNLETPWKDLSPEIQNIFLRGKNNLVLPVRLFDQTLGKKNLTYKVWRGVLNDIGDKVRYTTKPSRYLSKGMSAHSCSLCKGTGLGDYASVATWEGKTFTEFQQMSLNNWHVFFSKVKSPSLSIQEILQGLKQRLSFLIDLGLGYLTPNRALATLSGGEQERTAIAKHLGGELFGITYILDEPSIGLHPQDTEKLIGVIKKLRDQGNTVILVEHEERMISLADRIIDIGPGAGIFGGEVLFNGKPEDFLMNSSSLTAKYLRQELTIPIPESREAPTSWLLLTEATIHNLKNLSIRLPLARLIGVTGVSGSGKSSLINNTLVPAIESFLKQENPKNLHFEWGCIGRLIHITRDLPGRSQRSIPLTYIKAFDDIRELFASQPRSLRQGLTKAHFSFNQPQGACIQCQGLGTMTISDDDTPIPCSECQGKRYHSEVLEILYEGKNIADILDMTAYEAEKFFISHPKIHEKIHALCSLRLDYLPLGRPLSTLSGGEIQRLKLAHELLFASPKQTLYVLDEPTTGLHTHDIQALIEVLLSLTYLGHTVLVIEHNMHVVKVCDYVLELGPEGGDLGGYLLASCTPKDLIQLNTPTAKALAPYIEGSLDIPVVKSEPPSSPKSCDILIKDAYQNNLKHIDLALPRNSLIAIAGPGASGKHSLVFDILYASGNIAYAELFPPYIRQGLLKETPLPSVGEVKGLSPVISVRKCSSSNRSYHTIASALGLSNGLEKLFAILGEPFSPLTEEKLSKTTPQTIIDSLLKSYKDDYVTITSPIPLGSDLEIFLQEKQKEGFIKLYSEGNLYDLDERLPLNLIEPAIVIQHTKVSPKNSSSLLSAISVAFSLSSEIWIYISQKKQRKLSYSLGWKDKKGRLYPEITHQLLSSDHPEGRCLTCGGRGEILKISLEEHKEKIAHYTPLEFFSLFFPKSYMKPVQKLLKDENASQPLKLLTTKEFLNFCRGSSEFPGMNALLMEQLDTESDSPLIKPLLALTSCPACKGSGLNDYANYVRINNTSLLDIYQEDATFLESFLNTIGTDDTRSIIQDLMNRLTFISKVGLSYITLGQRQDTLSDGENYRLHLAKKISINLTNIVYLFEEPLSGLHPQDLPTIVQLLKELVANNNTVIATDRSCSLIPHADHAIFLGPGSGPQGGFLMDSDTEVCPSVDLHANVPQTEVCPKAPLSISKANHTRGSDRTLKVNLSIHHIQNLKVSAPLHALVAIGGVSGSGKTSLLLEGFKKQAELLIAKGTTTFSDLVVIDSHPIASSQRSDISTYFDIAPSLRAFYASLTQAKALNISSTMFSTNTKQGQCSDCQGLGYQWIDRAFYALEKRPCPTCSGFRIQPLAQEVLYEGKHFGELLHTPIETVALRFPFIKKIQKPLKALLDIGLGYLPIGQKLSSLSVSEKTALKTAYFLYQTPETPTLFLIDELFSSLDPIKKQHLPEKLRSLINSGHSVIYIDHDVKLLKSADYLIEIGPGSGKQGGKLLFSGSPKDIYASKDSLLKKYICNEELDS'
           text: [46x58 char]

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

lnormgatABest = gatABest./length(seqtrachomatis.CDS(4).product)
lnormgatCBest = gatCBest./length(seqtrachomatis.CDS(3).product)
lnormuvrABest = uvrABest./length(seqtrachomatis.CDS(339).product)
lnormgatABest =

   16.8794


lnormgatCBest =

    2.2695


lnormuvrABest =

   78.9615

Альтернативный метод нормализации должен использовать сам счет выравнивания, который является счетом от выравнивания последовательности с собой.

gatASelf = nwalign(seqtrachomatis.CDS(4).translation,...
    seqtrachomatis.CDS(4).translation);
gatCSelf = nwalign(seqtrachomatis.CDS(3).translation,...
    seqtrachomatis.CDS(3).translation);
uvrASelf = nwalign(seqtrachomatis.CDS(339).translation,...
    seqtrachomatis.CDS(339).translation);
normgatABest = gatABest./gatASelf
normgatCBest = gatCBest./gatCSelf
normuvrABest = uvrABest./uvrASelf
normgatABest =

    0.7380


normgatCBest =

    0.5212


normuvrABest =

    0.5253

Используя разреженные матрицы, чтобы уменьшать использование памяти

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

Разреженная матрица, spScores, в MAT-файле chlamydia.mat содержат положительные значения от всех против всего попарного вычисления выравнивания, нормированного счетом самосовмещения.

load('chlamydia.mat','spScores')

С матрицей очков можно посмотреть на распределение множества генов Chlamydophila pneumoniae, выровненных с Хламидией трахоматис и обратным из этого, гены Хламидии трахоматис, выровненные с генами Chlamydophila pneumoniae

figure
subplot(2,1,1)
hist(max(spScores),100)
title('Highest Alignment Scores for Chlamydophila pneumoniae Genes')
xlabel('Score');ylabel('Number of genes');
subplot(2,1,2)
hist(max(spScores,[],2),100)
title('Highest Alignment Scores for Chlamydia trachomatis Genes')
xlabel('Score');ylabel('Number of genes');

Помните, что существует 1 112 CDS в Chlamydophila pneumoniae и только 895 у Хламидии трахоматис. Высокое количество нулевых очков в главной гистограмме указывает, что многие из дополнительного CDS в Chlamydophila pneumoniae не имеют хороших соответствий у Хламидии трахоматис.

Другой способ визуализировать данные состоит в том, чтобы посмотреть на положения точек в матрице очков, которые положительны. Разреженный функциональный spy является простым способом быстро просмотреть точечные диаграммы матриц. Это показывает некоторую интересную структуру в положениях высоких соответствий выигрыша.

figure
spy(spScores > 0)
title(sprintf('Dot Plot of High-Scoring Alignments.\nNormalized Threshold = 0'))

Если мы повышаем порог немного выше, то мы видим очень ясные диагональные строки в графике.

spy(spScores >.1)
title(sprintf('Dot Plot of High-Scoring Alignments.\nNormalized Threshold = 0.1'))

Помните, что это круговые геномы, и кажется, что отправные точки в GenBank произвольны. Если мы переставляем матрицу очков так, чтобы лучшее соответствие первого CDS в Chlamydophila pneumoniae было в первой строке затем, мы видим ясный диагональный график. Это показывает synteny между этими двумя организмами.

[bestScore bestMatch] = max(spScores(:,1));
spy(spScores([bestMatch:end 1:bestMatch-1],:)>.1);
title('Synteny Plot of Chlamydophila pneumoniae and Chlamydia trachomatis')

Поиск гомологичных генов

Гены в различных геномах, которые связаны друг с другом, как говорят, гомологичны. Подобие может быть видообразованием (ортологические гены) или репликацией (paralogous гены). Теперь, когда у нас есть матрица выигрыша, мы можем искать оба типа отношений.

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

[bestScores, bestIndices] = max(spScores);

Переменная bestIndices содержит индекс лучших взаимных пар для генов в Chlamydophila pneumoniae. Если мы сортируем лучшие очки и составляем таблицу, чтобы сравнить описание лучших взаимных пар, мы видим очень высокое подобие между самыми высокими выигрывающими лучшими взаимными парами.

[orderedScores, permScores] = sort(full(bestScores),'descend');
matches = [num2cell(orderedScores)',num2cell(bestIndices(permScores))',...
    num2cell((permScores))',...
    {seqtrachomatis.CDS(bestIndices(permScores)).product;...
    seqpneumoniae.CDS((permScores)).product; }'];

for count = 1:7
    fprintf(['Score %f\nChlamydia trachomatis Gene    : %s\n',...
        'Chlamydophila pneumoniae Gene : %s\n\n'],...
    matches{count,1}, matches{count,4}, matches{count,5})
end
Score 0.982993
Chlamydia trachomatis Gene    : 50S ribosomal protein L36
Chlamydophila pneumoniae Gene : 50S ribosomal protein L36

Score 0.981818
Chlamydia trachomatis Gene    : 30S ribosomal protein S15
Chlamydophila pneumoniae Gene : 30S ribosomal protein S15

Score 0.975422
Chlamydia trachomatis Gene    : integration host factor alpha-subunit
Chlamydophila pneumoniae Gene : integration host factor beta-subunit

Score 0.971647
Chlamydia trachomatis Gene    : 50S ribosomal protein L16
Chlamydophila pneumoniae Gene : 50S ribosomal protein L16

Score 0.970105
Chlamydia trachomatis Gene    : 30S ribosomal protein S10
Chlamydophila pneumoniae Gene : 30S ribosomal protein S10

Score 0.969554
Chlamydia trachomatis Gene    : rod shape-determining protein MreB
Chlamydophila pneumoniae Gene : rod shape-determining protein MreB

Score 0.953654
Chlamydia trachomatis Gene    : hypothetical protein
Chlamydophila pneumoniae Gene : hypothetical protein

Можно использовать Редактора переменных, чтобы посмотреть на данные в формате электронной таблицы.

open('matches')

Если мы сравниваем описания, мы видим, что у большинства лучших взаимных пар есть идентичные описания.

exactMatches = strcmpi(matches(:,4),matches(:,5));
sum(exactMatches)
ans =

   808

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

mismatches = matches(~exactMatches,:);
for count = 1:7
    fprintf(['Score %f\nChlamydia trachomatis Gene    : %s\n',...
        'Chlamydophila pneumoniae Gene : %s\n\n'],...
        mismatches{count,1}, mismatches{count,4}, mismatches{count,5})
end
open('mismatches')
Score 0.975422
Chlamydia trachomatis Gene    : integration host factor alpha-subunit
Chlamydophila pneumoniae Gene : integration host factor beta-subunit

Score 0.929565
Chlamydia trachomatis Gene    : low calcium response D
Chlamydophila pneumoniae Gene : type III secretion inner membrane protein SctV

Score 0.905000
Chlamydia trachomatis Gene    : NrdR family transcriptional regulator
Chlamydophila pneumoniae Gene : transcriptional regulator NrdR

Score 0.903226
Chlamydia trachomatis Gene    : Yop proteins translocation protein S
Chlamydophila pneumoniae Gene : type III secretion inner membrane protein SctS

Score 0.896212
Chlamydia trachomatis Gene    : ATP-dependent protease ATP-binding subunit ClpX
Chlamydophila pneumoniae Gene : ATP-dependent protease ATP-binding protein ClpX

Score 0.890705
Chlamydia trachomatis Gene    : ribonuclease E
Chlamydophila pneumoniae Gene : ribonuclease G

Score 0.884234
Chlamydia trachomatis Gene    : ClpC protease ATPase
Chlamydophila pneumoniae Gene : ATP-dependent Clp protease ATP-binding protein

Если у вас есть выигрыш, матрицируют, это открывает много возможностей для дальнейшего расследования. Например, вы могли искать CDS, где существует несколько высоких выигрывающих взаимных CDS. Смотрите Кристьанини и Хана [1] для дальнейших идей.

Ссылки

[1] Cristianini, N. и Хан, M.W., "Введение в вычислительную геномику: подход тематических исследований", издательство Кембриджского университета, 2007.