Вставьте зазоры в нуклеотидную или аминокислотную последовательность
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