mnl.spec: Specification Object of a Multinomial Logit Model

View source: R/mnl.spec.R

mnl.specR Documentation

Specification Object of a Multinomial Logit Model

Description

Using a formula and data, create a specification object of a multinomial logit model.

Usage

mnl.spec(f, data, choices = NULL, base.choice = 1, 
         varying = NULL, sep = ".")

Arguments

f

Formula (see Details below).

data

Data frame containing the variables in the model. It should be in the ‘wide’ format (using the terminology of the reshape function), i.e. there is one record for each individual and alternative-specific variables occupy single column per alternative.

choices

Vector of names of alternatives. If it is not given, it is determined from the response column of the data frame. Values of this vector should match or be a subset of those in the response column.

base.choice

Index of the base alternative within the vector choices.

varying

Indices of variables within data that are alternative-specific.

sep

Separator of variable name and alternative name in the ‘varying’ variables.

Details

The formula f is of the form response ~ x1 + x2 | y1 + y2. Coefficients for variables in the first part of the formula (i.e. before '|'), here x1 and x2, are forced to be the same for all alternatives. Variables in the second part of the formula (i.e. after '|'), here y1 and y2, have different coefficients for different alternatives. Either part of the formula can be omitted. Alternative specific constants (asc) are included automatically. To exclude asc, use -1 in the first part. The equation of the base alternative is always set to 0.

Value

An object of class mnl.spec containing the following elements:

response

Name of the response variable.

choices

Vector of alternatives.

base.choice

Index of the base alternative within choices.

variable.used

Matrix of size number of choices x number of variables. Each value is logical determining if the variable is used in that choice equation.

same.coefs

Logical vector of size number of variables. It determines if that variable has the same coefficient for all alternatives.

full.var.names

Matrix of the same shape as variable.used. It contains names of variables in its alternative-specific form.

varying.names

Vector of variable names specified by the varying vector that are used in the specification.

intercepts

Logical vector of size number of choices determining in which equation asc is used.

sep

Separator of variable name and alternative name in the ‘varying’ variables.

frequency

Table of frequencies for each choice in the choices vector computed from the data.

Author(s)

Hana Sevcikova

See Also

summary.mnl.spec

Examples

data(heating)
spec <- mnl.spec(depvar ~ ic + oc + income, heating, varying=3:12, sep='')
summary(spec)
spec <- mnl.spec(depvar ~ oc-1 | ic, heating, varying=3:12, sep='')
summary(spec)

mlogitBMA documentation built on April 14, 2022, 1:07 a.m.