Я пытаюсь создать модель, для которой у меня есть переменная ответа, которая составляет пропорцию между 0 и 1, это включает довольно много 0 и 1, но также и много значений между ними. Я думаю о попытке бета-регрессии. Пакет, который я нашел для R (betareg), допускает только значения в диапазоне от 0 до 1, но не включая 0 или 1. Я читал в другом месте, что теоретически бета-распределение должно иметь возможность обрабатывать значения 0 или 1, но я не знаю, как справиться с этим в RI видел, что некоторые люди добавляют 0,001 к нулям и беру 0,001 из единиц, но я не уверен, что это хорошая идея?
В качестве альтернативы я мог бы преобразовать ответную переменную и использовать линейную регрессию. В этом случае у меня та же проблема с 0 и 1, которые не могут быть преобразованы в лог.
источник
Ответы:
Вы можете использовать модели с нулевой и / или одной завышенной бета-регрессией, которые комбинируют бета-распределение с вырожденным распределением, чтобы присвоить некоторую вероятность 0 и 1 соответственно. Для подробностей смотрите следующие ссылки:
Ospina, R. & Ferrari, SLP (2010). Завышенные бета-версии. Статистические документы, 51 (1), 111-126. Ospina, R. & Ferrari, SLP (2012). Общий класс моделей бета-регрессии с нулевой или одной инфляцией. Вычислительная статистика и анализ данных, 56 (6), 1609 - 1623.
Эти модели легко реализовать с помощью пакета gamlss для R.
источник
zoib
пакет делает это легко.В документации для
betareg
пакета R упоминается, чтоhttp://cran.r-project.org/web/packages/betareg/vignettes/betareg.pdf
Они дают ссылку Smithson M, Verkuilen J (2006). «Лучшая лимонная соковыжималка? Регрессия максимального правдоподобия с бета-распределенными зависимыми переменными». Психологические методы, 11 (1), 54–71.
источник
Разве вы не делаете логит-преобразование, чтобы сделать переменную в диапазоне от минус бесконечности до плюс бесконечности? Я не уверен, если данные с 0 и 1 должны быть проблемой. Это показывает какое-либо сообщение об ошибке? Кстати, если у вас есть только пропорции, ваш анализ всегда будет неправильным. Вы должны использовать ,
weight=argument
чтобыglm
с числом случаев.Если ничего не работает, вы можете использовать медианное разделение, разделение на квартили или любую другую точку разделения, которую вы считаете целесообразной, чтобы разделить DV на несколько категорий, а затем выполнить вместо этого Порядковую логистическую регрессию. Это может сработать. Попробуйте эти вещи.
Лично я не думаю, что добавление 0,001 к нулям и взятие 0,001 из них - это слишком плохая идея, но у нее есть некоторые проблемы, которые будут обсуждаться позже. Подумайте, почему бы вам не сложить и не вычесть 0,000000001 (или даже больше десятичных знаков)? Это будет лучше представлять 0 и 1 !! Вам может показаться, что это не имеет большого значения. Но это действительно так.
Давайте посмотрим на следующее:
Итак, вы видите, вам нужно держать шансы как можно ближе к (0/1) и (1/0). Вы ожидаете, что шансы на логи варьируются от минус бесконечности до плюс бесконечности. Таким образом, чтобы сложить или вычесть, вам нужно выбрать действительно очень длинное десятичное число, чтобы шансы журнала были близки к бесконечности (или очень велики) !! Степень, которую вы считаете достаточно большой, зависит исключительно от вас.
источник
Проверьте следующее, где специальное преобразование упомянуто на слайде 17. maartenbuis.nl/presentations/berlin10.pdf. Также вы можете моделировать 0 и 1 с двумя отдельными логистическими регрессиями, а затем использовать бета-регрессию для тех, кто не находится на границе.
источник
источник