Форум врачей-аспирантов

Здравствуйте, гость ( Вход | Регистрация )

> Одновыборочный z-тест для пропорций
passant
сообщение 18.02.2023 - 15:34
Сообщение #1





Группа: Пользователи
Сообщений: 231
Регистрация: 27.04.2016
Пользователь №: 28223



Уважаемые коллеги.
Что-то я зашел в тупик, прошу помощи.

Задача классическая. Требуется провести одновыборочный z-тест для пропорций. Казалось бы все понятно. В любом учебнике, и даже информации на cran.r-project.org находим:

Z=(pвыб-pтеор)/SQRT(pтеор*(1-pтеор)/N)

где pвыб - доля положительных результатов в выбоке,
pтеор - теоретически ожидаемая доля положительных результатов
N - объем выборки.

И все бы хорошо. Но вот вопрос - а каково буде значение этого критерия при pтеор=0 ?
То есть, мы не ожидаем появления положительных событий вообще, а они происходят?

Попытка посчитать "на бумажке" говорит о том, что знаменатель превращается в ноль и на этом все должно-бы закончиться.
Причем нигде, никогда никаких специально оговоренных случаев или исключений для этого теста я не встречал. Готов допустить, что это ограничение считается "очевидным" и поэтому даже не упоминается. Но тогда надо допустить, что разработчики пакетов и функций реализующих этот тест будут выполнять такую проверку внутри реализаций. Если это действительно фундаментальное исключение.

Ан нет. Пробую посчитать результат на Python с помощью функции proportions_ztest из пакета statsmodels.stats.proportion.
Проверяю, что-же данная функция делает: "simple normal test for proportions. It should be the same as running the mean z-test on the data encoded 1 for event and 0 for no event so that the sum corresponds to the count.mIn the one and two sample cases with two-sided alternative, this test produces the same p-value as proportions_chisquare, since the chisquare is the distribution of the square of a standard normal distribution." И никаких ограничений.
И тут неожиданность. При pтеор=0 и любом положительном значении pвыб результат спокойно высчитывается. Например - при pвыб=0.2 , N=10 имеем Z=1.5811388300841895 p_value=0.11384629800665805 и никаких сообщений об исключительной ситуации (и да, это двусторонний критерий, но суть от этого не меняется).

Не могу понять, что происходит, но где-то наталкиваюсь на сообщение , что proportions_ztest из пакета statsmodels.stats.proportion реализовано по подобию функции prop.test из R. Сам я снес RStudio лет пять назад, проверить не могу, но лезу читать описание. И вдруг, с глубоким удивлением вижу там (ну, например: http://www.sthda.com/english/wiki/one-prop...on-z-test-in-r) формулу, по которой происходит расчет:

Z=(pвыб-pтеор)/SQRT(pвыб*(1-pвыб)/N)

Как говориться, "почувствуйте разницу"! В первую очередь, с тем, что написано на cran.r-project.org (см. ссылку в первом абзаце). В знаменателе теперь не pтеор, а pвыб. Делаю пересчет вручную, и результат, как и ожидалось, совпадает с тем, что выдает proportions_ztest (и скорее всего и prop.test).

И вот теперь вопрос к знатокам. А какая-же формула корректна? Возможно-ли такая замена оценки дисперсии в знаменателе, если в результате мы получаем разные - пусть даже в одной точке - результаты? И можно-ли считать результаты, которые получены по формулам, реализованным в R и statsmodels для pтеор=0 корректными и использовать их для решения исходной задачи?

Допускаю, что чего-то где-то недоучитываю. Или просто запутался. Или ответ на поверхности, но я его просто не замечаю. Буду благодарен за ваше видение ситуации.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
 
Открыть тему
Ответов
ИНО
сообщение 21.02.2023 - 14:34
Сообщение #2





Группа: Пользователи
Сообщений: 262
Регистрация: 1.06.2022
Из: Донецк
Пользователь №: 39632



Извините за резкость, но Вы упорно гоните какую-то дичь. Там, где речь идет о проверке соответствия эмпирической величины некоторому заданному теоретическому параметру или закону распределения, само собой разумеется, нужно применять одновыборочный критерий, он же критерий согласия. И это вполне реалистичная ситуация, возникающая при проверке соответствия наблюдаемой картины мира некой теоретической модели, которая была создана не статистическими методами. Например, гипотезы об идеально сбалансированной монетке, которая обязана падать орлом кверху ровно при половине подбрасываний. Или о равном соотношении полов в потомстве. Или законов Менделя. И т. д. В вашем случае все еще проще, поскольку постулируете "теорвер=0", что автоматически выводит задачу из категории решаемых статистическими методами, о чем Вам уже весьма ясно и недвусмысленно сказали.

Но далее Вы описываете совершенно иную задачу о сравнении долей двух выборок. Пусть даже одна из них сильно больше второй, это еще не дает права считать ее генеральной совокупностью. Здесь нужен критерий двухвыборочный, он же критерий однородности. Разницу между согласием и однородностью улавливаете? И да, в зависимости от объемов выборок и наблюдаемых частот следует использовать разные критерии однородности. Когда я говорил о Барнарде, опирался на конкретное описание проблемы с пациентами, а их (особенно со 100% летальностью в одной из групп) всегда достаточно мало, чтобы можно было посчитать этот критерий на компьютере даже в самой кондовой оригинальной версии за приемлемое время. Но, поскольку далее Вы от медицины открестились, то, возможно, работаете с огромными выборками, где Барнарда пришлось бы считать до старости, в то время как и простая асимптотика была бы практически столь же эффективна. А дальше задача неожиданно трансформировалась в анализ временных рядов (насколько я могу судить по словосочетанию "Change Point Detection"). Да еще и на лету. Бурная эволюция исследовательской мысли - это, конечно, хорошо, но требовать один единственноправильный критерий на все порожденные ею экспериментальные планы весьма странно.

Сообщение отредактировал ИНО - 21.02.2023 - 14:35
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 

Сообщений в этой теме
- passant   Одновыборочный z-тест для пропорций   18.02.2023 - 15:34
- - 100$   ЦитатаИ вот теперь вопрос к знатокам. А какая-же ф...   18.02.2023 - 17:27
- - Игорь   Покажите исходные данные и ссылку на источник.   18.02.2023 - 18:26
- - nokh   Цитата(passant @ 18.02.2023 - 17:34)...   18.02.2023 - 18:41
- - passant   Цитата(100$ @ 18.02.2023 - 17:2...   19.02.2023 - 00:16
- - ИНО   Не подскажу насчет корректности и эквивалентности ...   19.02.2023 - 00:49
|- - passant   Цитата(ИНО @ 19.02.2023 - 00:49) , н...   19.02.2023 - 20:35
|- - DoctorStat   Цитата(passant @ 19.02.2023 - 20:35)...   19.02.2023 - 21:35
||- - passant   Цитата(DoctorStat @ 19.02.2023 - 21...   20.02.2023 - 00:35
|- - ИНО   Цитата(passant @ 19.02.2023 - 20:35)...   19.02.2023 - 23:53
- - DoctorStat   Цитата(passant @ 18.02.2023 - 15:34)...   19.02.2023 - 19:08
- - Игорь   Цитата(passant @ 18.02.2023 - 16:34)...   20.02.2023 - 09:10
|- - passant   Цитата(Игорь @ 20.02.2023 - 09:10) В...   20.02.2023 - 13:11
|- - ИНО   Цитата(passant @ 20.02.2023 - 13:11)...   20.02.2023 - 23:15
|- - passant   Цитата(ИНО @ 20.02.2023 - 23:15) ...   21.02.2023 - 13:57
- - comisora   2 passant Добрый день. Мой ответ не касается Ваше...   20.02.2023 - 13:57
|- - passant   Цитата(comisora @ 20.02.2023 - 13:57...   20.02.2023 - 14:45
- - 100$   ЦитатаПо поводу формул. Правильная первая. ЦитатаК...   20.02.2023 - 16:06
- - Игорь   Посмотрел русское издание Флейса (перевод первого ...   20.02.2023 - 19:18
- - ИНО   Извините за резкость, но Вы упорно гоните какую-то...   21.02.2023 - 14:34
|- - passant   Цитата(ИНО @ 21.02.2023 - 14:34) Изв...   21.02.2023 - 19:12
- - ИНО   Как же тебя помнешь, если ты ничего не говоришь(С)...   22.02.2023 - 05:06
- - Игорь   Спешу поделиться ссылкой о мерах против "нуля...   26.02.2023 - 14:05
|- - nokh   Цитата(Игорь @ 26.02.2023 - 16:05) С...   26.02.2023 - 20:39
|- - Игорь   Цитата(nokh @ 26.02.2023 - 21:39) ве...   26.02.2023 - 21:50
- - 100$   Ответил на свой вопрос устами проф. Агрести. В об...   27.02.2023 - 14:06


Добавить ответ в эту темуОткрыть тему