{RprobitB} implements Bayes estimation of
probit choice models in cross-sectional and panel settings. The package
can analyze binary, multivariate, ordered, and ranked choices, as well
as heterogeneity of choice behavior among deciders. The main
functionality includes model fitting via Gibbs sampling, tools for
convergence diagnostic, choice data simulation, in-sample and
out-of-sample choice prediction, and model selection using information
criteria and Bayes factors. The latent class model extension facilitates
preference-based decider classification, where the number of latent
classes can be inferred via the Dirichlet process or a weight-based
updating heuristic. This allows for flexible modeling of choice behavior
without the need to impose structural constraints. See the
vignette on the model definition for details about the probit
model.
Working with {RprobitB} follows a structured workflow.
The main functions fall into three categories: data management, model
fitting, and model evaluation, as illustrated in the flowchart below. A
typical workflow proceeds as follows:
Prepare a choice data set via the prepare_data()
function or simulate data via simulate_choices(). Both
functions return an RprobitB_data object that can be fed
into the estimation routine. The train_test() allows to
split the data into an estimation and a validation part. See the
vignette on choice data for details.
The estimation routine is called fit_model() and
returns an RprobitB_fit object. The
transform_fit() function allows to change normalization of
the model after a model has been fitted. The details are documented in
the vignettes on
model fitting and on
modeling heterogeneity.
The RprobitB_fit object can be fed into
coef() to show the covariate effects on the choices and
into predict() to compute choice probabilities and forecast
choice behavior if choice characteristics would change, see the
vignette on choice prediction. The classification()
function allows for preference-based decider classification. The
function model_selection() compares
RprobitB_fit objects by computing different model selection
criteria, see the
vignette on model selection.
{RprobitB}.