nbintest

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

Описание

пример

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. Остальная часть данных об экспрессии гена сгенерирована от того же отрицательного биномиального распределения для обоих условий. Каждая выборка также имеет различный фактор размера (то есть, покрытие или глубина выборки).

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

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.

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

свернуть все

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

Примечание

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

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

Примечание

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

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

Задайте дополнительные разделенные запятой пары Name,Value аргументы. 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