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 = localalign (Seq1, Seq2PropertyName ', 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

Совет

Для справки с буквой и целочисленными представлениями аминокислот и нуклеотидов, смотрите Поиск Поиска или Нуклеотида Аминокислоты.

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 в nats.

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

Примечание

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

Совет

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

GapOpenValue

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

Значение по умолчанию: 8

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

AlignStruct

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

Поле Описание
Score

Выиграйте за локальное оптимальное или субоптимальное выравнивание.

Start

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

Stop

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

Alignment

3 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] Бартон, G. (1993). Эффективный алгоритм, чтобы определить местоположение всех локально оптимальных выравниваний между двумя последовательностями, допускающими разрывы. CABIOS 9, 729–734.

Представленный в R2009b