1

我有一个包含数字变量和分类变量的数据集,我想将其包含在广义混合模型中。当我这样做时,条件模型的输出总是“忘记”一个类别。

例如,在这个模型中,我将警戒对每个视频检测到的总时间的比例作为响应变量,并作为解释变量:尿液强度(数字)、治疗(0 表示没有尿液,1 表示尿液)、diel_period(黎明,黄昏,夜晚,白天),性别(男性,女性,未定义),高度(树木,数字)。和我的 50 台摄像机作为随机分组效果(1 到 50)。

bBI_mod8 <- glmmTMB(cbind(vigilance, total_time_behaviour - vigilance) ~ 
                    urine_intensity_heatmap + treatment + diel_period + sex + height + (1|camera),
                ziformula = ~1, data = df_behaviour, family = "betabinomial")

警戒比例遵循零膨胀的贝塔二项式回归。

summary(bBI_mod8)

当我显示输出时,我观察到:

 Family: betabinomial  ( logit )
Formula:          cbind(vigilance, total_time_behaviour - vigilance) ~ urine_intensity_heatmap +  
    treatment + diel_period + sex + height + (1 | camera)
Zero inflation:                                                      ~1
Data: df_behaviour

     AIC      BIC   logLik deviance df.resid 
  2973.8   3037.1  -1474.9   2949.8     1439 

Random effects:

Conditional model:
 Groups Name        Variance Std.Dev.
 camera (Intercept) 0.1583   0.3979  
Number of obs: 1451, groups:  camera, 50

Overdispersion parameter for betabinomial family (): 1.85 

Conditional model:
                         Estimate Std. Error z value Pr(>|z|)    
(Intercept)             -0.907429   0.471376  -1.925 0.054222 .  
urine_intensity_heatmap -0.009844   0.004721  -2.085 0.037034 *  
treatment1              -0.219403   0.154396  -1.421 0.155304    
diel_periodDay          -0.337329   0.235033  -1.435 0.151218    
diel_periodDusk         -0.543771   0.285322  -1.906 0.056675 .  
diel_periodNight        -0.553826   0.274879  -2.015 0.043925 *  
sexMale                 -0.772731   0.168350  -4.590 4.43e-06 ***
sexUndefined            -1.010425   0.271876  -3.716 0.000202 ***
height                   0.001713   0.012352   0.139 0.889681    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Zero-inflation model:
            Estimate Std. Error z value Pr(>|z|)
(Intercept)  -0.6685     0.4298  -1.556     0.12

如您所见,我的问题是,对于我的分类变量,总是有一个类别被省略:

treatment1但不治疗0

diel_periodDay, diel_periodDusk,diel_periodNight但不是diel_periodDawn

sexMalesexUndefined但不是性别女性

我怎么解决这个问题?或者我怎样才能显示一个完整的输出?

4

1 回答 1

0

在广义线性模型的输出中,显示的估计值是与参考水平相比的效果。除非指定,否则将根据字母顺序自动选择参考水平。

在上面的总结中,以性别为例,您看到的估计值sexMale是男性与女性相比的影响。因为treatment,这就是效果相比treatment0。对于diel,同样的逻辑适用。

您可以通过手动将参考电平设置为您喜欢的值来覆盖它。照原样,您的参考水平Female, treatment0, diel_periodDawn仅基于字母顺序。

于 2021-04-07T10:42:30.703 回答