Постройте демонстрационное отклонение по сравнению с оценкой зависимого условием среднего значения
plotVarianceLink(test)
plotVarianceLink(test,Name,Value)
H = plotVarianceLink(___)
plotVarianceLink(
отображения один график рассеивания для каждого экспериментального условия с демонстрационным отклонением в общей шкале по сравнению с оценкой зависимого условием среднего значения.test
)
test
, вывод функции nbintest
, является объектом NegativeBinomialTest
, содержа результаты непарного теста гипотезы для двух независимых выборок.
Если аргумент пары "имя-значение" 'PooledVariance'
был установлен в true
, когда вы запустили nbintest
, то plotVarianceLink
строит только один график рассеивания. Функция также строит регрессию отклонения согласно модели, заданной аргументом пары "имя-значение" 'VarianceLink'
nbintest
.
plotVarianceLink(test,
использование один или несколько аргументов пары "имя-значение".Name,Value
)
возвращает указатели на оси.H
= plotVarianceLink(___)
Этот пример показывает, как выполнить непарный тест гипотезы для синтетических данных о количестве короткого чтения из двух различных биологических условий.
Данные в этом примере содержат синтетические генные данные о количестве для 5 000 генов, представляя два различных биологических условия, такие как больные и нормальные ячейки. Для каждого условия существует пять выборок. Только 10% генов (500 генов) дифференцированно выражаются. А именно, половина из них (250 генов) точно 3-кратная сверхвыраженный. Другие 250 генов являются 3-кратным underexpressed. Остальная часть данных об экспрессии гена сгенерирована от того же отрицательного биномиального распределения для обоих условий. Каждая выборка также имеет различный фактор размера (то есть, покрытие или глубина выборки).
Загрузите данные.
clear all load(fullfile(matlabroot,'examples','bioinfo','nbintest_data.mat'),'K','H0');
Переменная K
содержит генные данные о количестве. Строки представляют гены, и столбцы представляют выборки. В этом случае первые пять столбцов представляют выборки от первого условия. Другие пять столбцов представляют выборки от второго условия. Отобразите первые несколько строк K
.
K(1:5,:)
ans = 5×10
13683 14140 8281 14309 12208 8045 9446 11317 14597 14592
16028 16805 9813 16486 14076 9901 10927 13348 16999 17036
814 862 492 910 758 521 573 753 870 936
15870 16453 9857 16454 14267 9671 10997 13624 17151 17205
9422 9393 5734 9598 8174 5381 6315 7752 9869 9795
В этом примере нулевая гипотеза верна, когда гена дифференцированно не выражают. Переменная H0
содержит булевы индикаторы, которые указывают, для которых генов нулевая гипотеза верна (отмеченный как 1). Другими словами, H0 содержит известные метки, которые вы будете использовать позже, чтобы соответствовать предсказанным результатам.
sum(H0)
ans = 4500
Из 5 000 генов, 4500 дифференцированно не выражаются в этих синтетических данных.
Запустите непарный тест гипотезы для выборок от двух условий с помощью nbintest
. Предположение - то, что данные прибыли из отрицательного биномиального распределения, где отклонение соединяется со средним значением через локально регрессировавшую сглаженную функцию среднего значения, как описано в [1] установкой 'VarianceLink'
к 'LocalRegression'
.
tLocal = nbintest(K(:,1:5),K(:,6:10),'VarianceLink','LocalRegression');
Используйте plotVarianceLink
, чтобы построить график рассеивания для каждого экспериментального условия (для условий X и Y) с демонстрационным отклонением в общей шкале по сравнению с оценкой зависимого условием среднего значения. Используйте линейную шкалу для обеих осей. Включайте кривые для всех других опций связи установкой 'Compare'
к true
.
plotVarianceLink(tLocal,'Scale','linear','Compare',true)
Строка Identity
представляет модель Poisson, где отклонение идентично среднему значению, как описано в [3]. Заметьте, что данные, кажется, сверхрассеиваются (то есть, большинство точек выше строки Identity
). Строка Constant
представляет отрицательную биномиальную модель, где отклонение является суммой термина шума выстрела (среднее значение) и константа, умноженная на среднее значение в квадрате, как описано в [2]. Local Regression
и опции связи Constant
, кажется, соответствуют лучше сверхрассеянным данным.
Используйте plotChiSquaredFit
, чтобы оценить качество подгонки для регрессии отклонения. Это строит эмпирический CDF (ecdf) вероятностей в квадрате хи. Вероятности являются отношением между наблюдаемым и предполагаемым отклонением, расслоенным уровнями количества короткого чтения в пять интервалов равного размера.
plotChiSquaredFit(tLocal)
Каждые данные показывают пять кривых ecdf. Каждая кривая представляет один из пяти уровней количества короткого чтения. Например, синяя строка представляет кривую ecdf для низких количеств короткого чтения между 0 и 1264. Красная линия представляет высокие количества (больше чем 11 438).
Один способ интерпретировать кривые состоит в том, чтобы проверять, ли кривые ecdf выше диагональной строки. Если они выше строки, то отклонение завышено. Если они ниже строки, то отклонение недооценено. В обеих фигурах отклонение, кажется, правильно оценивается для более высоких количеств (то есть, красная линия следует за диагональной строкой), но немного завышенный для более низких уровней количества.
Чтобы оценить производительность теста гипотезы, создайте матрицу беспорядка использование известных меток и предсказанных p-значений.
confusionmat(H0,(tLocal.pValue > .001))
ans = 2×2
493 7
5 4495
Из 500 дифференцированно выраженных генов, 493 правильно предсказаны (истинные положительные стороны), и 7 из них неправильно предсказаны как не дифференцированно выраженные гены (ложные отрицательные стороны). Из 4 500 генов, которых дифференцированно не выражают, 4495, правильно предсказаны (истинные отрицательные стороны), и 5 из них неправильно предсказаны как дифференцированно выраженные гены (ложные положительные стороны).
Для сравнения, запущенного тест гипотезы, снова принимающий, что количества моделируются распределением Пуассона, где отклонение идентично среднему значению.
tPoisson = nbintest(K(:,1:5),K(:,6:10),'VarianceLink','Identity');
Постройте кривые ecdf. Заметьте, что все кривые ниже диагональной строки, подразумевая, что отклонение недооценено. Поэтому отрицательная биномиальная модель соответствует данным лучше.
plotChiSquaredFit(tPoisson)
тест
Непарный результат испытаний гипотезыNegativeBinomialTest
(значение по умолчанию)Непарные результаты испытаний гипотезы, заданные как объект NegativeBinomialTest
. тест возвращен функцией nbintest
.
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'Compare',true,'Scale','linear'
'Compare'
— Logical, чтобы добавить кривую с отклонением соединяется для других моделейfalse
(значение по умолчанию) | true
Логический флаг, чтобы добавить кривую с отклонением соединяется для других моделей, заданных как пара, разделенная запятой, состоящая из 'Compare'
и true
или false
. Когда это установлено в true
, график показывает кривые для всех доступных опций связи, то есть, 'LocalRegression'
, 'Constant'
и 'Identity'
.
Пример: 'Compare',true
шкала
Масштабируйтесь для обеих осей'log'
(значение по умолчанию) | 'linear'
Масштабируйтесь для обеих осей, заданных как пара, разделенная запятой, состоящая из 'Scale'
и 'log'
или 'linear'
.
Пример: 'Scale','linear'
H
Указатели на осиУказатели на оси, заданные как вектор указателей.
NegativeBinomialTest
| mattest
| nbintest
| plotChiSquaredFit
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.