Logistic Regression: the categorical variable is significant but each of its sub-group (level) is not I'm trying to predict the outcome "Decision" in the function of Age, Gender, Occupation, .... 
The independent variable "Occupation" is known to be significant. But when I do the logistic model, each sub-group (modality) of it is not.
Should I regroup the levels having the same value of estimated coefficient? (which I guess doesn't make many sense because the levels are not statistically significant)
The variable Occupation has 74 different sub-groups.
And another problem is that when checking the multicollinearity, the function VIF in R doest work, it produces the NaN value, may be its due to the large number of sub-groups of Occupation.

 A: Given your problem of sparse observations/complete separation, there are a few things you could try.


*

*As user3697176 suggests, reduce the number of subgroups you have by combining them in some meaningful way

*Reduce the number of predictors in your model (i.e., consider pruning some of your non-significant variables). 

*Use exact tests (but this would be very computationally intensive)


and/or


*Use conditional maximum likelihood as the estimator of your model, which is better equipped to deal with the problem of sparse data (the survival package in R has this capability). 


However, I would not consider the goal of this exercise to reduce particular p-values, per se. Rather, the problem with your model (at least as I see it) is that your standard errors for the levels of your categorical variable are clearly not being properly estimated. So, any of the above four solutions might fix your standard errors, but certain categories may remain as non-significantly associated with your outcome.
A: Thank all of you for the contribution, I got the answer.
The problem here is the complete seperation of the reference class. Normally, R ranks the sub-classes alphabetically and chose the first sub-class as the reference class. The solution: change the reference class that doesn't make the outcome to perfectly separated as follow: 
new.variable <- relevel(old.variable, ref = "reference class that we chose")

then we can at the same time:


*

*Reduce the p-value 

*Reduce the s.e of the estimated coefficients.


We still have some sub-classes that are not significant, but we can try to regroup them in a meaningful way, then we will have the good results.
