После секвенирования фрагмента ДНК одной из первых задач является исследование содержания нуклеотидов в последовательности. Начиная с последовательности ДНК, этот пример использует функции статистики последовательностей для определения содержания моно-, ди- и тринуклеотидов и для определения местоположения открытых рамок считывания.
Следующая процедура иллюстрирует использование браузера справки MATLAB ® для поиска информации в Интернете. В этом примере вы заинтересованы в изучении человеческого митохондриального генома. В то время как многие гены, которые кодируют митохондриальные белки, находятся в клеточном ядре, митохондриальный имеет гены, которые кодируют белки, используемые для выработки энергии .
Сначала исследуют информацию о митохондриях человека и находят нуклеотидную последовательность для генома. Затем посмотрите на содержание нуклеотидов для всей последовательности. И, наконец, определить открытые рамки считывания и извлечь определенные последовательности генов.
Для просмотра веб-страниц используйте браузер справки MATLAB. В окне команды MATLAB введите
web('http://www.ncbi.nlm.nih.gov/')
Откроется отдельное окно браузера с главной страницей веб-сайта NCBI.
Поиск информации на веб-сайте NCBI. Например, для поиска генома митохондриона человека в списке Поиск выберите Genome и в списке «Поиск» введите mitochondrion homo sapiens.

Веб-поиск NCBI возвращает список ссылок на соответствующие страницы.

Выберите страницу результатов. Например, щелкните ссылку с меткой NC_012920.
В браузере справки MATLAB отображается страница NCBI для митохондриального генома человека.

Следующая процедура иллюстрирует, как найти нуклеотидную последовательность в общедоступной базе данных и прочитать информацию о последовательности в среде MATLAB. Многие общедоступные базы данных нуклеотидных последовательностей доступны из Сети. Окно команд MATLAB предоставляет интегрированную среду для переноса информации о последовательности в среду MATLAB.
Консенсусная последовательность для митохондриального генома человека имеет номер присоединения GenBank ® NC_012920. Поскольку вся запись GenBank достаточно велика, и вас может заинтересовать только последовательность, вы можете получить только информацию о последовательности.
Получение информации о последовательности из веб-базы данных. Например, чтобы получить информацию о последовательности для митохондриального генома человека, в окне команд MATLAB введите
mitochondria = getgenbank('NC_012920','SequenceOnly',true)
getgenbank функция извлекает нуклеотидную последовательность из базы данных GenBank и создает массив символов.
mitochondria = GATCACAGGTCTATCACCCTATTAACCACTCACGGGAGCTCTCCATGCAT TTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTG GAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATT CTATTATTTATCGCACCTACGTTCAATATTACAGGCGAACATACCTACTA AAGT . . .
Если у вас нет веб-соединения, вы можете загрузить данные из файла MAT, включенного в программу Bioinformatics Toolbox™, с помощью команды
load mitochondria
load функция загружает последовательность mitochondria в рабочую область MATLAB.
Получение информации о последовательности. Напечатать
whos mitochondria
Информация о размере последовательности отображается в окне команд MATLAB.
Name Size Bytes Class Attributes mitochondria 1x16569 33138 char
Следующая процедура иллюстрирует, как определить мономеры и димеры, а затем визуализировать данные на графиках и гистограммах. Участки последовательности ДНК с высоким процентом нуклеотидов A + T обычно указывают на межгенные части последовательности, в то время как низкие А + T и более высокие проценты нуклеотидов G + C указывают на возможные гены. Во много раз высокое содержание CG динуклеотида находится перед геном.
После считывания последовательности в среду MATLAB можно использовать функции статистики последовательности, чтобы определить, имеет ли последовательность характеристики области, кодирующей белок. Эта процедура использует в качестве примера митохондриальный геном человека. См. раздел Чтение информации о последовательности из Интернета.
Построить график плотностей мономеров и совокупных плотностей мономеров на графике. В окне команды MATLAB введите
ntdensity(mitochondria)
Этот график показывает, что геном богат A + T.

Подсчитать нуклеотиды, используя basecount функция.
basecount(mitochondria)
Список нуклеотидных чисел показан для 5 '-3' цепи.
ans =
A: 5124
C: 5181
G: 2169
T: 4094
Подсчитать нуклеотиды в обратном комплементе последовательности, используя seqrcomplement функция.
basecount(seqrcomplement(mitochondria))
Как и ожидалось, нуклеотид рассчитывает на обратную цепь комплемента, комплементарную 5 '-3' цепи.
ans =
A: 4094
C: 2169
G: 5181
T: 5124
Используйте функцию basecount с chart возможность визуализации распределения нуклеотидов.
figure basecount(mitochondria,'chart','pie');
Круговая диаграмма отображается в окне MATLAB Figure.

Подсчитайте димеры в последовательности и отобразите информацию на гистограмме.
figure dimercount(mitochondria,'chart','bar')
ans =
AA: 1604
AC: 1495
AG: 795
AT: 1230
CA: 1534
CC: 1771
CG: 435
CT: 1440
GA: 613
GC: 711
GG: 425
GT: 419
TA: 1373
TC: 1204
TG: 513
TT: 1004
Следующая процедура иллюстрирует, как смотреть на кодоны для шести рамок считывания. Тринуклеотиды (кодон) кодируют аминокислоту, и существует 64 возможных кодона в нуклеотидной последовательности. Знание процента кодонов в вашей последовательности может быть полезным при сравнении с таблицами ожидаемого использования кодонов.
После прочтения последовательности в среду MATLAB можно проанализировать последовательность на предмет состава кодонов. Эта процедура использует геном митохондрий человека в качестве примера. См. раздел Чтение информации о последовательности из Интернета.
Подсчитать кодоны в нуклеотидной последовательности. В окне команды MATLAB введите
codoncount(mitochondria)
Отображается число кодонов для первого кадра считывания.
AAA - 167 AAC - 171 AAG - 71 AAT - 130 ACA - 137 ACC - 191 ACG - 42 ACT - 153 AGA - 59 AGC - 87 AGG - 51 AGT - 54 ATA - 126 ATC - 131 ATG - 55 ATT - 113 CAA - 146 CAC - 145 CAG - 68 CAT - 148 CCA - 141 CCC - 205 CCG - 49 CCT - 173 CGA - 40 CGC - 54 CGG - 29 CGT - 27 CTA - 175 CTC - 142 CTG - 74 CTT - 101 GAA - 67 GAC - 53 GAG - 49 GAT - 35 GCA - 81 GCC - 101 GCG - 16 GCT - 59 GGA - 36 GGC - 47 GGG - 23 GGT - 28 GTA - 43 GTC - 26 GTG - 18 GTT - 41 TAA - 157 TAC - 118 TAG - 94 TAT - 107 TCA - 125 TCC - 116 TCG - 37 TCT - 103 TGA - 64 TGC - 40 TGG - 29 TGT - 26 TTA - 96 TTC - 107 TTG - 47 TTT - 78
Подсчитайте кодоны во всех шести кадрах считывания и постройте график результатов на тепловых картах.
for frame = 1:3
figure
subplot(2,1,1);
codoncount(mitochondria,'frame',frame,'figure',true,...
'geneticcode','Vertebrate Mitochondrial');
title(sprintf('Codons for frame %d',frame));
subplot(2,1,2);
codoncount(mitochondria,'reverse',true,'frame',frame,...
'figure',true,'geneticcode','Vertebrate Mitochondrial');
title(sprintf('Codons for reverse frame %d',frame));
end
Тепловые карты отображают все 64 кодона в 6 кадрах считывания.



Следующая процедура иллюстрирует, как найти открытые кадры считывания с использованием определенного генетического кода. Определение кодирующей белок последовательности для эукариотического гена может быть сложной задачей, поскольку интроны (некодирующие срезы) смешиваются с экзонами. Однако прокариотические гены обычно не имеют интронов, а последовательности мРНК удаляют интроны. Идентификация стартового и стоп-кодонов для трансляции определяет кодирующий белок участок, или открытую рамку считывания (ORF), в последовательности. Как только вы знаете ORF для гена или мРНК, вы можете перевести нуклеотидную последовательность в соответствующую аминокислотную последовательность.
После считывания последовательности в среду MATLAB можно проанализировать последовательность на наличие открытых рамок считывания. Эта процедура использует геном митохондрий человека в качестве примера. См. раздел Чтение информации о последовательности из Интернета.
Отображение открытых рамок считывания (ORF) в нуклеотидной последовательности. В окне команды MATLAB введите:
seqshoworfs(mitochondria);
Если сравнить этот вывод с генами, показанными на странице NCBI для NC_012920, генов меньше, чем ожидалось. Это потому, что митохондрии позвоночных используют генетический код, немного отличающийся от стандартного генетического кода. Список генетических кодов см. в таблице Генетический код в aa2nt справочная страница.
Отображение ORF-файлов с помощью Vertebrate Mitochondrial код.
orfs= seqshoworfs(mitochondria,...
'GeneticCode','Vertebrate Mitochondrial',...
'alternativestart',true);
Обратите внимание, что на третьей рамке считывания теперь два больших ORF. Один начинается с позиции 4470, а другой начинается с точки 5904. Они соответствуют генам ND2 (субъединица NADH-дегидрогеназы 2 [Homo sapiens]) и COX1 (субъединица цитохром-с-оксидазы I).
Найдите соответствующий стоп-кодон. Начальные и конечные позиции для ORF имеют те же индексы, что и начальные позиции в полях. Start и Stop.
ND2Start = 4470; StartIndex = find(orfs(3).Start == ND2Start) ND2Stop = orfs(3).Stop(StartIndex)
Отображается положение остановки.
ND2Stop =
5511Используя индексы последовательности для начала и остановки гена, извлеките подпоследовательность из последовательности.
ND2Seq = mitochondria(ND2Start:ND2Stop)
Подпоследовательность (кодирующая белок область) хранится в ND2Seq и отображается на экране.
attaatcccctggcccaacccgtcatctactctaccatctttgcaggcac actcatcacagcgctaagctcgcactgattttttacctgagtaggcctag aaataaacatgctagcttttattccagttctaaccaaaaaaataaaccct cgttccacagaagctgccatcaagtatttcctcacgcaagcaaccgcatc cataatccttc . . .
Определите распределение кодонов.
codoncount (ND2Seq)
Количество кодонов показывает высокое количество ACC, ATA, CTA, и ATC.
AAA - 10 AAC - 14 AAG - 2 AAT - 6 ACA - 11 ACC - 24 ACG - 3 ACT - 5 AGA - 0 AGC - 4 AGG - 0 AGT - 1 ATA - 23 ATC - 24 ATG - 1 ATT - 8 CAA - 8 CAC - 3 CAG - 2 CAT - 1 CCA - 4 CCC - 12 CCG - 2 CCT - 5 CGA - 0 CGC - 3 CGG - 0 CGT - 1 CTA - 26 CTC - 18 CTG - 4 CTT - 7 GAA - 5 GAC - 0 GAG - 1 GAT - 0 GCA - 8 GCC - 7 GCG - 1 GCT - 4 GGA - 5 GGC - 7 GGG - 0 GGT - 1 GTA - 3 GTC - 2 GTG - 0 GTT - 3 TAA - 0 TAC - 8 TAG - 0 TAT - 2 TCA - 7 TCC - 11 TCG - 1 TCT - 4 TGA - 10 TGC - 0 TGG - 1 TGT - 0 TTA - 8 TTC - 7 TTG - 1 TTT - 8
Поиск аминокислот для кодонов ATA, CTA, ACC, и ATC.
aminolookup('code',nt2aa('ATA'))
aminolookup('code',nt2aa('CTA'))
aminolookup('code',nt2aa('ACC'))
aminolookup('code',nt2aa('ATC'))
Отображается следующее:
Ile isoleucine Leu leucine Thr threonine Ile isoleucine
Следующая процедура иллюстрирует, как извлечь кодирующую белок последовательность из последовательности гена и преобразовать ее в аминокислотную последовательность для белка. Определение относительного аминокислотного состава белка даст вам характерный профиль для белка. Часто этот профиль является достаточной информацией для идентификации белка. Используя аминокислотный состав, атомный состав и молекулярный вес, можно также искать похожие белки в общедоступных базах данных.
После того, как вы обнаружите открытую рамку считывания (ORF) в гене, вы можете преобразовать ее в аминокислотную последовательность и определить ее аминокислотный состав. Эта процедура использует геном митохондрий человека в качестве примера. См. раздел Открытие рамок чтения.
Превращают нуклеотидную последовательность в аминокислотную. В этом примере преобразуется только кодирующая белок последовательность между начальным и стоп-кодонами.
ND2AASeq = nt2aa(ND2Seq,'geneticcode',...
'Vertebrate Mitochondrial')
Последовательность преобразуется с помощью Vertebrate Mitochondrial генетический код. Потому что свойство AlternativeStartCodons имеет значение 'true' по умолчанию первый кодон att преобразуется в M вместо I.
MNPLAQPVIYSTIFAGTLITALSSHWFFTWVGLEMNMLAFIPVLTKKMNP RSTEAAIKYFLTQATASMILLMAILFNNMLSGQWTMTNTTNQYSSLMIMM AMAMKLGMAPFHFWVPEVTQGTPLTSGLLLLTWQKLAPISIMYQISPSLN VSLLLTLSILSIMAGSWGGLNQTQLRKILAYSSITHMGWMMAVLPYNPNM TILNLTIYIILTTTAFLLLNLNSSTTTLLLSRTWNKLTWLTPLIPSTLLS LGGLPPLTGFLPKWAIIEEFTKNNSLIIPTIMATITLLNLYFYLRLIYST SITLLPMSNNVKMKWQFEHTKPTPFLPTLIALTTLLLPISPFMLMIL
Сравните преобразование с опубликованным преобразованием в базе данных GenPept.
ND2protein = getgenpept('YP_003024027','sequenceonly',true)
getgenpept функция извлекает опубликованное преобразование из базы данных NCBI и считывает его в рабочую область MATLAB.
Подсчитайте аминокислоты в белковой последовательности.
aacount(ND2AASeq, 'chart','bar')
Отображается гистограмма. Обратите внимание на высокое содержание лейцина, треонина и изолейцина, а также на отсутствие цистеина и аспарагиновой кислоты.

Определяют атомный состав и молекулярную массу белка.
atomiccomp(ND2AASeq) molweight (ND2AASeq)
В рабочей области MATLAB (MATLAB Workspace) отображаются следующие данные:
ans =
C: 1818
H: 2882
N: 420
O: 471
S: 25ans = 3.8960e+004
Если эта последовательность была неизвестна, можно использовать эту информацию для идентификации белка, сравнивая его с атомным составом других белков в базе данных.