MODEL
response <(responseoptions)> = <fixedeffects> </ modeloptions> ;
The MODEL statement is required; it defines the dependent variable and the fixed effects. The fixedeffects determine the matrix of the model. The specification of effects is the same as in the GLIMMIX and MIXED procedures, where you do not specify
random effects in the MODEL statement.
Table 27.3 summarizes the options available in the MODEL statement. These are subsequently discussed in detail in alphabetical order
by option category.
Table 27.3: MODEL Statement Options
Option

Description

CHOICESET=

Specifies the variables for defining a choice set

COEFFPRIOR=

Specifies the prior of the regression coefficients

COVPRIOR=

Specifies the prior of the covariance parameter for a probit model

COVTYPE=

Specifies the structure of the covariance matrix of the error difference for a probit model

INIT=

Controls the generation of initial values of the regression coefficients

LAMBDAPRIOR=

Specifies the prior of the logsum coefficients for a nested logit model

NEST=

Defines the nonoverlapping nests for a nested logit model

SAMELAMBDA

Constrains the logsum coefficients to be the same for all the nests in a nested logit model

TYPE=

Specifies the type of the model


CHOICESET=(variables)

specifies one or more variables for defining the choice sets. You must specify how the choice sets are constructed, and you
can use more than one variable. PROC BCHOICE does not sort by the values of the choice set variable; rather, it considers
the data to be from a new choice set whenever the value of the choice set variable changes from the previous observation.

COEFFPRIOR=NORMAL < (options)>
CPRIOR=NORMAL <(options)>

specifies the prior distribution for the regression coefficients. The default is the normal prior , where is the identity matrix. You can specify the following options, enclosed in parentheses:

INPUT=SASdataset

specifies a SAS data set that contains the mean and covariance information of the normal prior. The data set must have a _TYPE_
variable to represent the type of each observation and a variable for each regression coefficient. If the data set also contains
a _NAME_
variable, the values of this variable are used to identify the covariances for the _TYPE_
=’COV’ observations; otherwise, the _TYPE_
=’COV’ observations are assumed to be in the same order as the explanatory variables in the MODEL statement. PROC BCHOICE
reads the mean vector from the observation for which _TYPE_
=’MEAN’ and reads the covariance matrix from observations for which _TYPE_
=’COV’. For an independent normal prior, the variances can be specified with _TYPE_
=’VAR’; alternatively, the precisions (inverse of the variances) can be specified with _TYPE_
=’PRECISION’.

VAR<=c>

specifies the normal prior , where is the identity matrix and c is a scalar.

COVPRIOR=IWISHART<(options)>

specifies an inverse Wishart prior distribution, IWISHART(a,b), for the covariance matrix for the vector of error differences. For models that do not have a covariance matrix for the
error differences (the logit and nested logit models), this option is ignored.
You can specify the following options, enclosed in parentheses:

DF=a

specifies the degrees of freedom of the inverse Wishart distribution. The default is the number of alternatives in the choice
set plus 2, which is equivalent to the dimension of the covariance matrix of the error differences plus 3.

SCALE=b

specifies for the scale parameter of the inverse Wishart distribution, where is the identity matrix. The default is the number of alternatives in the choice set plus 2.

COVTYPE=UN  VC

specifies the covariance structure of the error difference vector for a probit model.
Although a variety of structures are available, most applications call for either COVTYPE=VC or COVTYPE=UN for the error difference
vector. The COVTYPE=VC (variance components) models a different variance component for each error term. The TYPE=UN (unstructured)
specifies a full structured covariance matrix. The unstructured form accommodates any pattern of correlation in addition to
fitting a different variance component for each error difference term.

INIT=keywordlist  (numericlist)
INITIAL=keywordlist  (numericlist)

specifies options for generating the initial values for the coefficients parameters that are specified as fixedeffects in the MODEL statement. By default, INIT=POSTMODE for logit models and INIT=PRIORMODE for probit models. You can specify
the following keywords:

LIST=numericlist

assigns the numbers to be the initial values of the fixed effects in the corresponding list order. The length of the list
must be the same as the number of fixed effects. For example, the following statement assigns the values 1, 2, and 3 to the
first, second, and third coefficients in the model and prints the table of initial values:
model y = x / choiceset=(ID Index) init=(list=(1 2 3) pinit);
If the length of the list is less than the number of fixed effects, the initial value of each remaining parameter will be
replaced by the corresponding default initial value. For example, the corresponding mode of the posterior density is used
for a logit model. If the length of the list is greater than the number of fixed effects, the extra ones are ignored.

PINIT

tabulates initial values for the fixed effects. (By default, PROC BCHOICE does not display the initial values.)

POSTMODE

uses the mode of the posterior density as the initial value of the parameter, if you do not provide one. If the mode does
not exist or if it is on the boundary of the support of the density, the mean value is used. If you specify POSTMODE for a
probit model, where the posterior density is difficult to obtain, PROC BCHOICE resets it to PRIORMODE.

PRIORMODE

uses the mode of the prior density as the initial value of the parameter.

LAMBDAPRIOR=SEMIFLAT<(options)>
LPRIOR=SEMIFLAT<(options)>

specifies a semiflat prior distribution (Lahiri and Gao, 2002) for the logsum coefficient, , for each nest in a nested logit model. For models that are not nested logit, this option is ignored.
You can specify the following option, enclosed in parentheses:

PHI=a

specifies the parameter of the semiflat prior. By default, .

NEST=(numericlist)

defines the nonoverlapping nests for a nested logit model. For a nested logit model, you must specify the nests for all the
alternatives in the choice set. Otherwise, the standard logit model is assumed.
The number of values in the list should match the number of alternatives in the choice sets, and each of the actual values
represents the nest that the particular alternative goes to. For example, NEST=(1 2 1 1 2) arranges the first, third, and
fourth alternatives in the first nest and the second and fifth alternatives in the second nest. Currently, this option can
accommodate only twolevel nested logit models.

SAMELAMBDA

constrains the logsum coefficients to be the same for all the nests in a nested logit model.

TYPE=keyword

specifies the type of the model. You can specify the following keywords:

LOGIT

specifies a standard logit model.

NLOGIT

specifies a nested logit model. If you do not also specify the NEST= option to define the nests, this option is ignored, and
a standard logit model is fit.

PROBIT

specifies a probit model.
Copyright © SAS Institute Inc. All Rights Reserved.