В дополнение к mgcv и его раздуваемым нулями семействам Пуассона ( ziP()
и ziplss()
), вы также можете взглянуть на пакет brms от Paul-Christian Bürkner. Он может соответствовать моделям распределения (где вы моделируете больше, чем просто среднее значение, в вашем случае компонент нулевой инфляции модели может быть смоделирован как функция ковариат, точно так же, как и функция подсчета).
Вы можете включить сглаживание в любом из линейных предикторов (для среднего / счетного, нулевой инфляции и т. Д.) Через s()
и t2()
слагаемые для простых 1-мерных или изотропных 2-мерных сплайнов или сплайнов анизотропных тензорных произведений соответственно. Он поддерживает распределения с биномом с нулевым надуванием, пуассоновским, отрицательным биномиальным и бета-распределением, а также с бета-распределением с нулевым инфляцией. У этого также есть модели препятствия для Пуассона и отрицательных биномиальных ответов (где счетная часть модели является усеченным распределением, чтобы не производить дальнейшие нулевые счета).
brms подходит для этих моделей с использованием STAN , поэтому они полностью байесовские, но для этого потребуется изучить новый набор интерфейсов для извлечения соответствующей информации. Тем не менее, есть несколько пакетов, предлагающих функции поддержки только для этой задачи, и у brms написаны вспомогательные функции, которые используют эти вторичные пакеты. Вам нужно будет установить STAN и вам понадобится компилятор C ++, так как brms компилирует модель, определенную с использованием R, в код STAN для оценки.
brms
что действительно очень приятно и гибко. Вместе с Ники Умлауфом я также планировал написать несколько семейств подсчетов,bamlss
чтобы получить дополнительные гибкие функции регрессии ... но до сих пор у нас не было возможности подсчитывать распределения данных.