我有一个包含数字变量和分类变量的数据集,我想将其包含在广义混合模型中。当我这样做时,条件模型的输出总是“忘记”一个类别。
例如,在这个模型中,我将警戒对每个视频检测到的总时间的比例作为响应变量,并作为解释变量:尿液强度(数字)、治疗(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
sexMale
,sexUndefined
但不是性别女性
我怎么解决这个问题?或者我怎样才能显示一个完整的输出?