Моделювання даних підрахунку, коли змінна зміщення дорівнює 0 для деяких спостережень


9

Я намагаюся допомогти студенту колеги. Учень спостерігав і підраховував поведінку птахів (кількість дзвінків) в експериментальній установці. Кількість дзвінків, які можна віднести до конкретної спостережуваної птиці під час кожного експерименту, не вдалося визначити, але підрахувати кількість птахів, які сприяли кількості записаних дзвінків, було можливо. Отже, моя початкова пропозиція полягала в тому, щоб включити кількість птахів як зміщений термін у модель Poisson GLM, отже, ми б відповідали очікуваній кількості дзвінків на одну птицю .

Проблема в цьому полягає в тому, що під час багатьох випадків спостереження жодні птахи (а отже, і дзвінки) не спостерігалися. Програмне забезпечення (R у цьому випадку) скаржиться, тому що (R скаржиться на вміст даних, але це суто результат їх існування ).log(0)=infy-Infoffset(log(nbirds))-Inf

Я насправді підозрюю, що нам потрібна модель перешкод (або подібна), де у нас є окрема біноміальна модель для "спостережень, що спостерігаються?" (або ні) і усічена модель підрахунку кількості викликів (на одну птицю) у ситуаціях, коли були дзвінки, де ми включаємо термін зміщення лише у частину підрахунку моделі.

Спробувавши це за допомогою пакету pscl в R, але я все одно отримую ту ж помилку:

mod1 <- hurdle(NumberCallsCOPO ~ Condition * MoonVis +
               offset(log(NumberCOPO)) | 1, data = Data,
               dist = "poisson")

тому що той самий R-код ( glm.fitякий використовується внутрішньо, hurdle()щоб підходити для підрахунку частини моделі) перевіряється, -Infхоча я не думаю, що це вплине на придатність моделі для цих спостережень. (Це правильне припущення?)

Я можу підігнати модель, додавши невелику кількість до NumberCOPO(скажімо 0.0001), але це в кращому випадку підступ.

Чи додавати цю невелику корекцію безперервності буде нормально на практиці? Якщо ні, то які ще підходи ми повинні враховувати при обробці даних, де ми можемо бажати використовувати зміщення в моделі Пуассона, де змінна зміщення може приймати значення 0? Усі приклади, з якими я зіткнувся, стосуються ситуацій, коли 0 змінна змінна не була б можливою.


2
У цьому випадку здається, що ваша модель намагається відповідати тавтології: якщо спостерігається 0 птахів, ви також почуєте 0 пташиних дзвінків. Я не переконаний, що примірка моделі до рядків зі зміщенням 0 доречна в цьому випадку.
Sycorax каже, що повернеться до Моніки

Дякую, як я вже згадував нижче, це теж моя кишкова реакція. Я трохи розширив свою відповідь на відповідь Баррі (Spacedman) нижче.
Гевін Сімпсон

2
Я погодився б із коментарями, з яких випливає, що модель ставки Пуассона (тобто з терміном компенсації) є невідповідною для тих випадків (і ви праві, говорячи, що для включення цих випадків може бути застосована окрема, наприклад двочленна) модель . Ставка не може базуватися на нульовому знаменнику.
ttnphns

Відповіді:


5

Отже, відповідь, яку ви хочете змоделювати, - це "Кількість дзвінків на одну птицю", а проблемні лінії - це те, де ви не спостерігали жодної птиці? Просто скиньте ці рядки. Вони не додають інформації до речі, яку ви намагаєтеся моделювати.


Ось і моя кишкова реакція; Можливо, це переосмислив, але я можу передбачити ситуацію, коли птахи спостерігали, але не дзвонили. Звідси модель перешкод, але всередині вона все ще використовує, glm.fitяка видає коливання, навіть якщо ці значення не враховуються в рахунковій частині моделі. Я думаю, я міг би зробити модель перешкод вручну, але я не хочу цього робити, просто порадити студенту.
Гевін Сімпсон

3
Якщо у вас багато нульових дзвінків, здійснених від ненульових спостережуваних птахів, ви, можливо, захочете зробити модель із завищеною нулем (або подібну), але це дуже відрізняється від нульових спостережуваних птахів, коли вас цікавить кількість дзвінків на одну птицю .
Спайсмен

У цьому випадку я не думаю, що у нас їх багато; викидання даних 0-птахів, що спостерігаються, та підключення до негативного двочлена здається першим розумним кроком.
Гевін Сімпсон

2

У Poisson GLM компенсація - це просто мультипликативне масштабування за коефіцієнтом моделювання Пуассона - і Пуассон із нульовою швидкістю не є корисним або навіть значущим ...

Ось чому Spacedman правильний!


0

Просто спробуйте зробити це (перешкода) "вручну (для" дидактичної / гімнастичної "цілі): розділіться на біноміальну частину і частину кута, і насолоджуйтесь пристосуванням регрес логіта і кутта окремо! Або використовуйте стандартні моделі перешкод (+ тест Вуонга) Poisson / negBin / Гамма ..., GAM. Вам не здається тут "офсетний" вар, мені здається. ;-)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.