update.RprobitB_fit function

Update and re-fit probit model

Update and re-fit probit model

This function estimates a nested probit model based on a given RprobitB_fit object.

## S3 method for class 'RprobitB_fit' update( object, form, re, alternatives, id, idc, standardize, impute, scale, R, B, Q, print_progress, prior, latent_classes, seed, ... )

Arguments

  • object: An object of class RprobitB_fit.

  • form: A formula object that is used to specify the model equation. The structure is choice ~ A | B | C, where

    • choice is the name of the dependent variable (the choices),
    • A are names of alternative and choice situation specific covariates with a coefficient that is constant across alternatives,
    • B are names of choice situation specific covariates with alternative specific coefficients,
    • and C are names of alternative and choice situation specific covariates with alternative specific coefficients.

    Multiple covariates (of one type) are separated by a + sign. By default, alternative specific constants (ASCs) are added to the model. They can be removed by adding +0 in the second spot.

    In the ordered probit model (ordered = TRUE), the formula

    object has the simple structure choice ~ A. ASCs are not estimated.

  • re: A character (vector) of covariates of form with random effects. If re = NULL (the default), there are no random effects. To have random effects for the ASCs, include "ASC" in re.

  • alternatives: A character vector with the names of the choice alternatives. If not specified, the choice set is defined by the observed choices. If ordered = TRUE, alternatives is assumed to be specified with the alternatives ordered from worst to best.

  • id: A character, the name of the column in choice_data that contains unique identifier for each decision maker. The default is "id".

  • idc: A character, the name of the column in choice_data that contains unique identifier for each choice situation of each decision maker. Per default, these identifier are generated by the order of appearance.

  • standardize: A character vector of names of covariates that get standardized. Covariates of type 1 or 3 have to be addressed by <covariate>_<alternative>. If standardize = "all", all covariates get standardized.

  • impute: A character that specifies how to handle missing covariate entries in choice_data, one of:

    • "complete_cases", removes all rows containing missing covariate entries (the default),
    • "zero", replaces missing covariate entries by zero (only for numeric columns),
    • "mean", imputes missing covariate entries by the mean (only for numeric columns).
  • scale: A character which determines the utility scale. It is of the form <parameter> := <value>, where <parameter> is either the name of a fixed effect or Sigma_<j>,<j> for the <j>th diagonal element of Sigma, and <value> is the value of the fixed parameter.

  • R: The number of iterations of the Gibbs sampler.

  • B: The length of the burn-in period, i.e. a non-negative number of samples to be discarded.

  • Q: The thinning factor for the Gibbs samples, i.e. only every Qth sample is kept.

  • print_progress: A boolean, determining whether to print the Gibbs sampler progress and the estimated remaining computation time.

  • prior: A named list of parameters for the prior distributions. See the documentation of check_prior for details about which parameters can be specified.

  • latent_classes: Either NULL (for no latent classes) or a list of parameters specifying the number of latent classes and their updating scheme:

    • C: The fixed number (greater or equal 1) of latent classes, which is set to 1 per default. If either weight_update = TRUE

      or dp_update = TRUE (i.e. if classes are updated), C

      equals the initial number of latent classes.

    • weight_update: A boolean, set to TRUE to weight-based update the latent classes. See ... for details.

    • dp_update: A boolean, set to TRUE to update the latent classes based on a Dirichlet process. See ... for details.

    • Cmax: The maximum number of latent classes.

    • buffer: The number of iterations to wait before a next weight-based update of the latent classes.

    • epsmin: The threshold weight (between 0 and 1) for removing a latent class in the weight-based updating scheme.

    • epsmax: The threshold weight (between 0 and 1) for splitting a latent class in the weight-based updating scheme.

    • distmin: The (non-negative) threshold in class mean difference for joining two latent classes in the weight-based updating scheme.

  • seed: Set a seed for the Gibbs sampling.

  • ...: Ignored.

Returns

An object of class RprobitB_fit.

Details

All parameters (except for object) are optional and if not specified retrieved from the specification for object.