Я получил похожую ошибку, и, вероятно, она вызвана использованием дробных значений ответа.Например, в приведенном ниже коде случай 1 хорош, но случаи 2-4 не выполняются:
resp1 <- rep(1, 6)
trt <- c("A", "A", "A", "B", "B", "B")
ftd1 <- gamlss(resp1 ~ trt, family = PO(mu.link = "log"))
resp2 <- rep(0.0001, 6)
ftd2 <- gamlss(resp2 ~ trt, family = PO(mu.link = "log"))
resp3 <- resp1
resp3[6] <- 0.0001
ftd3 <- gamlss(resp3 ~ trt, family = PO(mu.link = "log"))
resp4 <- resp1
resp4[6] <- 1.75
ftd4 <- gamlss(resp4 ~ trt, family = PO(mu.link = "log"))
Чтобы ответить на ваш вопрос напрямую, используйте glm () или glm2 (), пока разработчики gamlss не исправят это (я отправил ихссылка на этот пост).Однако, как указывалось в другом ответе, если ваш ответ пропорционален 0 и 1, не имеет смысла в первую очередь подходить Пуассону.