GLMM适用于半连续数据

时间:2019-02-22 21:09:06

标签: r

我正在处理一个非常难以处理的数据集:鱼幼虫密度。它是半连续的数据,具有90%的零和右斜分布,很少有非常大的值。例如,我想对环境特征和幼虫密度做出一些预测。我正在尝试使用两部分模型(用于半连续数据的 GLMMadaptive family = hurdle.lognormal()

但是命令 summary 不适用于装有mixed_model()family = hurdle.lognormal()的模型。因此,我不知道如何为预测变量获得标准误差,p值和置信区间。

另一个问题与残差的拟合优度有关。我怎么找呢?

此外,我试图在没有固定效果的情况下拟合空模型,以寻找模型的重要性,但是我无法修复它,因为它会显示以下消息:

.subset2(x,i,确切=精确)中的错误:下标超出范围

Nullmodel <- mixed_model(fixed = Dprochilodus ~ 1, random = ~ 1|periodo, data = OeL_final, family = hurdle.lognormal(), max_coef_value = 30) 

mymodel <- mixed_model(fixed = Dprochilodus ~ ponto+Dif_his.y+temp,  random = ~ 1 | periodo, data = OeL_final, family = hurdle.lognormal(), n_phis = 1,      zi_fixed = ~ ponto, max_coef_value = 30)

我的模型结果是:

Call: mixed_model(fixed = logDprochilodus ~ ponto + Dif_his.y + temp, 
    random = ~1 | periodo, data = OeL_final, family = hurdle.lognormal(), 
    zi_fixed = ~ponto, n_phis = 1, max_coef_value = 30)


Model:  family: hurdle log-normal  link: identity 

Random effects covariance matrix:
                StdDev (Intercept) 0.05366623

Fixed effects:   (Intercept)       pontoIR      pontoITA      pontoJEQ pontoTB     Dif_his.y          temp 
 3.781147e-01 -1.161167e-09  3.660306e-01 -1.273341e+00 -5.834588e-01  1.374241e+00 -4.010771e-02 

Zero-part coefficients: (Intercept)     pontoIR    pontoITA    pontoJEQ     pontoTB 
  1.4522523  21.3761790   3.3013379   1.1504374   0.2031707 

Residual std. dev.:
 1.240212 

log-Lik: -216.3266

有人使用这种模型吗??非常感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

summary()方法应与family = hurdle.lognormal()一起使用。例如,您可以在发布的示例here中调用summary()

要检查拟合优度,可以使用 DHARMa 软件包提供的模拟比例残差;例如查看here

答案 1 :(得分:0)

如果您在Rstudio控制台中工作,则可能需要打印(summary())