localalign

Верните локальные оптимальные и неоптимальные выравнивания между двумя последовательностями

Синтаксис

AlignStruct = localalign(Seq1, Seq2)
AlignStruct = localalign(Seq1, Seq2, ...'NumAln', NumAlnValue, ...)
AlignStruct = localalign(Seq1, Seq2, ...'MinScore', MinScoreValue, ...)
AlignStruct = localalign(Seq1, Seq2, ...'Percent', PercentValue, ...)
AlignStruct = localalign(Seq1, Seq2, ...'DoAlignment', DoAlignmentValue, ...)
AlignStruct = localalign(Seq1, Seq2, ...'Alphabet', AlphabetValue, ...)
AlignStruct = localalign(Seq1, Seq2, ...'ScoringMatrix', ScoringMatrixValue, ...)
AlignStruct = localalign(Seq1, Seq2, ...'Scale', ScaleValue, ...)
AlignStruct = localalign(Seq1, Seq2, ...'GapOpen', GapOpenValue, ...)

Описание

AlignStruct = localalign(Seq1, Seq2) возвращает информацию о первом оптимальном (самом высоком) локальном выравнивании между двумя последовательностями в MATLAB® структура.

AlignStruct = localign (Seq1, Seq2... 'PropertyName', PropertyValue, ...) вызывает localalign с необязательными свойствами, которые используют пары имя/значение свойства. Можно задать одно или несколько свойств в любом порядке. Заключайте каждую PropertyName в одинарных кавычках. Каждый PropertyName является нечувствительным к регистру. Эти имена свойства/пары значения свойств следующие:

AlignStruct = localalign(Seq1, Seq2, ...'NumAln', NumAlnValue, ...) возвращает информацию об одной или нескольких неинтерсекционных, локальных выравниваниях (оптимальных и неоптимальных). Это ограничивает количество выравниваний для возврата путем определения количества локальных выравниваний для возврата. Это возвращает выравнивания в порядке уменьшения согласно их счету.

AlignStruct = localalign(Seq1, Seq2, ...'MinScore', MinScoreValue, ...) возвращает информацию о неинтерсекционных, локальных выравниваниях (оптимальных и неоптимальных), чей счет больше MinScoreValue.

AlignStruct = localalign(Seq1, Seq2, ...'Percent', PercentValue, ...) возвращает информацию об одной или нескольких непересекающихся локальных выравниваниях (оптимальных и неоптимальных), счета которых находятся в пределах PercentValue процент от наивысшего счета. Это возвращает выравнивания в порядке уменьшения согласно их счету.

AlignStruct = localalign(Seq1, Seq2, ...'DoAlignment', DoAlignmentValue, ...) определяет, включать ли парные выравнивания в Alignment поле структуры output. Варианты true (по умолчанию) или false.

AlignStruct = localalign(Seq1, Seq2, ...'Alphabet', AlphabetValue, ...) задает тип последовательностей. Варианты 'AA' (по умолчанию) или 'NT'.

AlignStruct = localalign(Seq1, Seq2, ...'ScoringMatrix', ScoringMatrixValue, ...) задает матрицу скоринга, которая будет использоваться для локального выравнивания.

AlignStruct = localalign(Seq1, Seq2, ...'Scale', ScaleValue, ...) задает масштабный коэффициент, примененный к выходным баллам, таким образом управляя единицами измерения выходных баллов. Выбор является любым положительным значением. По умолчанию это 1, который не изменяет модулей выхода счета.

AlignStruct = localalign(Seq1, Seq2, ...'GapOpen', GapOpenValue, ...) определяет штраф за открытие зазора в выравнивании. Выбор является любым положительным значением. По умолчанию это 8.

Входные параметры

Seq1

Первая аминокислота или нуклеотидная последовательность, заданная любым из следующих:

  • Вектор символов или строка букв, представляющих аминокислоты или нуклеотиды, такие как возвращенные int2aa или int2nt

  • Вектор целых чисел, представляющих аминокислоты или нуклеотиды, таких как возвращенные aa2int или nt2int

  • Структура MATLAB, содержащая Sequence поле, такое как возвращенное fastaread, fastqread, emblread, getembl, genbankread, getgenbank, getgenpept, genpeptread, getpdb, pdbread, или sffread

Совет

Для помощи с буквенными и целочисленными представлениями аминокислот и нуклеотидов, смотрите Amino Acid Lookup или Nucleotide Lookup.

Seq2

Вторая аминокислота или нуклеотидная последовательность, которая localalign выравнивается по Seq1.

NumAlnValue

Положительная скалярная величина (< или = 2^12) указание количества выравниваний. localalign возвращает верхний NumAlnValue локальные, неинтерсекционные выравнивания (оптимальные и неоптимальные). Если количество оптимальных выравниваний больше NumAlnValue, затем localalign возвращает первое NumAlnValue выравнивания на основе их порядка в матрице трассировки назад.

Примечание

Если вы задаете NumAlnValue, вы не можете задать MinScoreValue или PercentValue.

Совет

Использование NumAlnValue для возврата нескольких выравниваний при выравнивании последовательностей малой сложности и необходимо учитывать несколько локальных выравнивания.

По умолчанию: 1

MinScoreValue

Положительная скалярная величина, задающий минимальный счет локальных, непересекающихся выравниваний (оптимальных и неоптимальных) для возвращения.

Примечание

Если вы задаете MinScoreValue, вы не можете задать NumAlnValue или PercentValue.

Совет

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

PercentValue

Положительная скалярная величина между 0 и 100 что ограничивает возврат локальных, неинтерсекционных выравниваний (оптимальных и неоптимальных) для тех выравниваний с счетом в PercentValue процент от наивысшего счета. Для примера, если самый высокий счет 10.5 и вы задаете 5 для PercentValue, затем localalign определяет минимальный счет 10.5 – (10.5 * 0.05) = 9.975. Это возвращает все выравнивания с счетом 9.975 или выше.

Примечание

Если вы задаете PercentValue, вы не можете задать NumAlnValue или MinScoreValue.

Совет

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

DoAlignmentValue

Управляет включением парных выравниваний в Alignment поле структуры output. Варианты true (по умолчанию) или false.

AlphabetValue

Вектор символов или строка, задающая тип последовательностей. Варианты 'AA' (по умолчанию) или 'NT'.

ScoringMatrixValue

Одно из следующих:

  • Вектор символов или строка, задающая матрицу скоринга для локального выравнивания. Варианты для аминокислотных последовательностей:

    • 'BLOSUM62'

    • 'BLOSUM30' увеличение на 5 до 'BLOSUM90'

    • 'BLOSUM100'

    • 'PAM10' увеличение на 10 до 'PAM500'

    • 'DAYHOFF'

    • 'GONNET'

    По умолчанию это:

    • 'BLOSUM50' - Когда AlphabetValue равен 'AA'

    • 'NUC44' - Когда AlphabetValue равен 'NT'

    Примечание

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

  • Матрица, представляющая скоринговую матрицу для использования в локальном выравнивании, например, возвращенная blosum, pam, dayhoff, gonnet, или nuc44 функция.

    Примечание

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

Примечание

Если вам нужно скомпилироваться localalign в автономное приложение или программный компонент, использующий MATLAB Compiler™, используйте матрицу вместо вектора символов или строки для ScoringMatrixValue.

ScaleValue

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

Например, если выходной счет первоначально определен в битах, и вы вводите log(2) для ScaleValue, затем localalign возвращает Score в нац.

По умолчанию это 1, который не изменяет модулей выхода счета.

Примечание

Если на 'ScoringMatrix' свойство также задает коэффициент шкалы, затем localalign использует его сначала, чтобы масштабировать выход счета. Затем применяется масштабный коэффициент, заданный как ScaleValue чтобы переформулировать выход счета.

Совет

Перед сравнением счетов выравнивания из нескольких трасс убедитесь, что счета указаны в одних и тех же модулях. Используйте 'Scale' свойство для управления модулями выхода счетов.

GapOpenValue

Положительное значение, определяющее штраф за открытие зазора в выравнивании.

По умолчанию: 8

Выходные аргументы

AlignStruct

Структура MATLAB или массив структур, содержащий информацию о локальных оптимальных и неоптимальных выравниваниях между двумя последовательностями. Каждая структура представляет оптимальное или неоптимальное выравнивание и содержит следующие поля.

ОбластьОписание
Score

Счет для локального оптимального или неоптимального выравнивания.

Start

Вектор 1 на 2 индексов, указывающий начальную точку в каждой последовательности для выравнивания.

Stop

Вектор 1 на 2 индексов, указывающих точку остановки в каждой последовательности для выравнивания.

Alignment

3-by-N символьный массив, показывающий две последовательности, Seq1 и Seq2, в первой и третьей строках. Он также показывает символы, представляющие оптимальное или неоптимальное локальное выравнивание между двумя последовательностями во второй строке.

Примеры

Ограничьте количество выравниваний, возвращаемых между двумя последовательностями, путем определения количества выравниваний:

% Create variables containing two amino acid sequences.
Seq1 = 'VSPAGMASGYDPGKA';
Seq2 = 'IPGKATREYDVSPAG';

% Use the NumAln property to return information about the
% top three local alignments.
struct1 = localalign(Seq1, Seq2, 'numaln', 3)

struct1 = 

        Score: [3x1 double]
        Start: [3x2 double]
         Stop: [3x2 double]
    Alignment: {3x1 cell}

% View the scores of the first and second alignments.
struct1.Score(1:2)

ans =

   11.0000
    9.6667

% View the first alignment.
struct1.Alignment{1}

ans =

VSPAG
|||||
VSPAG

Ограничьте количество выравниваний, которые будут возвращаться между двумя последовательностями, задав минимальный счет:

% Create variables containing two amino acid sequences.
Seq1 = 'VSPAGMASGYDPGKA';
Seq2 = 'IPGKATREYDVSPAG';

% Use the MinScore property to return information about
% only local alignments with a score greater than 8.
% Use the DoAlignment property to exclude the actual alignments.
struct2 = localalign(Seq1,Seq2,'minscore',8,'doalignment',false)

struct2 = 

    Score: [2x1 double]
    Start: [2x2 double]
     Stop: [2x2 double]

Ограничьте количество выравниваний, которые будут возвращаться между двумя последовательностями, задав процент от максимального счета:

% Create variables containing two amino acid sequences.
Seq1 = 'VSPAGMASGYDPGKA';
Seq2 = 'IPGKATREYDVSPAG';

% Use the Percent property to return information about only
% local alignments with a score within 15% of the maximum score.
struct3 = localalign(Seq1, Seq2, 'percent', 15) 

struct3 = 

        Score: [2x1 double]
        Start: [2x2 double]
         Stop: [2x2 double]
    Alignment: {2x1 cell}

Задайте матрицу скоринга и штраф открытия промежутка при выравнивании двух последовательностей:

% Create variables containing two nucleotide sequences.
Seq1 = 'CCAATCTACTACTGCTTGCAGTAC';
Seq2 = 'AGTCCGAGGGCTACTCTACTGAAC';

% Create a scoring matrix with a match score of 10 and a mismatch
% score of -9
sm = [10 -9 -9 -9;
      -9 10 -9 -9;
      -9 -9 10 -9;
      -9 -9 -9 10];

% Use the ScoringMatrix and GapOpen properties when returning
% information about the top three local alignments.
struct4 = localalign(Seq1, Seq2, 'alpha', 'nt', ...
         'scoringmatrix', sm, 'gapopen', 20, 'numaln', 3)

struct4 = 

        Score: [3x1 double]
        Start: [3x2 double]
         Stop: [3x2 double]
    Alignment: {3x1 cell} 

Подробнее о

свернуть все

Неинтерсекционные выравнивания

Выравнивания, не имеющие общих совпадений или несоответствий.

Оптимальное выравнивание

Выравнивание с самым высоким счетом.

Неоптимальное выравнивание

Выравнивание с счетом меньше самого высокого счета.

Ссылки

[1] Бартон, Г. (1993). Эффективный алгоритм для определения местоположения всех локально оптимальных выравниваний между двумя последовательностями, допускающих погрешности. КАБИОС 9, 729-734.

Введенный в R2009b
Для просмотра документации необходимо авторизоваться на сайте