plotChiSquaredFit

Постройте goodnesss-fit регрессию отклонения

Описание

пример

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

test, выход nbintest функционируйте, NegativeBinomialTest объект. Это содержит результаты непарного теста гипотезы для двух независимых выборок.

Примечание

Если 'VarianceLink' аргумент пары "имя-значение" был установлен в 'Identity' когда вы запустились nbintest, затем вероятность в квадрате хи вычисляется с помощью отношения между наблюдаемым отклонением к среднему значению.

plotChiSquaredFit(test,Name,Value) использует аргумент пары "имя-значение".

H = plotChiSquaredFit(___) возвращает указатели на оси.

Примеры

свернуть все

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

Данные в этом примере содержат синтетические генные данные о количестве для 5 000 генов, представляя два различных биологических условия, такие как больные и нормальные ячейки. Для каждого условия существует пять выборок. Только 10% генов (500 генов) дифференцированно описываются. А именно, половина из них (250 генов) точно 3-кратная сверхописанный. Другие 250 генов являются 3-кратным underexpressed. Остальная часть данных об экспрессии гена сгенерирована от того же отрицательного биномиального распределения для обоих условий. Каждая выборка также имеет различный фактор размера (то есть, покрытие или глубина выборки).

Загрузите данные.

load('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)

Figure contains an axes object. The axes object with title Variance Link on X contains 4 objects of type line. These objects represent Observed, Local Regression, Constant, Identity.

Figure contains an axes object. The axes object with title Variance Link on Y contains 4 objects of type line. These objects represent Observed, Local Regression, Constant, Identity.

Identity линия представляет модель Poisson, где отклонение идентично среднему значению как описано в [3]. Заметьте, что данные, кажется, сверхрассеиваются (то есть, большинство точек выше Identity строка. Constant линия представляет отрицательную биномиальную модель, где отклонение является суммой шумовой части выстрела (среднее значение) и константа, умноженная на среднее значение в квадрате как описано в [2]. Local Regression и Constant опции рычажного устройства, кажется, соответствуют лучше сверхрассеянным данным.

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

plotChiSquaredFit(tLocal)

Figure contains an axes object. The axes object with title Residuals ECDF Plot for X contains 6 objects of type line. These objects represent 0-1472, 1473-3766, 3767-6636, 6637-10952, > 10952.

Figure contains an axes object. The axes object with title Residuals ECDF Plot for Y contains 6 objects of type line. These objects represent 0-1264, 1265-4022, 4023-7453, 7454-11438, > 11438.

Каждый рисунок показывает пять кривых 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)

Figure contains an axes object. The axes object with title Residuals ECDF Plot for X contains 6 objects of type line. These objects represent 0-1472, 1473-3766, 3767-6636, 6637-10952, > 10952.

Figure contains an axes object. The axes object with title Residuals ECDF Plot for Y contains 6 objects of type line. These objects represent 0-1264, 1265-4022, 4023-7453, 7454-11438, > 11438.

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

свернуть все

Непарные результаты испытаний гипотезы в виде NegativeBinomialTest объект. тест возвращен nbintest функция.

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'NumBins',4

Количество интервалов равного размера в виде разделенной запятой пары, состоящей из 'NumBins' и положительное целое число.

Пример: 'NumBins',3

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

свернуть все

Указатели на оси в виде вектора из указателей.

Смотрите также

| | |

Введенный в R2014b