0
$\begingroup$

I am evaluating which treatment promotes greater root length in a root growth analysis. I have five different treatments, each with four samples, evaluated over nine days across three independent experiments (N = 540). My data follows a gamma distribution; however, there are some root lengths equal to zero. Therefore, I considered a zero-inflation model using the zigamma family. Below is the glmmTMB function that I applied:

  model_zi <- glmmTMB(root_length ~ treatment + (1|exp/day),
                         family = ziGamma(link = "log"),
                         ziformula = ~treatment, 
                         data = data_roots)

The results:

Family: Gamma  ( log )
Formula:          root_length ~ treatment + (1 | exp/day)
Zero inflation:               ~treatment
Data: data_roots

     AIC      BIC   logLik deviance df.resid 
  1953.5   2009.3   -963.7   1927.5      527 

Random effects:

Conditional model:
 Groups  Name        Variance  Std.Dev. 
 day:exp (Intercept) 7.641e-01 0.8741496
 exp     (Intercept) 1.749e-07 0.0004182
Number of obs: 540, groups:  day:exp, 27; exp, 3

Dispersion estimate for Gamma family (sigma^2): 0.326 

Conditional model:
                Estimate Std. Error z value Pr(>|z|)    
(Intercept)      0.18322    0.17816   1.028  0.30377    
treatmenttreat2  0.42944    0.08579   5.006 5.57e-07 ***
treatmenttreat3  0.26535    0.08375   3.168  0.00153 ** 
treatmenttreat4  0.83239    0.08415   9.892  < 2e-16 ***
treatmenttreat5  1.03670    0.08146  12.726  < 2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Zero-inflation model:
                Estimate Std. Error z value Pr(>|z|)    
(Intercept)      -2.0794     0.3062  -6.791 1.11e-11 ***
treatmenttreat2   0.7723     0.3860   2.001   0.0454 *  
treatmenttreat3   0.2549     0.4137   0.616   0.5378    
treatmenttreat4   0.3302     0.4088   0.808   0.4192    
treatmenttreat5  -1.8909     0.7766  -2.435   0.0149 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

My issue is that one treatment (treatment 5) has only two root length equals to 0, resulting in a very broad confidence interval for this treatment (I applied plot_model from sjPlot for this analysis) Do you have any suggestions on how to address this issue? I am particularly interested in the probability of a treatment resulting in a root length of zero, which is why I opted for a zero-inflation model for each treatment. The number of zeros in the other treatments are: treat1 - 12; treat2 - 22; treat3 - 15; treat4 - 16; treat5 - 2. (I also don’t understand why the intercept is so close to the coefficient for treatment 5 but far from that of treatment 3, considering the number of zeros.)

enter image description here

I also conducted a residual analysis using the simulateResiduals function from the DHARMa package and had problem with the K-S test.

enter image description here

I also attempted to rewrite the model as follows:

model_zi <- glmmTMB(root_length ~ treatment + (1|exp/day),
                     family = ziGamma(link = "log"),
                     ziformula = ~., 
                     data = data_roots)

However, the residuals were worse in this case.

$\endgroup$
3
  • $\begingroup$ Zero-inflated models are designed to deal with data characterized by an excessive number of zeros. Based on the info you provided, about 12% of your data are zeros. This is hardly excessive. There is not a need to use a zero-inflated model, in my opinion. $\endgroup$
    – Laura
    Commented Oct 24 at 17:08
  • $\begingroup$ @Laura Thanks for your response! Do you have any suggestions for a distribution I could use instead of the zigamma? I believe my data follows a gamma distribution, but that doesn't accommodate zero values. Would the Tweedie distribution be a better option? $\endgroup$ Commented Oct 24 at 19:03
  • $\begingroup$ You could try Poisson, negative binomial, and/or Tweedie then do some comparisons to see which best fits your data. That would be my recommendation. $\endgroup$
    – Laura
    Commented Oct 24 at 19:24

1 Answer 1

0
$\begingroup$

Probably, as Laura already said, the best distribution for you would be the Tweedie. You can also test this model for zero inflation with DHARMa::testZeroInflation(res). :)

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.