Определение подобия между двумя последовательностями является общей задачей в вычислительной биологии. Начиная с последовательности нуклеотида для человеческого гена этот пример использует алгоритмы выравнивания, чтобы определить местоположение и проверить соответствующий ген в организме модели.
В этом примере вы интересуетесь учащейся болезнью Тея-Сакса. Болезнь Тея-Сакса является автосомальной удаляющейся болезнью, вызванной отсутствием беты-hexosaminidase A фермента (Шестнадцатеричное число А). Этот фермент ответственен за отказ ганглиозидов (GM2) в клетках головного мозга и нервных клетках.
Во-первых, исследовательская информация о болезни Тея-Сакса и ферменте, который сопоставлен с этой болезнью, затем найдите последовательность нуклеотида для человеческого гена, который коды для фермента, и наконец находят, что соответствующий ген в другом организме использует в качестве модели для исследования.
В окне MATLAB Command, введите:
web('https://www.ncbi.nlm.nih.gov/books/NBK22250/')
Ваш браузер документации открывается страницей болезни Тея-Сакса в разделе Genes и Diseases веб-сайта NCBI. Этот раздел обеспечивает всестороннее введение в медицинскую генетику. В частности, эта страница содержит введение и графическое представление Шестнадцатеричного числа фермента А и его роли в метаболизме липида ганглиозид GM2.
После завершения вашего исследования вы завершили следующее:
Ген коды HEXA для альфа-подблока фермента димера hexosaminidase (Шестнадцатеричное число А), в то время как ген коды HEXB для бета подблока фермента. Третий ген, GM2A, коды для белка активатора GM2. Однако это - мутация в гене HEXA, который вызывает болезнь Тея-Сакса.
Следующая процедура иллюстрирует, как найти последовательность нуклеотида для человеческого гена в общедоступной базе данных и считать информации последовательности в среду MATLAB. Много общедоступных баз данных для последовательностей нуклеотида (например, GenBank®, EMBL-EBI) доступны с сети. Командное окно MATLAB с Браузером документации MATLAB обеспечивает интегрированную среду для того, чтобы искать в Интернете и принести информацию о последовательности в среду MATLAB.
После того, как вы определите местоположение последовательности, необходимо переместить данные о последовательности в рабочее пространство MATLAB.
Откройте Браузер документации MATLAB для веб-сайта NCBI. В командном окне MATLAB, введите:
web('https://www.ncbi.nlm.nih.gov/')
Ищите ген, вы интересуетесь изучением. Например, из Поискового списка, выберите Nucleotide
, и в для поля вводят Tay-Sachs
. Ищите гены, которые кодируют альфу и бета подблоки фермента hexosaminidase (Шестнадцатеричное число А) и ген, который кодирует фермент активатора. Ссылка NCBI для человеческого гена HEXA имеет инвентарный номер NM_000520
.
Получите данные о последовательности в среду MATLAB. Например, чтобы получить информацию последовательности для человеческого гена HEXA, введите:
humanHEXA = getgenbank('NM_000520')
humanHEXA = struct with fields:
LocusName: 'NM_000520'
LocusSequenceLength: '4785'
LocusNumberofStrands: ''
LocusTopology: 'linear'
LocusMoleculeType: 'mRNA'
LocusGenBankDivision: 'PRI'
LocusModificationDate: '18-JAN-2021'
Definition: 'Homo sapiens hexosaminidase subunit alpha (HEXA), transcript variant 2, mRNA.'
Accession: 'NM_000520'
Version: 'NM_000520.6'
GI: ''
Project: []
DBLink: []
Keywords: 'RefSeq; MANE Select.'
Segment: []
Source: 'Homo sapiens (human)'
SourceOrganism: [4×65 char]
Reference: {[1×1 struct] [1×1 struct] [1×1 struct] [1×1 struct] [1×1 struct] [1×1 struct] [1×1 struct] [1×1 struct] [1×1 struct] [1×1 struct]}
Comment: [48×66 char]
Features: [160×74 char]
CDS: [1×1 struct]
Sequence: 'ctcacgtggccagccccctccgagaggggagaccagcgggccatgacaagctccaggctttggttttcgctgctgctggcggcagcgttcgcaggacgggcgacggccctctggccctggcctcagaacttccaaacctccgaccagcgctacgtcctttacccgaacaactttcaattccagtacgatgtcagctcggccgcgcagcccggctgctcagtcctcgacgaggccttccagcgctatcgtgacctgcttttcggttccgggtcttggccccgtccttacctcacagggaaacggcatacactggagaagaatgtgttggttgtctctgtagtcacacctggatgtaaccagcttcctactttggagtcagtggagaattataccctgaccataaatgatgaccagtgtttactcctctctgagactgtctggggagctctccgaggtctggagacttttagccagcttgtttggaaatctgctgagggcacattctttatcaacaagactgagattgaggactttccccgctttcctcaccggggcttgctgttggatacatctcgccattacctgccactctctagcatcctggacactctggatgtcatggcgtacaataaattgaacgtgttccactggcatctggtagatgatccttccttcccatatgagagcttcacttttccagagctcatgagaaaggggtcctacaaccctgtcacccacatctacacagcacaggatgtgaaggaggtcattgaatacgcacggctccggggtatccgtgtgcttgcagagtttgacactcctggccacactttgtcctggggaccaggtatccctggattactgactccttgctactctgggtctgagccctctggcacctttggaccagtgaatcccagtctcaataatacctatgagttcatgagcacattcttcttagaagtcagctctgtcttcccagatttttatcttcatcttggaggagatgaggttgatttcacctgctggaagtccaacccagagatccaggactttatgaggaagaaaggcttcggtgaggacttcaagcagctggagtccttctacatccagacgctgctggacatcgtctcttcttatggcaagggctatgtggtgtggcaggaggtgtttgataataaagtaaagattcagccagacacaatcatacaggtgtggcgagaggatattccagtgaactatatgaaggagctggaactggtcaccaaggccggcttccgggcccttctctctgccccctggtacctgaaccgtatatcctatggccctgactggaaggatttctacatagtggaacccctggcatttgaaggtacccctgagcagaaggctctggtgattggtggagaggcttgtatgtggggagaatatgtggacaacacaaacctggtccccaggctctggcccagagcaggggctgttgccgaaaggctgtggagcaacaagttgacatctgacctgacatttgcctatgaacgtttgtcacacttccgctgtgaattgctgaggcgaggtgtccaggcccaacccctcaatgtaggcttctgtgagcaggagtttgaacagacctgagccccaggcaccgaggagggtgctggctgtaggtgaatggtagtggagccaggcttccactgcatcctggccaggggacggagccccttgccttcgtgccccttgcctgcgtgcccctgtgcttggagagaaaggggccggtgctggcgctcgcattcaataaagagtaatgtggcatttttctataataaacatggattacctgtgtttaaaaaaaaaagtgtgaatggcgttagggtaagggcacagccaggctggagtcagtgtctgcccctgaggtcttttaagttgagggctgggaatgaaacctatagcctttgtgctgttctgccttgcctgtgagctatgtcactcccctcccactcctgaccatattccagacacctgccctaatcctcagcctgctcacttcacttctgcattatatctccaaggcgttggtatatggaaaaagatgtaggggcttggaggtgttctggacagtggggagggctccagacccaacctggtcacagaagagcctctcccccatgcatactcatccacctccctcccctagagctattctcctttgggtttcttgctgcttcaattttatacaaccattatttaaatattattaaacacatattgttctctaggcactgtggtagtgggtttttttgttgtttttgtttttgagactgtctcaaaaactctgtcgcccaggctgacagtgcagtggcacaatcttggctcactgcagcctctgcctcctgggttcaagcgattctcgtgcatcagcctcctgagtaactggaattaataggcacgtgccaccatgtccatctaattcatatatatatattttttttttctgagacggagtctcactgtcacacaggctggagtgcagtggcacgatctcgactcactgcaagctccacctcctgggttcacgccattctcctgcctcagcctccccagtagctgggactacaggcgcccgccaccacgcccggctaattttttgtatttttagtagagatggggtttctccgtgttagccaggatggtctcgatctcctgacctcgtgatccgcccgccttggcctcccaaagtgctgggattacaggcgtgagccaccgcgcccggccgaattcatctatttttagtagagatggggtttcactatattggccaggctggtcttgaactcatgacctcagatgttcacttgtcttggcctcccaaagtgctgggattagaggcgtgagccaccgcacgcgggcctgtggtaaattgttgaatttgaaggactcagaggccctggtcaattccaaaataacgtaggcgacttccatccccctcctcccaaccattttcagcccaaagcatcttcgcagggaatggatggctgcgcggaggtgggcggtggctctggagagggtctttgcaggtgtgattttctctagaaggaaatgtctcgtcgtggacccagactgccccctcctggtttcagatgcagaagtgatactgtaagccagaggcgggggcagtaatgcatcgcagccattttaggtgaggatttccttggcggttatttgttaagttctttggctgggccctgggctggggtaacaatggacaggttccaggcatttttttcagaaagcttccagtgtagtggatacagaaacttcaggaaggcagggctgagaaggatctgagtaaaactcggtccttcaacaccatccttcagcccctgggtcatgttccttcgaggtcctggtgggaggtagacaagcctagccttgtgctgttcctgtaaggacagggtgggcattttctaccaacagaattcttggaattttcacacagcccagcctagccaagtccagggctatagcccagatacacaagttaaggtcccagcactggcacccaccacaggagcccccttacctctattacccagaagcttgtaggaggggtggtccgcagacaaggaccctgcacaggtgcgaccctgcttccctcctggtcataactttcatgttactattgcttgggataatgttaagtaaaaatagcagacactgagttttaagtctcaagtggatgaaggcagagatcgtgatacacttgagttaaagcagtagggttctgtcattttctattcctgttgtaaacattttctttaatgttattatttttaccactaaactaacgtggcctggtcacgactttcattggtaaagtgtgctgttcctcaccctccaccgttgctcctttggtccactgatcataagagcatttacctgaaggtcgtcagacctcgaatgccaacaggtcaactgcagtggcctgcagttaccacccagtctgttccaatgaacagaatcgctgttgccccaactcatctcccttcacctaggctgtaaattgaaagtcccacccctgagcggaacacaggccatcttgtgtgctgtgcaccaccagggggtggggaagtttccagactgacttcctggctccagtcatcctaggaaaagagttctccagtcgctccccacccccaccccttcccattccaggagtctattaaggaggcaaagcaggcctaacgggtatcaaagcaaaggagtgaatggagactgggagagtcttcaacctctcctctccttggtaggagctgaggctgcatgccaggtaccttcccttcgaggaatctaataaagctaggtcactggtgttttcaggtgcttctcaaaggattgccgtaggggtaggatatcaggatgtgggagcacaggtgccaccacagcactagtgatggagagtcattgcccctagacttctgggacagtgagactgtgaggaaagctgaaatgatactgggaaagggtgaaagaaaggatgtaggtggaatttatttagtattaatgtaggtacacataccttatggcaacattcctagcactctaaattctagatttgtatagtttctgtcaatatcttttgtaagcttaatcaatacagggcatgacaagtatgtgtcacatacttttttttccacgaagaaaaaaaataagtaggaattgggtgctttgtttatcaaaatttgtatttcctttataaataaactttgaaataaaggttgaaaattagta'
SearchURL: 'https://www.ncbi.nlm.nih.gov/entrez/viewer.fcgi?db=nuccore&id=NM_000520'
RetrieveURL: 'https://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=nuccore&id=1677538638&rettype=gb&retmode=text&api_key=55022f38eb25e2f6b00a772015c7b77d6208'
Следующая процедура иллюстрирует, как найти последовательность нуклеотида для гена мыши связанной с человеческим геном, и считайте информации последовательности в среду MATLAB. Последовательность и функция многих генов сохраняются во время эволюции разновидностей через гомологичные гены. Гомологичные гены являются генами, которые имеют общего предка и подобные последовательности. Одна цель поиска общедоступной базы данных состоит в том, чтобы найти подобные гены. Если вы можете определить местоположение последовательности в базе данных, которая похожа на ваш неизвестный ген или белок, вероятно, что функция и характеристики известных и неизвестных генов являются тем же самым.
После нахождения последовательности нуклеотида для человеческого гена можно сделать поиск BLAST или поиск в геноме другого организма для соответствующего гена. Эта процедура использует геном мыши в качестве примера.
В окне MATLAB Command, введите:
web('http://www.ncbi.nlm.nih.gov')
Ищите базу данных нуклеотида ген или белок, вы интересуетесь изучением. Например, из Поискового списка, выберите Nucleotide
, и в для поля вводят hexosaminidase A
.
Поиск возвращает записи для мыши и геномов человека. В целях этого примера используйте инвентарный номер AK080777
для гена мыши HEXA.
Получите информацию последовательности для гена мыши в среду MATLAB.
mouseHEXA = getgenbank('AK080777')
Следующая процедура иллюстрирует, как преобразовать последовательность от нуклеотидов до аминокислот и идентифицировать открытые рамки считывания. Последовательность нуклеотида включает регулирующие последовательности до и после раздела кодирования белка. Путем анализа этой последовательности можно определить нуклеотиды что код для аминокислот в итоговом белке.
После того, как у вас есть список генов, вы интересуетесь изучением, можно определить последовательности кодирования белка. Эта процедура использует человеческий ген HEXA и ген мыши HEXA как пример.
Если вы не получали генные данные с сети, можно загрузить данные в качестве примера из MAT-файла, включенного с программным обеспечением Bioinformatics Toolbox™. В окне MATLAB Command, введите:
load hexosaminidase
Найдите открытые рамки считывания (ORFs) в человеческом гене. Например, для человеческого гена HEXA, введите:
humanORFs = seqshoworfs(humanHEXA.Sequence)
humanORFs=1×3 struct array with fields:
Start
Stop
seqshoworfs
создает структуру output humanORFs
. Эта структура содержит положение запуска и кодонов остановки для всех открытых рамок считывания (ORFs) на каждой рамке считывания. Фигура отображает эти три рамки считывания с ORFs, окрашенным в синий, красный цвет, и зеленый. Заметьте, что самый длинный ORF находится в системе координат первого чтения.
Найдите открытые рамки считывания (ORFs) в гене мыши. Войдите:
mouseORFs = seqshoworfs(mouseHEXA.Sequence)
mouseORFs=1×3 struct array with fields:
Start
Stop
Ген мыши показывает самый длинный ORF на системе координат первого чтения.
Следующая процедура иллюстрирует, как использовать глобальные и локальные функции выравнивания, чтобы сравнить две последовательности аминокислот. Вы могли использовать функции выравнивания, чтобы искать общие черты между двумя последовательностями нуклеотида, но функции выравнивания возвращают более биологически значимые результаты, когда вы используете последовательности аминокислот.
После того, как вы определили местоположение открытых рамок считывания на своих последовательностях нуклеотида, можно преобразовать разделы кодирования белка последовательностей нуклеотида к их соответствующим последовательностям аминокислот, и затем можно сравнить их для общих черт.
Используя открытые рамки считывания, идентифицированные ранее, преобразуйте человека и последовательности ДНК мыши к последовательностям аминокислот. Поскольку и человек и мышь, гены HEXA были в системах координат первого чтения (значение по умолчанию), вы не должны указывать который система координат.
humanProtein = nt2aa(humanHEXA.Sequence); mouseProtein = nt2aa(mouseHEXA.Sequence);
Постройте точечный график, сравнивающий последовательности аминокислот мыши и человек. Точечные диаграммы являются одним из самых легких способов искать подобие между последовательностями. Диагональная линия, показанная ниже, указывает, что может быть хорошее выравнивание между этими двумя последовательностями.
warning('off','bioinfo:seqdotplot:imageTooBigForScreen'); seqdotplot(mouseProtein,humanProtein,4,3); ylabel('Mouse hexosaminidase A (alpha subunit)') xlabel('Human hexosaminidase A (alpha subunit)') uif = gcf; uif.Position(:) = [100 100 1280 800]; % Resize the figure.
warning('on','bioinfo:seqdotplot:imageTooBigForScreen');
Глобально выровняйте эти две последовательности аминокислот, с помощью алгоритма Needleman-Wunsch.
[GlobalScore, GlobalAlignment] = nwalign(humanProtein,mouseProtein)
GlobalScore = 634.3333
GlobalAlignment = 3×812 char array
'SCRRPAQSAARSRSLRSRPEVKGQGVGPPGVAGAEPPLVT*FADKSRGRRSPDQGLTWPAPSERGDQRAMTSSRLWFSLLLAAAFAGRATALWPWPQNFQTSDQRYVLYPNNFQFQYDVSSAAQPGCSVLDEAFQRYRDLLFGSGSWPRPYLTGKRHTLEKNVLVVSVVTPGCNQLPTLESVENYTLTINDDQCLLLSETVWGALRGLETFSQLVWKSAEGTFFINKTEIEDFPRFPHRGLLLDTSRHYLPLSSILDTLDVMAYNKLNVFHWHLVDDPSFPYESFTFPELMRKGSYNPVTHIYTAQDVKEVIEYARLRGIRVLAEFDTPGHTLSWGPGIPGLLTPCYSGSEPSGTFGPVNPSLNNTYEFMSTFFLEVSSVFPDFYLHLGGDEVDFTCWKSNPEIQDFMRKKGFGEDFKQLESFYIQTLLDIVSSYGKGYVVWQEVFDNKVKIQPDTIIQVWREDIPVNYMKELELVTKAGFRALLSAPWYLNRISYGPDWKDFYIVEPLAFEGTPEQKALVIGGEACMWGEYVDNTNLVPRLWPRAGAVAERLWSNKLTSDLTFAYERLSHFRCELLRRGVQAQPLNVGFCEQEFEQT*APGTEEGAGCR*MVVEPGFHCILARGRSPLPSCPLPACPCAWRERGRCWRSHSIKSNVAFFYNKHGLPVFKKKSVNGVRVRAQPGWSQCLPLRSFKLRAGNETYSLCAVLPCL*AMSLPSHS*PYSRHLP*SSACSLHFCIISPRRWYMEKDVGAWRCSGQWGGLQTQPGHRRASPPCILIHLPPLELFSFGFLAASILYNHYLNIIKHILFS'
' || |: | | | | | ||:: ||| |||||||:| ||||||||| :|| :||:||||||||:| |||||| || ||||||:|||:||||||||||| :::|::|| ||:||||||| ||::|:|||||||||||||||||| |||||||||||||||||||||||||||||||:|:|||||||||:|||||||||||||||||||||||||:|||||||||| |||||||||||| ||||:|||||||||||||||||||||||||||||||||||||||||| |||||||||||: ||||||||||||:||:||||:|||:|||||||||||||||||||||||||:|| ||:|||| ||||||||||||||||||:| |||||||||||||||::||||||||||::||:|| |:: :|:|||||||||||||||::|||||||:| ||||||:||||||||||||||||||||||:||||||||||||||||||||::||::: ||::|||||||||:|||:||||::|| |||||||||| | :| : :|| | | || |: :: | | :: | : :| : | :| : : | ::: | | |::| : | | | :| ||::|| | |: | | | :: |: | '
'--------AA------------GR--------G---------A----G-R-------W----------AMAGCRLWVSLLLAAALACLATALWPWPQYIQTYHRRYTLYPNNFQFRYHVSSAAQAGCVVLDEAFRRYRNLLFGSGSWPRPSFSNKQQTLGKNILVVSVVTAECNEFPNLESVENYTLTINDDQCLLASETVWGALRGLETFSQLVWKSAEGTFFINKTKIKDFPRFPHRGVLLDTSRHYLPLSSILDTLDVMAYNKFNVFHWHLVDDSSFPYESFTFPELTRKGSFNPVTHIYTAQDVKEVIEYARLRGIRVLAEFDTPGHTLSWGPGAPGLLTPCYSGSHLSGTFGPVNPSLNSTYDFMSTLFLEISSVFPDFYLHLGGDEVDFTCWKSNPNIQAFMKKKGF-TDFKQLESFYIQTLLDIVSDYDKGYVVWQEVFDNKVKVRPDTIIQVWREEMPVEYMLEMQDITRAGFRALLSAPWYLNRVKYGPDWKDMYKVEPLAFHGTPEQKALVIGGEACMWGEYVDSTNLVPRLWPRAGAVAERLWSSNLTTNIDFAFKRLSHFRCELVRRGIQAQPISVGCCEQEFEQT*A--T--SA--E----HPG-------G------C----CP---------L-SQ-LR--*A--------P---RR-V--LALR-E----Q-VP--G-Q---G-*SFT---------A-SRPGES---T---P----CP---C--APVT--TEKEAGA----GT--GV--Q---*R-----------------------S-MW-HF-------L--'
Можно также визуализировать выравнивание в приложении Sequence Alignment. Выравнивание очень хорошо между положением 69 и 599 аминокислоты, после которого эти две последовательности, кажется, не связаны. Заметьте, что существует остановка (*
) в последовательности в этой точке. Если вы сокращаете последовательности, чтобы включать только аминокислоты, которые находятся в белке, вы можете получить лучшее выравнивание. Включайте положения аминокислоты от первого метионина (M
) к первой остановке (*
) это происходит после первого метионина.
seqalignviewer(GlobalAlignment);
Обрежьте последовательность, сначала запускают аминокислоту (обычно M
) к первой остановке (*
) и затем попробуйте выравнивание снова. Найдите индексы для остановок в последовательностях.
humanStops = find(humanProtein == '*')
humanStops = 1×6
41 599 611 713 722 730
mouseStops = find(mouseProtein == '*')
mouseStops = 1×4
539 557 574 606
Рассмотрение последовательности аминокислот для humanProtein
, первый M
в положении 70 и первой остановке после того, как то положение будет на самом деле второй остановкой в последовательности (положение 599). Рассмотрение последовательности аминокислот для mouseProtein
, первый M
в положении 11 и первой остановке после того, как то положение будет первой остановкой в последовательности (положение 557).
Обрежьте последовательности, чтобы включать только аминокислоты в белок и остановку.
humanProteinORF = humanProtein(70:humanStops(2))
humanProteinORF = 'MTSSRLWFSLLLAAAFAGRATALWPWPQNFQTSDQRYVLYPNNFQFQYDVSSAAQPGCSVLDEAFQRYRDLLFGSGSWPRPYLTGKRHTLEKNVLVVSVVTPGCNQLPTLESVENYTLTINDDQCLLLSETVWGALRGLETFSQLVWKSAEGTFFINKTEIEDFPRFPHRGLLLDTSRHYLPLSSILDTLDVMAYNKLNVFHWHLVDDPSFPYESFTFPELMRKGSYNPVTHIYTAQDVKEVIEYARLRGIRVLAEFDTPGHTLSWGPGIPGLLTPCYSGSEPSGTFGPVNPSLNNTYEFMSTFFLEVSSVFPDFYLHLGGDEVDFTCWKSNPEIQDFMRKKGFGEDFKQLESFYIQTLLDIVSSYGKGYVVWQEVFDNKVKIQPDTIIQVWREDIPVNYMKELELVTKAGFRALLSAPWYLNRISYGPDWKDFYIVEPLAFEGTPEQKALVIGGEACMWGEYVDNTNLVPRLWPRAGAVAERLWSNKLTSDLTFAYERLSHFRCELLRRGVQAQPLNVGFCEQEFEQT*'
mouseProteinORF = mouseProtein(11:mouseStops(1))
mouseProteinORF = 'MAGCRLWVSLLLAAALACLATALWPWPQYIQTYHRRYTLYPNNFQFRYHVSSAAQAGCVVLDEAFRRYRNLLFGSGSWPRPSFSNKQQTLGKNILVVSVVTAECNEFPNLESVENYTLTINDDQCLLASETVWGALRGLETFSQLVWKSAEGTFFINKTKIKDFPRFPHRGVLLDTSRHYLPLSSILDTLDVMAYNKFNVFHWHLVDDSSFPYESFTFPELTRKGSFNPVTHIYTAQDVKEVIEYARLRGIRVLAEFDTPGHTLSWGPGAPGLLTPCYSGSHLSGTFGPVNPSLNSTYDFMSTLFLEISSVFPDFYLHLGGDEVDFTCWKSNPNIQAFMKKKGFTDFKQLESFYIQTLLDIVSDYDKGYVVWQEVFDNKVKVRPDTIIQVWREEMPVEYMLEMQDITRAGFRALLSAPWYLNRVKYGPDWKDMYKVEPLAFHGTPEQKALVIGGEACMWGEYVDSTNLVPRLWPRAGAVAERLWSSNLTTNIDFAFKRLSHFRCELVRRGIQAQPISVGCCEQEFEQT*'
Глобально выровняйте обрезанные последовательности аминокислот.
[GlobalScore_trim, GlobalAlignment_trim] = nwalign(humanProteinORF,mouseProteinORF); seqalignviewer(GlobalAlignment_trim);
Другой способ обрезать последовательность аминокислот только до тех аминокислот в белке состоит в том, чтобы сначала обрезать последовательность нуклеотида с индексами от seqshoworfs
функция. Помните, что ORF для человеческого гена HEXA и ORF для мыши HEXA были оба на системе координат первого чтения.
humanORFs = seqshoworfs(humanHEXA.Sequence)
humanORFs=1×3 struct array with fields:
Start
Stop
mouseORFs = seqshoworfs(mouseHEXA.Sequence)
mouseORFs=1×3 struct array with fields:
Start
Stop
humanPORF = nt2aa(humanHEXA.Sequence(humanORFs(1).Start(1):humanORFs(1).Stop(1))); mousePORF = nt2aa(mouseHEXA.Sequence(mouseORFs(1).Start(1):mouseORFs(1).Stop(1))); [GlobalScore2, GlobalAlignment2] = nwalign(humanPORF, mousePORF); seqalignviewer(GlobalAlignment2);
Результат сначала обрезающий последовательность нуклеотида прежде, чем преобразовать это в последовательность аминокислот совпадает с результатом усечения последовательности аминокислот после преобразования. Альтернативный метод к работе с подпоследовательностями должен использовать локальную функцию выравнивания с неусеченными последовательностями.
Локально выровняйте эти две последовательности аминокислот с помощью алгоритма Смита-лодочника.
[LocalScore, LocalAlignment] = swalign(humanProtein,mouseProtein); seqalignviewer(LocalAlignment);
close all;