# Logistic regression with zero event in one category

I have a dataset with more 15 independent variables trying explain a binary outcome. The results seemed dubious and the confidence interval profiling failed by providing lower bounds of the confint larger than the upper bounds-- I found the variable creating this mess which is a four category variable. Furthermore, I understand that it is stupid to use the var==2 as a reference category since there are no "Yes" outcomes for that value, hence giving trouble for all the other values. I could relevel and just have problems with that level giving a huge SE, or maybe I should collapse level two and three. However, I would prefer not to - given the actual interpretation of the variable. Any ideas how I can sneak around this?

with(w,table(outcome,var)
2    3    4    5 <NA>  Sum
No     35  226  281  463    0 1005
Yes     0   18   36  268    0  322
<NA>    0    0    0    0    0    0
Sum    35  244  317  731    0 1327
> glm(outcome~var,family=binomial,data=w)->l
> summary(l)

Call:
glm(formula = outcome ~ var, family = binomial, data = w)

Deviance Residuals:
Min        1Q    Median        3Q       Max
-0.95571  -0.95571  -0.49101  -0.00036   2.28333

Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept)   -16.57     405.60  -0.041    0.967
var3           14.04     405.60   0.035    0.972
var4           14.51     405.60   0.036    0.971
var5           16.02     405.60   0.039    0.968

(Dispersion parameter for binomial family taken to be 1)

Null deviance: 1470.6  on 1326  degrees of freedom
Residual deviance: 1313.6  on 1323  degrees of freedom
AIC: 1321.6

Number of Fisher Scoring iterations: 15
> confint(l)
Waiting for profiling to be done...
2.5 %     97.5 %
(Intercept) -140.643404   2.508492
var3         306.741916 188.855827 ###
var4          -4.058638 141.355062
var5          -3.034361 140.211069
There were 40 warnings (use warnings() to see them)