У меня есть данные из эксперимента, которые я проанализировал с помощью t-тестов. Зависимая переменная масштабируется по интервалу, а данные либо непарные (т. Е. 2 группы), либо парные (т. Е. Внутри-субъекты). Например (в рамках предметов):
x1 <- c(99, 99.5, 65, 100, 99, 99.5, 99, 99.5, 99.5, 57, 100, 99.5,
99.5, 99, 99, 99.5, 89.5, 99.5, 100, 99.5)
y1 <- c(99, 99.5, 99.5, 0, 50, 100, 99.5, 99.5, 0, 99.5, 99.5, 90,
80, 0, 99, 0, 74.5, 0, 100, 49.5)
Тем не менее, данные не являются нормальными, поэтому один рецензент попросил нас использовать что-то кроме t-критерия. Однако, как можно легко видеть, данные не только не распределены нормально, но и неравномерно распределены между условиями:
Поэтому обычные непараметрические критерии, U-критерий Манна-Уитни (непарный) и критерий Уилкоксона (парный), нельзя использовать, поскольку они требуют равного распределения между условиями. Поэтому я решил, что какой-то тест с передискретизацией или перестановкой будет лучше.
Теперь я ищу R-реализацию эквивалента t-критерия на основе перестановок или любой другой совет о том, что делать с данными.
Я знаю, что есть некоторые R-пакеты, которые могут сделать это для меня (например, Coin, Perm, SparkRestTest и т. Д.), Но я не знаю, какой из них выбрать. Так что, если кто-то, имеющий некоторый опыт использования этих тестов, может дать мне толчок, это будет Ubercool.
ОБНОВЛЕНИЕ: было бы идеально, если бы вы могли предоставить пример того, как сообщить о результатах этого теста.
источник
coin
действительно можно рассчитать точное распределение перестановок (без фактического прохождения всех перестановок, существуют более элегантные алгоритмы, чем это). Учитывая выбор, точное распределение кажется предпочтительным, но разница с приближением Монте-Карло с большим числом повторов должна быть небольшой.oneway_test
точная функция? И если да, какой из них является правильным для непарных данных?coin
Автор написал мне, чтоoneway_test()
не может рассчитать точное распределение для зависимого случая, вы должны пойти с приближением MC (wilcoxsign_test()
подходит только для точного теста). Я не знал этого и предпочел бы ошибку в этом случае, но MC должен быть достаточно точным с большим количеством повторов.Несколько комментариев, я полагаю, в порядке.
1) Я бы посоветовал вам попробовать несколько визуальных отображений ваших данных, потому что они могут фиксировать вещи, которые потеряны (например, графики), и я также настоятельно рекомендую рисовать на осях рядом друг с другом. В этом случае я не верю, что гистограммы отлично справляются с передачей основных характеристик ваших данных. Например, посмотрите на боксы бок о бок:
Или даже рядом стрип-чарты:
2) Вы не очень подробно объяснили, откуда берутся ваши данные и как они были измерены, но эта информация очень важна, когда приходит время выбирать статистическую процедуру. Ваши два образца выше независимы? Есть ли основания полагать, что предельные распределения двух образцов должны быть одинаковыми (например, за исключением различий в местоположении)? Каковы были соображения до исследования, которые заставили вас искать доказательства различия между двумя группами?
5) По моему мнению, эти данные являются идеальным (?) Примером того, что правильно выбранная картина стоит 1000 проверок гипотез. Нам не нужна статистика, чтобы определить разницу между карандашом и сараем. На мой взгляд, подходящим утверждением для этих данных будет «Эти данные демонстрируют заметные различия в отношении местоположения, масштаба и формы». Вы можете использовать (надежную) описательную статистику для каждого из них, чтобы количественно оценить различия и объяснить, что эти различия означают в контексте вашего первоначального исследования.
Этот ответ намного длиннее, чем я предполагал. Прости за это.
источник
Мои комментарии не о реализации теста перестановки, а о более общих проблемах, поднятых этими данными и обсуждении их, в частности поста Дж. Керна.
Эти два распределения на самом деле выглядят очень похоже на меня, КРОМЕ для группы 0 в Y1, которые сильно отличаются от других наблюдений в этой выборке (следующее наименьшее - около 50 по шкале 0-100), а также всех в X1. Сначала я бы выяснил, было ли что-то другое в этих наблюдениях.
Во-вторых, если предположить, что эти 0 действительно принадлежат анализу, то сказать, что тест на перестановку недействителен, потому что распределения, кажется, отличаются, напрашивается вопрос. Если бы значение NULL было истинным (распределения были идентичными), могли бы вы (с разумной вероятностью) получить распределения, выглядящие такими же разными, как эти два? Отвечая, в этом весь смысл теста, не так ли? Возможно, в этом случае некоторые сочтут ответ очевидным без запуска теста, но с этими небольшими, своеобразными дистрибутивами, я не думаю, что смогу.
источник
Когда этот вопрос снова возник, я могу добавить еще один ответ, вдохновленный недавним сообщением в блоге через R-Bloggers от Robert Kabacoff, автора Quick-R и R in Action, использующего
lmPerm
пакет.Однако этот метод дает резко контрастирующие (и очень нестабильные) результаты по сравнению с результатами, полученными
coin
пакетом в ответе @caracakl (p-значение анализа внутри объекта0.008
). Анализ также основан на ответе @ caracal:производит:
Если вы запустите это несколько раз, значения p будут колебаться между ~ .05 и ~ .1.
Хотя это и есть ответ на вопрос, позвольте мне в конце поставить вопрос (я могу перенести его на новый вопрос, если это необходимо):
любые идеи о том, почему этот анализ настолько нестабилен и действительно дает такие расходящиеся значения р анализ монет? Я сделал что-то не так?
источник
set.seed(1)
; для большей точности оценки MC вы увеличиваете количество итераций; Я не уверен, что любой из них является «правильным» ответом на ваш вопрос, но они, вероятно, актуальны.oneway_anova()
(всегда близко к правильному результату) иaovp()
(как правило, далеко от правильного результата). Я не знаю, почемуaovp()
дает очень разные результаты, но по крайней мере для этого случая они неправдоподобны. При последнем вызове @gungoneway_test(DV ~ IV | id, ...)
в моем исходном ответе были указаны страты ошибок для зависимого случая (синтаксис, отличный от используемогоaov()
).Являются ли эти оценки пропорциями? Если это так, то вам определенно не следует использовать гауссовский параметрический тест, и, хотя вы можете использовать непараметрический подход, такой как тест на перестановку или загрузку средств, я бы посоветовал вам получить больше статистической мощности используя подходящий негауссовский параметрический подход. В частности, в любое время, когда вы можете вычислить меру пропорции в интересующей единице (например, участник эксперимента), вы можете и, вероятно, должны использовать модель смешанных эффектов, которая определяет наблюдения с биномиально распределенной ошибкой. Смотри Диксон 2004 .
источник
Просто добавить еще один подход,
ezPerm
вez
упаковке:Это , как представляется, соответствует к
oneway_test
вcoin
упаковке:Однако обратите внимание, что это не тот пример, предоставленный @caracal . В его примере он включает
alternative="greater"
, следовательно, разницу в значениях р~0.008
против~0.016
.aovp
Пакет предлагается в одном из ответов производят подозрительно снижающий р-значение, и работаю подозрительно быстро , даже когда я пытаюсь высокими значениями дляIter
,Ca
иmaxIter
аргументов:Тем не менее, аргументы, похоже, немного уменьшают вариации значений p от
~.03
и~.1
(я получил больший диапазон, чем сообщаемый @Henrik), до0.03
и0.07
.источник