Implement the EM algorithm for multivariate multinomial data given observed counts of complete and missing data (Yobs and Ymis). Allows for specification of a Dirichlet conjugate prior.
x_y: A data.frame of observed counts for complete observations.
z_Os_y: A data.frame of observed marginal-counts for incomplete observations.
enum_comp: A data.frame specifying a vector of all possible observed patterns.
n_obs: An integer specifying the number of observations in the original data.
conj_prior: A string specifying the conjugate prior. One of c("none", "data.dep", "flat.prior", "non.informative").
alpha: The vector of counts α for a Dir(α) prior. Must be specified if conj_prior is either c("data.dep", "flat.prior"). If flat.prior, specify as a scalar. If data.dep, specify as a vector with key matching enum_comp.
tol: A scalar specifying the convergence criteria. Defaults to 5e-7
max_iter: An integer specifying the maximum number of allowable iterations. Defaults to 10000.
verbose: Logical. If TRUE, provide verbose output on each iteration.