nbintest

Непарный тест гипотезы для данных о количестве с размерами небольшой выборки

Синтаксис

test = nbintest(X,Y)
test = nbintest(X,Y,Name,Value)

Описание

пример

test = nbintest(X,Y) выполняет тест гипотезы, что две независимых выборки данных о количестве короткого чтения, в каждой строке X и Y, прибывают из дистрибутивов с равными средними значениями под предположениями что:

  • Количества короткого чтения моделируются с помощью отрицательного биномиального распределения.

  • Отклонение и среднее значение данных в каждой строке соединяются через функцию регрессии вдоль всех строк.

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

test является объектом NegativeBinomialTest с двухсторонними p-значениями, сохраненными в свойстве pValue.

Используйте эту функцию когда это необходимо, чтобы выполнить непарный тест гипотезы для данных о количестве короткого чтения (от испытания высокой пропускной способности, такого как RNA-Seq или ЧИП-Seq) с размерами небольшой выборки (в порядке десятков самое большее). Например, используйте эту функцию, чтобы решить, являются ли наблюдаемые различия в количествах чтения между двумя условиями значительными для данных генов.

test = nbintest(X,Y,Name,Value) дополнительные опции использования заданы одним или несколькими аргументами пары Name,Value.

Примечание

Рекомендуется, чтобы вы использовали диагностические графики объекта NegativeBinomialTest, возвращенного nbintest прежде, чем интерпретировать p-значения. Эти графики позволяют вам видеть, правильно ли образцовое предположение, и используемая ссылка отклонения подходит для данных.

Примеры

свернуть все

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

Данные в этом примере содержат синтетические генные данные о количестве для 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)

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

свернуть все

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

Примечание

X и Y должны иметь одинаковое число строк и по крайней мере 2 столбца, но не обязательно одинаковое число столбцов. Строки X и Y соответствуют генам (или функции), такие как измерения экспрессии гена для различных генов. Столбцы обычно являются моментами времени или пациентами.

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

Примечание

X и Y должны иметь одинаковое число строк и по крайней мере 2 столбца, но не обязательно одинаковое число столбцов. Строки X и Y соответствуют генам (или функции), такие как измерения экспрессии гена для различных генов. Столбцы являются моментами времени или пациентами.

Аргументы в виде пар имя-значение

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

Пример: 'VarianceLink','Identity' указывает, что отклонение равно среднему значению при определении связи между двумя.

Логический флаг, чтобы объединить отклонение через оба условия, заданные как true или false. По умолчанию отклонение оценивается отдельно для каждого условия.

Пример: 'PooledVariance',true

Размер (масштабирование) фактор каждого столбца в X и Y, заданном как массив ячеек двух векторов, таких как {SX,SY}. SX и SY являются числовыми векторами с размерами, равными size(X,2) и size(Y,2). SX, SY, или оба могут быть скаляром, указывающим, что все столбцы совместно используют тот же фактор размера.

В библиотеке упорядочивания высокой пропускной способности фактором размера является оценка покрытия или глубины выборки. Значением по умолчанию является пустой массив [], означая, что фактор размера оценивается как медиана отношения количеств выборки к геометрическому среднему значению каждой строки в X или Y. Строки с нулевым средним геометрическим проигнорированы.

Пример: 'SizeFactor',{[1.2,0.5,0.8],[0.8,1.1,1.5]}

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

свернуть все

Результаты испытаний гипотезы, возвращенные как объект NegativeBinomialTest. Используйте этот объект создать диагностические графики и p-значения доступа.

Ссылки

[1] Андерс, S. и Хубер, W. (2010). Дифференциальный анализ выражения для последовательности считает данные. Биология генома, 11 (10): R106.

[2] Робинсон, Доктор медицины, и Smyth, G.K. (2008). Оценка небольшой выборки Отрицательной Биномиальной Дисперсии, с Приложениями к данным SAGE. Биостатистика, 9:321-332.

[3] Мариони, J.C., масон, C.E., грива, S.M., Стивенс, M. и Гилад, Y. (2008). RNA-seq: оценка технической воспроизводимости и сравнения с массивами экспрессии гена. Исследование генома, 16:1509-1517.

Введенный в R2014b