我使用包pscl
运行零膨胀泊松回归,并且遇到与此post相同的错误
但是,由于我知道z
表示存在过量零的单独过程,所以将Poisson作为解决方案运行是否仍然有意义(泊松结果很好)?有没有其他方法来解决ZIP的这个问题?我也尝试过零膨胀负二项式回归,但它得到了同样的错误。感谢。
Call:
zeroinfl(formula = y ~ x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 | z, data = df)
Pearson residuals:
Min 1Q Median 3Q Max
-2.48465 -0.06156 -0.06126 -0.06091 5.57840
Count model coefficients (poisson with log link):
Estimate Std. Error z value Pr(>|z|)
(Intercept) 3.547e+00 NA NA NA
x1 -3.251e-02 NA NA NA
x2 6.290e-03 NA NA NA
x3 8.867e-01 NA NA NA
x4 1.432e-01 NA NA NA
x5 2.705e-01 NA NA NA
x6 -8.223e-10 NA NA NA
x7 -7.218e-02 NA NA NA
x8 3.322e-02 NA NA NA
x9 -2.072e-01 NA NA NA
Zero-inflation model coefficients (binomial with logit link):
Estimate Std. Error z value Pr(>|z|)
(Intercept) 5.531 NA NA NA
z 158.108 NA NA NA
Error in if (getOption("show.signif.stars") & any(rbind(x$coefficients$count, :
missing value where TRUE/FALSE needed
答案 0 :(得分:2)
如果没有可重复的例子,很难回答这个问题,但我会提供一些观察结果(评论时间太长):
pscl
的默认行为是对模型的零膨胀和计数(条件)部分使用相同的公式。除非您拥有非常大的数据集,否则您很可能无法在数据的计数和零通胀方面拟合10参数模型(拦截+9个协变量)。 (一个合理的经验法则是,您的观测值应该是参数的20倍,因此至少需要观察400次 - 而这一规则对于估算零通货膨胀可能是保守的。)x6
)大约为零,表明您的数据中没有足够的变化来估算该参数(或者此协变量存在其他问题,例如你在这方面有一个极端的异常值)。这很容易搞乱整个模型的标准错误等。一般建议:
Uriarte和Yackulic,生态应用,19(3),2009,第592-596页