Missingness in categorical data is a common problem in various real applications. Traditional approaches either utilize only the complete observations or impute the missing data by some ad hoc methods rather than the true conditional distribution of the missing data, thus losing or distorting the rich information in the partial observations. In this paper, we propose the Dirichlet Process Mixture of Collapsed Product-Multinomials (DPMCPM) to model the full data jointly and compute the model efficiently. By fitting an infinite mixture of product-multinomial distributions, DPM-CPM is applicable for any categorical data regardless of the true distribution, which may contain complex association among variables. Under the framework of latent class analysis, we show that DPMCPM can model general missing mechanisms by creating an extra category to denote missingness, which implicitly integrates out the missing part with regard to their true conditional distribution. Through simulation studies and a real application, we demonstrate that DPMCPM outperforms existing approaches on statistical inference and imputation for incomplete categorical data of various missing mechanisms. DPMCPM is implemented as the R package MMDai, which is available from the Comprehensive R Archive Network at https://cran.rproject.org/web/packages/MMDai/index.html.