Вычислите парное расстояние между последовательностями
D
= seqpdist(Seqs
)
D
= seqpdist(Seqs
,
...'PropertyName
', PropertyValue
,
...)
D
= seqpdist(Seqs
,
...'Method', MethodValue
, ...)
D
= seqpdist(Seqs
,
...'Indels', IndelsValue
, ...)
D
= seqpdist(Seqs
,
...'OptArgs', OptArgsValue
, ...)
D
= seqpdist(Seqs
,
...'PairwiseAlignment', PairwiseAlignmentValue
,
...)
D
= seqpdist(Seqs
,
...'UseParallel', UseParallelValue
, ...)
D
= seqpdist(Seqs
,
...'SquareForm', SquareFormValue
...)
D
= seqpdist(Seqs
,
...'Alphabet', AlphabetValue
, ...)
D
= seqpdist(Seqs
,
...'ScoringMatrix', ScoringMatrixValue
, ...)
D
= seqpdist(Seqs
,
...'Scale', ScaleValue
, ...)
D
= seqpdist(Seqs
,
...'GapOpen', GapOpenValue
, ...)
D
= seqpdist(Seqs
,
...'ExtendGap', ExtendGapValue
, ...)
Seqs | Любое из следующих:
|
MethodValue | Вектор символов, которая задает метод вычисления парных расстояний. По умолчанию это 'Jukes-Cantor' . |
IndelsValue | Вектор символов или строка, которая задает, как обрабатывать сайты с погрешностями. По умолчанию это 'score' . |
OptArgsValue | Вектор символов или массив ячеек, который задает один или несколько входные параметры, требуемых или принятых методом расстояния, заданным Method свойство. |
PairwiseAlignmentValue | Управляет глобальным парным выравниванием входа последовательностей (используя nwalign function), при этом игнорируя множественное выравнивание входных последовательностей (если таковые имеются). Варианты true или false . По умолчанию это:
Совет Если ваши входные последовательности совпадают по длине,
|
UseParallelValue | Управляет вычислением парных расстояний с помощью parfor -циклы. Когда true , и Parallel Computing Toolbox™ установлен и parpool открыт, расчет происходит параллельно. Если нет открытых parpool , но автоматическое создание включено в Parallel Preferences, пул по умолчанию будет автоматически открыт, а расчеты происходят параллельно. Если установлен Parallel Computing Toolbox, но нет открытых parpool и автоматическое создание отключено, затем в расчетах используются parfor -циклы в последовательном режиме. Если Parallel Computing Toolbox не установлен, то при расчетах используются parfor -циклы в последовательном режиме. По умолчанию это false , который использует петли for в последовательном режиме. |
SquareFormValue | Управляет преобразованием выхода в квадратную матрицу. Варианты |
AlphabetValue | Вектор символов или строка, задающая тип последовательности (нуклеотид или аминокислота). Варианты 'NT' или 'AA' (по умолчанию). |
ScoringMatrixValue | Одно из следующих:
Примечание Если вам нужно скомпилироваться |
ScaleValue | Положительное значение, которое задает коэффициент шкалы, используемый для возврата счета в произвольных модулях. Если информация матрицы скоринга также обеспечивает коэффициент шкалы, то используются оба. |
GapOpenValue | Положительное целое число, которое задает штраф за открытие промежутка в выравнивании. По умолчанию это 8 . |
ExtendedGapValue | Положительное целое число, которое задает штраф за расширение промежутка. По умолчанию это равно GapOpenValue . |
D | Вектор, который содержит биологические расстояния между каждой парой последовательностей, сохраненных в M элементы Seqs . |
возвращает D
= seqpdist(Seqs
)D
вектор, содержащий биологические расстояния между каждой парой последовательностей, сохраненных в M
последовательности Seqs
, массив ячеек из последовательностей, вектор структур, матрица или последовательности.
является D
1
-by- (M*(M-1)/2)
Вектор-строка, соответствующий M*(M-1)/2
пары последовательностей в Seqs
. Область выхода
размещается в порядке D
((2,1),(3,1),..., (M,1),(3,2),...(M,2),...(M,M-1))
. Это нижний-левый треугольник полного M
-by- M
матрица расстояний. Чтобы получить расстояние между I
и J
th-ые последовательности для I > J
, используйте формулу D((J-1)*(M-J/2)+I-J)
.
вызывает D
= seqpdist(Seqs
,
...'PropertyName
', PropertyValue
,
...)seqpdist
с необязательными свойствами, которые используют пары имя/значение свойства. Задайте одно или несколько свойств в любом порядке. Заключайте каждую PropertyName
в одинарных кавычках. Каждый PropertyName
является нечувствительным к регистру. Эти имена свойства/пары значения свойств следующие:
задает метод для вычисления расстояний между каждой парой последовательностей. Варианты показаны в следующих таблицах.D
= seqpdist(Seqs
,
...'Method', MethodValue
, ...)
Методы для нуклеотидов и аминокислот
Метод | Описание |
---|---|
p-distance | Доля сайтов, в которых две последовательности различны. p близок к 1 для плохо связанных последовательностей и p близок к 0 для аналогичных последовательностей.d = p |
Jukes-Cantor (по умолчанию) | Максимальная оценка правдоподобия количества замен между двумя последовательностями. Для нуклеотидов:
Для аминокислот:
|
alignment-score | Расстояние (d ) между двумя последовательностями (1, 2 ) вычисляется из парного счета выравнивания между двумя последовательностями (score12 ), и парный счет выравнивания между каждой последовательностью и самой собой (score11 , score22 ) следующим образом:d = (1-score12/score11)* (1-score12/score22) d = 0 |
Методы без оценки погрешностей (только нуклеотиды)
Метод | Описание |
---|---|
Tajima-Nei | Максимальная оценка правдоподобия с учетом фоновых частот нуклеотидов. Его можно вычислить из входа последовательностей или задать путем установки OptArgs на [gA gC gG gT] . gA , gC , gG , gT являются скалярными значениями для частот нуклеотидов. |
Kimura | Рассматривает отдельно переходное нуклеотидное замещение и трансверсионное нуклеотидное замещение. |
Tamura | Рассматривает отдельно переходное нуклеотидное замещение, трансверсионное нуклеотидное замещение и содержимое GC. GC- содержимого можно вычислить из входа последовательностей или задать OptArgs к пропорции содержимого GC (скалярное значение от 0 на 1 ). |
Hasegawa | Рассматривает отдельно переходное нуклеотидное замещение, трансверсионное нуклеотидное замещение и фоновые частоты нуклеотидов. Фоновые частоты могут быть вычислены из входных последовательностей или заданы путем установки OptArgs свойство к [gA gC gG gT] . |
Nei-Tamura | Рассматривает отдельно переходное нуклеотидное замещение между пуринами, переходное нуклеотидное замещение между пиримидинами, трансверсионное нуклеотидное замещение и фоновые частоты нуклеотидов. Фоновые частоты могут быть вычислены из входных последовательностей или заданы путем установки OptArgs свойство к [gA gC gG gT] . |
Методы без оценки пробелов (только аминокислоты)
Метод | Описание |
---|---|
Poisson | Принимает, что количество замен аминокислот в каждом сайте имеет распределение Пуассона. |
Gamma | Принимает, что количество замен аминокислот в каждом сайте имеет распределение Гаммы с параметром a . Задайте a использование OptArgs свойство. По умолчанию это 2 . |
Можно также задать пользовательскую функцию расстояния с помощью @
, для примера, @distfun
. Функция расстояния должна иметь вид:
function D = distfun(S1, S2, OptArgsValue)
The distfun
функция принимает следующие аргументы:
S1
, S2
- две последовательности одинаковой длины (нуклеотид или аминокислота).
OptArgsValue
- необязательные аргументы, зависящие от проблемы.
The distfun
функция возвращает скаляр, который представляет расстояние между S1
и S2
.
задает, как обрабатывать сайты с пробелами. Варианты:D
= seqpdist(Seqs
,
...'Indels', IndelsValue
, ...)
score
(по умолчанию) - оценивает эти сайты либо как мутацию точки, либо с параметрами выравнивания, в зависимости от выбранного метода.
pairwise-del
- Для каждого парного сравнения он игнорирует сайты с погрешностями.
complete-del
- игнорирует все столбцы в нескольких выравниваниях, которые содержат зазор. Эта опция доступна, только если вы указали в качестве выравнивания несколько вход Seqs
.
передает один или несколько аргументов, требуемых или принятых методом расстояния, заданным D
= seqpdist(Seqs
,
...'OptArgs', OptArgsValue
, ...)Method
свойство. Используйте вектор символов или массив ячеек, чтобы передать один или несколько входные параметры. Для примера предоставьте частоты нуклеотидов для Tajima-Nei
метод расстояния, вместо вычисления их из входа последовательностей.
управляет глобальным парным выравниванием входа последовательностей (используя D
= seqpdist(Seqs
,
...'PairwiseAlignment', PairwiseAlignmentValue
,
...)nwalign
function), при этом игнорируя множественное выравнивание входных последовательностей (если таковые имеются). По умолчанию это:
true
- Когда все входные последовательности имеют не одинаковую длину.
false
- Когда все входные последовательности имеют одинаковую длину.
Совет
Если ваши входные последовательности имеют одинаковую длину, seqpdist
предполагает, что они выровнены. Если они не выровнены, выполните одно из следующих действий:
Выровняйте последовательности перед их передачей так, чтобы они seqpdist
, например, используя multialign
функция.
Задайте PairwiseAlignment
на true
при использовании seqpdist
.
определяет, использовать ли D
= seqpdist(Seqs
,
...'UseParallel', UseParallelValue
, ...)parfor
- циклы при вычислении парных расстояний. Когда true
, и Parallel Computing Toolbox установлен и parpool
открыт, расчет происходит параллельно. Если нет открытых parpool
, но автоматическое создание включено в Parallel Preferences, пул по умолчанию будет автоматически открыт, а расчеты происходят параллельно. Если установлен Parallel Computing Toolbox, но нет открытых parpool
и автоматическое создание отключено, затем в расчетах используются parfor
-циклы в последовательном режиме. Если Parallel Computing Toolbox не установлен, то при расчетах используются parfor
-циклы в последовательном режиме. По умолчанию это false
, который использует петли for в последовательном режиме.
управляет преобразованием выхода в квадратную матрицу, так что D
= seqpdist(Seqs
,
...'SquareForm', SquareFormValue
...)
обозначает расстояние между D
(I
, J
)I
и J
-я последовательность. Квадратная матрица симметрична и имеет нулевую диагональ. Варианты true
или false
(по умолчанию). Настройка Squareform
на true
совпадает с использованием squareform
функция в Statistics and Machine Learning Toolbox™.
задает тип последовательности (нуклеотид или аминокислота). Варианты D
= seqpdist(Seqs
,
...'Alphabet', AlphabetValue
, ...)'NT'
или 'AA'
(по умолчанию).
Остальные входные свойства доступны, когда Method
свойство равно 'alignment-score'
или PairwiseAlignment
свойство равно true
.
задает матрицу оценки для глобального парного выравнивания. По умолчанию это:D
= seqpdist(Seqs
,
...'ScoringMatrix', ScoringMatrixValue
, ...)
'NUC44'
- Когда AlphabetValue
равен 'NT'
.
'BLOSUM50'
- Когда AlphabetValue
равен 'AA'
.
задает масштабный коэффициент, используемый для возврата счета в произвольных модулях. Выбор является любым положительным значением. Если информация матрицы скоринга также обеспечивает коэффициент шкалы, то используются оба.D
= seqpdist(Seqs
,
...'Scale', ScaleValue
, ...)
определяет штраф за открытие зазора в выравнивании. Варианты являются любым положительным целым числом. По умолчанию это D
= seqpdist(Seqs
,
...'GapOpen', GapOpenValue
, ...)8
.
определяет штраф за удлинение зазора в выравнивании. Варианты являются любым положительным целым числом. По умолчанию это равно D
= seqpdist(Seqs
,
...'ExtendGap', ExtendGapValue
, ...)GapOpenValue
.
Считайте данные выравнивания аминокислот в структуру MATLAB.
seqs = fastaread('pf00002.fa');
Для каждой возможной пары последовательностей в множественном выравнивании игнорируйте сайты с погрешностями и оценивайте с помощью матрицы подсчета баллов PAM250
.
dist = seqpdist(seqs,'Method','alignment-score',... 'Indels','pairwise-delete',... 'ScoringMatrix','pam250');
Принудительное преобразование каждой пары последовательностей, игнорирующее предоставленное несколько выравниваний.
dist = seqpdist(seqs,'Method','alignment-score',... 'Indels','pairwise-delete',... 'ScoringMatrix','pam250',... 'PairwiseAlignment',true);
Измерьте парные расстояния Юкса-Кантора после выравнивания каждой пары последовательностей, считая погрешности как точечные мутации.
dist = seqpdist(seqs,'Method','jukes-cantor',... 'Indels','score',... 'Scoringmatrix','pam250',... 'PairwiseAlignment',true);