Нулевая модель с несколькими факторами выдает сообщение об ошибке - PullRequest
0 голосов
/ 21 сентября 2018

У меня есть набор данных о паразитах с нулевым завышением (47% нулей), и я хотел бы использовать модель с раздутым нулем для ее анализа.Вот фальшивая и короткая версия фрейма данных.

hostsp <- sample(LETTERS[1:4], 100, replace=TRUE)
hostdiet <- sample(letters[24:26], 100, replace=TRUE, prob=c(0.5, 0.2, 0.3) )
sl <- runif(100, min=10, max=120)
nrparas <- sample(0:9, 100, replace=TRUE, prob=c(0.47,0.25,0.15,0.05,0.03,0.02,0.01,0.01,0.005,0.005) )

DF <- data.frame(hostsp, hostdiet, sl, nrparas, stringsAsFactors=T)

По сути, каждая строка представляет собой особь хозяина, которая принадлежит к виду хозяина (hostsp) с его рационом (hostdiet, nested), размером (sl) и количеством паразитов, заражающих его (nrparas).

  hostsp hostdiet        sl nrparas
1      A        x  86.62092       0
2      A        y  92.23788       0
3      C        z  44.67148       2
4      D        x  41.82872       1
5      C        z 104.24964       0
6      D        x 117.51238       2

А вот модель с нулевым раздувом:

zip1 <- zeroinfl(nrparas ~ hostsp*sl+hostdiet | hostsp*sl+hostdiet, data=DF)
summary(zip1)

Но когда я запускаю модель, я получаю сообщение об ошибке, и модель не работает.

Error in solve.default(as.matrix(fit$hessian)) : 
  system is computationally singular: reciprocal condition number = 1.03323e-36

В моем исходном фрейме данных эта ошибка исчезает, если я удаляю некоторые переменные из формулы ZI (особенно виды хозяев, что является для меня самой интересной частью!)Почему я получаю это сообщение об ошибке?Как я могу решить это?Большое спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...