barnard_exact#
- scipy.stats.barnard_exact(таблица, альтернатива='two-sided', объединённый=True, n=32)[источник]#
Выполнить точный тест Барнарда на таблице сопряженности 2x2.
- Параметры:
- таблицаarray_like из целых чисел
Таблица сопряженности 2x2. Элементы должны быть неотрицательными целыми числами.
- альтернатива{‘two-sided’, ‘less’, ‘greater’}, необязательный
Определяет нулевую и альтернативную гипотезы. По умолчанию 'two-sided'. Пожалуйста, смотрите объяснения в разделе Notes ниже.
- объединённыйbool, необязательно
Вычислять ли статистику оценки с объединённой дисперсией (как в t-критерии Стьюдента, например) или с необъединённой дисперсией (как в t-критерии Уэлча). По умолчанию
True.- nint, необязательный
Количество точек выборки, используемых при построении метода выборки. Обратите внимание, что этот аргумент будет автоматически преобразован в следующую более высокую степень 2, поскольку
scipy.stats.qmc.Sobolиспользуется для выбора точек выборки. По умолчанию 32. Должно быть положительным. В большинстве случаев 32 точек достаточно для достижения хорошей точности. Большее количество точек приводит к снижению производительности.
- Возвращает:
- berBarnardExactResult
Объект результата со следующими атрибутами.
- статистикаfloat
Статистика Вальда с объединённой или необъединённой дисперсией, в зависимости от выбора пользователя объединённый.
- p-значениеfloat
P-значение, вероятность получения распределения, по крайней мере, столь же экстремального, как фактически наблюдаемое, при условии, что нулевая гипотеза верна.
Смотрите также
chi2_contingencyКритерий хи-квадрат независимости переменных в таблице сопряженности.
fisher_exactТочный тест Фишера для таблицы сопряжённости 2x2.
boschloo_exactТочный тест Бошлоо для таблицы сопряженности 2x2, который является равномерно более мощной альтернативой точному тесту Фишера.
Примечания
Тест Барнарда — это точный тест, используемый при анализе таблиц сопряжённости. Он исследует связь двух категориальных переменных и является более мощной альтернативой точному тесту Фишера для таблиц сопряжённости 2x2.
Давайте определим \(X_0\) матрица 2x2, представляющая наблюдаемую выборку, где каждый столбец хранит биномиальный эксперимент, как в примере ниже. Давайте также определим \(p_1, p_2\) теоретические биномиальные вероятности для \(x_{11}\) и \(x_{12}\). При использовании точного теста Барнарда мы можем утверждать три различные нулевые гипотезы:
\(H_0 : p_1 \geq p_2\) против \(H_1 : p_1 < p_2\), с альтернатива = "less"
\(H_0 : p_1 \leq p_2\) против \(H_1 : p_1 > p_2\), с альтернатива = “greater”
\(H_0 : p_1 = p_2\) против \(H_1 : p_1 \neq p_2\), с альтернатива = "двусторонний" (по умолчанию односторонний)
Для вычисления точного критерия Барнарда мы используем статистику Вальда [3] с объединенной или необъединенной дисперсией. При предположении по умолчанию, что обе дисперсии равны (
pooled = True), статистика вычисляется как:\[T(X) = \frac{ \hat{p}_1 - \hat{p}_2 }{ \sqrt{ \hat{p}(1 - \hat{p}) (\frac{1}{c_1} + \frac{1}{c_2}) } }\]с \(\hat{p}_1, \hat{p}_2\) и \(\hat{p}\) оценка \(p_1, p_2\) и \(p\), последнее является объединенной вероятностью, при условии, что \(p_1 = p_2\).
Если это предположение неверно (
pooled = False), статистика равна:\[T(X) = \frac{ \hat{p}_1 - \hat{p}_2 }{ \sqrt{ \frac{\hat{p}_1 (1 - \hat{p}_1)}{c_1} + \frac{\hat{p}_2 (1 - \hat{p}_2)}{c_2} } }\]p-значение затем вычисляется как:
\[\sum \binom{c_1}{x_{11}} \binom{c_2}{x_{12}} \pi^{x_{11} + x_{12}} (1 - \pi)^{t - x_{11} - x_{12}}\]где сумма берётся по всем таблицам сопряжённости 2x2 \(X\) такие, что: * \(T(X) \leq T(X_0)\) когда альтернатива = "less", * \(T(X) \geq T(X_0)\) когда альтернатива = "greater", или * \(T(X) \geq |T(X_0)|\) когда альтернатива = “two-sided”. Выше, \(c_1, c_2\) являются суммой столбцов 1 и 2, и \(t\) общее значение (сумма 4 элементов выборки).
Возвращаемое p-значение является максимальным p-значением, взятым по мешающему параметру \(\pi\), где \(0 \leq \pi \leq 1\).
Сложность этой функции составляет \(O(n c_1 c_2)\), где n это количество точек выборки.
Ссылки
[1]Барнард, Г. А. «Значимость тестов для таблиц 2x2». Biometrika. 34.1/2 (1947): 123-138. DOI:dpgkg3
[2] (1,2)Mehta, Cyrus R., and Pralay Senchaudhuri. «Conditional versus unconditional exact tests for comparing two binomials.» Cytel Software Corporation 675 (2003): 1-5.
[3]«Тест Вальда». Википедия. https://en.wikipedia.org/wiki/Wald_test
Примеры
Пример использования теста Барнарда представлен в [2].
Рассмотрим следующий пример исследования эффективности вакцины (Чан, 1998). В рандомизированном клиническом испытании с 30 участниками 15 были привиты рекомбинантной ДНК-вакциной против гриппа, а 15 — плацебо. Двенадцать из 15 участников группы плацебо (80%) в итоге заразились гриппом, тогда как в группе вакцины только 7 из 15 участников (47%) заразились. Данные представлены в виде таблицы 2 x 2:
Vaccine Placebo Yes 7 12 No 8 3
При работе со статистической проверкой гипотез мы обычно используем пороговую вероятность или уровень значимости, на основе которого решаем отвергнуть нулевую гипотезу \(H_0\). Предположим, мы выберем общепринятый уровень значимости 5%.
Наша альтернативная гипотеза состоит в том, что вакцина снизит вероятность заражения вирусом; то есть вероятность \(p_1\) вероятности заражения вирусом при вакцинации будет меньше чем вероятность \(p_2\) заражения вирусом без вакцины. Поэтому мы называем
barnard_exactсalternative="less"опция:>>> import scipy.stats as stats >>> res = stats.barnard_exact([[7, 12], [8, 3]], alternative="less") >>> res.statistic -1.894 >>> res.pvalue 0.03407
При нулевой гипотезе о том, что вакцина не снизит вероятность заражения, вероятность получения результатов теста, по крайней мере, таких же экстремальных, как наблюдаемые данные, составляет примерно 3,4%. Поскольку это p-значение меньше выбранного нами уровня значимости, у нас есть основания отвергнуть \(H_0\) в пользу альтернативы.
Предположим, мы использовали точный критерий Фишера:
>>> _, pvalue = stats.fisher_exact([[7, 12], [8, 3]], alternative="less") >>> pvalue 0.0640
С тем же порогом значимости 5% мы не смогли бы отклонить нулевую гипотезу в пользу альтернативной. Как указано в [2], тест Барнарда равномерно более мощный, чем точный тест Фишера, потому что тест Барнарда не обусловлен какими-либо маргиналами. Тест Фишера следует использовать только когда оба набора маргиналов фиксированы.