**[R] slogit** -- Stereotype logistic regression

__Syntax__

**slogit** *depvar* [*indepvars*] [*if*] [*in*] [*weight*] [**,** *options*]

*options* Description
-------------------------------------------------------------------------
Model
__dim__**ension(***#***)** dimension of the model; default is **dimension(1)**
__b__**aseoutcome(***#*|*lbl***)** set the base outcome to *#* or *lbl*; default is the
last outcome
__const__**raints(***numlist***)** apply specified linear constraints
__col__**linear** keep collinear variables
__nocorn__**er** do not generate the corner constraints

SE/Robust
**vce(***vcetype***)** *vcetype* may be **oim**, __r__**obust**, __cl__**uster** *clustvar*,
**opg**, __boot__**strap**, or __jack__**knife**

Reporting
__l__**evel(***#***)** set confidence level; default is **level(95)**
__nocnsr__**eport** do not display constraints
*display_options* control columns and column formats, row spacing,
line width, display of omitted variables and
base and empty cells, and factor-variable
labeling

Maximization
*maximize_options* control the maximization process; seldom used
__init__**ialize(***initype***)** method of initializing scale parameters; *initype*
can be **constant**, **random**, or **svd**; see *Options*
for details
__nonorm__**alize** do not normalize the numeric variables

__coefl__**egend** display legend instead of statistics
-------------------------------------------------------------------------
*indepvars* may contain factor variables; see fvvarlist.
**bootstrap**, **by**, **fp**, **jackknife**, **rolling**, **statsby**, and **svy** are allowed; see
prefix.
Weights are not allowed with the **bootstrap** prefix.
**vce()** and weights are not allowed with the **svy** prefix.
**fweight**s, **iweight**s, and **pweight**s are allowed; see weight.
**coeflegend** does not appear in the dialog box.
See **[R] slogit postestimation** for features available after estimation.

__Menu__

**Statistics > Categorical outcomes > Stereotype logistic regression**

__Description__

**slogit** fits Anderson's (1984) maximum-likelihood stereotype logistic
regression model for categorical dependent variables. Stereotype
logistic models can be used when the relevance of the ordering is
unclear. These models do not impose the proportional-odds assumption.

__Options__

+-------+
----+ Model +------------------------------------------------------------

**dimension(***#***)** specifies the dimension of the model, which is the number of
equations required to describe the relationship between the dependent
variable and the independent variables. The maximum dimension is
min(m-1,p), where m is the number of categories of the dependent
variable and p is the number of independent variables in the model.
The stereotype model with maximum dimension is a reparameterization
of the multinomial logistic model.

**baseoutcome(***#*|*lbl***)** specifies the outcome level whose scale parameters and
intercept are constrained to be zero. The base outcome may be
specified as a number or a label. By default, **slogit** assumes that
the outcome levels are ordered and uses the largest level of the
dependent variable as the base outcome.

**constraints(***numlist***)**, **collinear**; see **[R] estimation options**.

By default, the linear equality constraints suggested by Anderson
(1984), termed the corner constraints, are generated for you. You
can add constraints to these as needed, or you can turn off the
corner constraints by specifying **nocorner**. These constraints are in
addition to the constraints placed on the phi parameters
corresponding to **baseoutcome(***#***)**.

**nocorner** specifies that **slogit** not generate the corner constraints. If
you specify **nocorner**, you must specify at least
**dimension()*****dimension()** constraints for the model to be identified.

+-----------+
----+ SE/Robust +--------------------------------------------------------

**vce(***vcetype***)** specifies the type of standard error reported, which
includes types that are derived from asymptotic theory (**oim**, **opg**),
that are robust to some kinds of misspecification (**robust**), that
allow for intragroup correlation (**cluster** *clustvar*), and that use
bootstrap or jackknife methods (**bootstrap**, **jackknife**); see **[R]**
*vce_option*.

If specifying **vce(bootstrap)** or **vce(jackknife)**, you must also specify
**baseoutcome()**.

+-----------+
----+ Reporting +--------------------------------------------------------

**level(***#***)**; see **[R] estimation options**.

**nocnsreport**; see **[R] estimation options**.

*display_options*: **noci**, __nopv__**alues**, __noomit__**ted**, **vsquish**, __noempty__**cells**,
__base__**levels**, __allbase__**levels**, __nofvlab__**el**, **fvwrap(***#***)**, **fvwrapon(***style***)**,
**cformat(***%fmt***)**, **pformat(%***fmt***)**, **sformat(%***fmt***)**, and **nolstretch**; see **[R]**
**estimation options**.

+--------------+
----+ Maximization +-----------------------------------------------------

*maximize_options*: __dif__**ficult**, __tech__**nique(***algorithm_spec***)**, __iter__**ate(***#***)**,
[__no__]__lo__**g**, __tr__**ace**, __grad__**ient**, **showstep**, __hess__**ian**, __showtol__**erance**,
__tol__**erance(***#***)**, __ltol__**erance(***#***)**, __nrtol__**erance(***#***)**, __nonrtol__**erance**, and
**from(***init_specs***)**; see **[R] maximize**. These options are seldom used.

Setting the optimization type to **technique(bhhh)** resets the default
*vcetype* to **vce(opg)**.

**initialize(**__const__**ant**|__rand__**om**|**svd)** specifies how initial estimates are
computed. The default, **initialize(constant)**, is to set the scale
parameters to the constant min(.5,1/d), where d is the dimension
specified in **dimension()**.

**initialize(random)** requests that uniformly distributed random numbers
between 0 and 1 be used as initial values for the scale
parameters. If you specify this option, you should also use
**set seed** to ensure that you can replicate your results; see **[R]**
**set seed**.

**initialize(svd)** requests that a singular value decomposition (SVD) be
performed on the matrix of regression estimates from **mlogit** to
reduce its rank to the dimension specified in **dimension()**.
**slogit** uses the reduced-rank components of the SVD as initial
estimates for the scale and regression coefficients. For
details, see *Methods and formulas* in **[R] slogit**.

**nonormalize** specifies that the numeric variables not be normalized.
Normalization of the numeric variables improves numerical stability
but consumes more memory in generating temporary double-precision
variables. Variables that are of type **byte** are not normalized, and
if initial estimates are specified using the **from()** option,
normalization of variables is not performed. See *Methods and*
*formulas* in **[R] slogit** for more information.

The following option is available with **slogit** but is not shown in the
dialog box:

**coeflegend**; see **[R] estimation options**.

__Remarks__

Like multinomial logistic and ordered logistic models, stereotype
logistic models are used with categorical dependent variables. They are
often used when subjects are requested to assess or judge something. In
a multinomial logistic model, the categories cannot be ranked. By
contrast, in an ordered logistic model, the categories follow a natural
ranking scheme and are subject to the proportional-odds assumption.
Stereotype logistic regression can be viewed as a compromise between
these two models and is primarily used when you are unsure of the
relevance of the ordering of the outcome.

A common case is when subjects are asked to assess or judge something.
For example, consider a survey in which consumers are asked to rate the
quality of a product on a scale from 1 to 5, with 1 indicating poor
quality and 5 indicating excellent quality. If the categories are
monotonically related to one underlying latent variable, the ordered
logistic model is appropriate. However, suppose that consumers weigh two
or three latent factors when assessing quality. The stereotype logistic
model is preferred to the ordered logistic model in this case because it
allows you to specify multiple equations to capture the effects of the
latent variables. Unlike multinomial logit models, the number of
equations you specify could be fewer than m - 1, where m is the number of
categories of the dependent variable. Stereotype logistic models are
also used when categories may be indistinguishable. Suppose that a
consumer must choose among A, B, C, or D. Multinomial logistic modeling
assumes that the four choices are distinct in the sense that a consumer
choosing one of the goods can distinguish its characteristics from the
others. If goods A and B are in fact similar, consumers may be randomly
picking between the two. One alternative is to combine the two
categories and fit a three-category multinomial logistic model. A more
flexible alternative is to use a stereotype logistic model.

__Examples__

---------------------------------------------------------------------------
Setup
**. webuse auto2yr**

One-dimensional model
**. slogit repair foreign mpg price gratio**

---------------------------------------------------------------------------
Setup
**. webuse sysdsn1**

Saturated, two-dimensional model
**. slogit insure age male nonwhite i.site, dim(2) base(1)**
---------------------------------------------------------------------------

__Stored results__

**slogit** stores the following in **e()**:

Scalars
**e(N)** number of observations
**e(k)** number of parameters
**e(k_indvars)** number of independent variables
**e(k_out)** number of outcomes
**e(k_eq)** number of equations in **e(b)**
**e(k_eq_model)** number of equations in overall model test
**e(df_m)** Wald test degrees of freedom
**e(df_0)** null model degrees of freedom
**e(k_dim)** model dimension
**e(i_base)** base outcome index
**e(ll)** log likelihood
**e(ll_0)** null model log likelihood
**e(N_clust)** number of clusters
**e(chi2)** chi-squared
**e(p)** p-value for model test
**e(ic)** number of iterations
**e(rank)** rank of **e(V)**
**e(rc)** return code
**e(converged)** **1** if converged, **0** otherwise

Macros
**e(cmd)** **slogit**
**e(cmdline)** command as typed
**e(depvar)** name of dependent variable
**e(indvars)** independent variables
**e(wtype)** weight type
**e(wexp)** weight expression
**e(title)** title in estimation output
**e(clustvar)** name of cluster variable
**e(out***#***)** outcome labels, *#* = 1, ..., **e(k_out)**
**e(chi2type)** **Wald**; type of model chi-squared test
**e(vce)** *vcetype* specified in **vce()**
**e(vcetype)** title used to label Std. Err.
**e(opt)** type of optimization
**e(which)** **max** or **min**; whether optimizer is to perform
maximization or minimization
**e(ml_method)** type of **ml** method
**e(user)** name of likelihood-evaluator program
**e(technique)** maximization technique
**e(properties)** **b V**
**e(predict)** program used to implement **predict**
**e(marginsnotok)** predictions disallowed by **margins**
**e(marginsdefault)** default **predict()** specification for **margins**
**e(footnote)** program used to implement the footnote display
**e(asbalanced)** factor variables **fvset** as **asbalanced**
**e(asobserved)** factor variables **fvset** as **asobserved**

Matrices
**e(b)** coefficient vector
**e(outcomes)** outcome values
**e(Cns)** constraints matrix
**e(ilog)** iteration log (up to 20 iterations)
**e(gradient)** gradient vector
**e(V)** variance-covariance matrix of the estimators
**e(V_modelbased)** model-based variance

Functions
**e(sample)** marks estimation sample

__Reference__

Anderson, J. A. 1984. Regression and ordered categorical variables (with
discussion). *Journal of the Royal Statistical Society, Series B* 46:
1-30.