Imputing missing categorical values presents a few options and I think it depends much on subject matter knowledge to choose. Some analyses, if you use "informative missing," will replace the missing value with the most common non-missing value in the data set. That is rarely a sensible thing to do and likely not what you have in mind since you were trying to model the data to impute the missing values. If you have enough variables and data you could try a predictive model to predict the missing categorical values as functions of the non-missing data, using any of the predictive models available (e.g. partitions, neural nets, etc.). If all the missing values are for a single variable that might work - but if the missing values are in different columns for different observations, that is unlikely to work well.
You could try excluding those observations, but obviously this depends on how much data is missing and also on the context of the problem and the nature of the missing data. I think WebDesignesCrow's suggestion of replacing missing values with a value (such as "missing") generally makes the most sense. That doesn't require making any assumptions regarding the nature of the missing data and allows whatever analysis you do to uncover the relevance (or lack thereof) of the missing data. There was a great talk from John Sall a couple of years ago (you should be able to find it in the Community Forum) on "ghost data" that might give you more ideas.