Вставьте зазоры в нуклеотидную или аминокислотную последовательность
NewSeq = seqinsertgaps(Seq, Positions)
NewSeq = seqinsertgaps(Seq, GappedSeq)
NewSeq = seqinsertgaps(Seq, GappedSeq, Relationship)
Seq | Одно из следующих:
|
Positions | Вектор целых чисел для задания позиций в Seq перед которым вставить зазор. |
GappedSeq | Одно из следующих:
|
Relationship | Целое число, задающее отношение между Seq и GappedSeq. Варианты:
|
NewSeq | Последовательность с вставленными зазорами, представленная вектору символов, определяющей нуклеотидную или аминокислотную последовательность. |
вставляет погрешности в последовательность NewSeq = seqinsertgaps(Seq, Positions)Seq перед положениями, заданными целыми числами в векторе Positions.
находит положения зазоров в последовательности NewSeq = seqinsertgaps(Seq, GappedSeq)GappedSeq, затем вставляет погрешности в соответствующие положения в последовательности Seq.
задает связь между NewSeq = seqinsertgaps(Seq, GappedSeq, Relationship)Seq и GappedSeq. Введите 1 для Relationship когда обе последовательности используют один и тот же алфавит, то есть обе являются нуклеотидными последовательностями или обе являются аминокислотными последовательностями. Введите 3 для Relationship когда Seq содержит нуклеотиды, представляющие кодоны и GappedSeq содержит аминокислоты. По умолчанию это 3.
Извлеките две нуклеотидные последовательности из GenBank® база данных для белка нейраминидазы (NA) двух штаммов вируса гриппа A (H5N1).
hk01 = getgenbank('AF509094');
vt04 = getgenbank('DQ094287');
Экстрагируют кодирующую область из двух нуклеотидных последовательностей.
hk01_cds = featureparse(hk01,'feature','CDS','Sequence',true); vt04_cds = featureparse(vt04,'feature','CDS','Sequence',true);
Выровнять аминокислотные последовательности, преобразованные из нуклеотидных последовательностей.
[sc,al]=nwalign(nt2aa(hk01_cds),nt2aa(vt04_cds),'extendgap',1);
Используйте seqinsertgaps функция для копирования промежутков из выровненных аминокислотных последовательностей в соответствующие им нуклеотидные последовательности, таким образом кодон-выравнивая их.
hk01_aligned = seqinsertgaps(hk01_cds,al(1,:)) vt04_aligned = seqinsertgaps(vt04_cds,al(3,:))
Если вы выровняли код две последовательности, можно использовать их как вход в другие функции, такие как dnds, который вычисляет скорости синонимических и несинонимических замен кодоналегированных нуклеотидных последовательностей. Путем настройки Verbose на trueможно также отобразить кодоны, рассматриваемые в расчетах и их аминокислотных переводах.
[dn,ds] = dnds(hk01_aligned,vt04_aligned,'verbose',true)
dnds | dndsml | featureparse | int2aa | int2nt