apollo_lcEM function

Uses EM for latent class model

Uses EM for latent class model

Uses the EM algorithm for estimating a latent class model.

apollo_lcEM( apollo_beta, apollo_fixed, apollo_probabilities, apollo_inputs, lcEM_settings = NA, estimate_settings = NA )

Arguments

  • apollo_beta: Named numeric vector. Names and values for parameters.

  • apollo_fixed: Character vector. Names (as defined in apollo_beta) of parameters whose value should not change during estimation.

  • apollo_probabilities: Function. Returns probabilities of the model to be estimated. Must receive three arguments:

    • ‘apollo_beta’ : Named numeric vector. Names and values of model parameters.
    • ‘apollo_inputs’ : List containing options of the model. See apollo_validateInputs .
    • ‘functionality’ : Character. Can be either ‘"components"’ , ‘"conditionals"’ , ‘"estimate"’ (default), ‘"gradient"’ , ‘"output"’ , ‘"prediction"’ , ‘"preprocess"’ , ‘"raw"’ , ‘"report"’ , ‘"shares_LL"’ , ‘"validate"’ or ‘"zero_LL"’ .
  • apollo_inputs: List grouping most common inputs. Created by function apollo_validateInputs .

  • lcEM_settings: List. Options controlling the EM process.

    • EMmaxIterations : Numeric. Maximum number of iterations of the EM algorithm before stopping. Default is 100.

    • postEM : Numeric scalar. Determines the tasks performed by this function after the EM algorithm has converged. Can take values 0, 1

      or 2 only. If value is 0, only the EM algorithm will be performed, and the results will be a model object without a covariance matrix (i.e. estimates only). If value is 1, after the EM algorithm, the covariance matrix of the model will be calculated as well, and the result will be a model object with a covariance matrix. If value is 2, after the EM algorithm, the estimated parameter values will be used as starting value for a maximum likelihood estimation process, which will render a model object with a covariance matrix. Performing maximum likelihood estimation after the EM algorithm is useful, as there may be room for further improvement. Default is 2.

    • silent : Boolean. If TRUE, no information is printed to the console during estimation. Default is FALSE.

    • stoppingCriterion : Numeric. Convergence criterion. The EM process will stop when improvements in the log-likelihood fall below this value. Default is 10^-5.

  • estimate_settings: List. Options controlling the estimation process within each EM iteration. See apollo_estimate for details.

Returns

model object

Details

This function uses the EM algorithm for estimating a Latent Class model. It is only suitable for models without continuous mixing. All parameters need to vary across classes and need to be included in the apollo_lcPars

function which is used by apollo_lcEM.

  • Maintainer: Stephane Hess
  • License: GPL-2
  • Last published: 2025-03-12