вложенный логит: все гнезда должны содержать не менее 2 элементов?

Я оцениваю модель того, как люди путешествуют. Есть 4 варианта: самолет, машина, автобус и поезд. Я хочу создать вложенную логит-модель, в которой путешественники сначала выбирают, лететь или нет, а затем, если они не летают, выбирают между оставшимися вариантами. Таким образом, мои гнезда это (воздух) и (автомобиль, автобус, поезд).

Эта статья предполагает, что эта процедура должна быть возможной.

Однако, когда я приступаю к оценке этой модели, я обнаруживаю, что она сингулярна, если только каждое гнездо не содержит по крайней мере два элемента. Кажется, что в гнезде не может быть только один предмет, в отличие от статьи выше. Почему это?

Пример:

#install.packages("AER")
data("TravelMode", package = "AER")

# Works fine
nl1 <- mlogit(choice ~ gcost + wait, TravelMode, shape = 'long', alt.var = 'mode', 
nests = list(public = c('train', 'air'), other = c('bus', 'car')))

# Gives singularity, as does any permutation with only one object in a nest
nl2 <- mlogit(choice ~ gcost + wait, TravelMode, shape = 'long', alt.var = 'mode', 
nests = list(public = c('air'), other = c('bus', 'car','train')))

person Zhaochen He    schedule 02.03.2019    source источник
comment
Подобно этому вопросу без ответа здесь, за исключением того, что мне не нужны 3 уровня гнезд. stackoverflow.com/questions/31231505/multistage-nested-logit-r< /а>   -  person Zhaochen He    schedule 03.03.2019
comment
Спасибо, я повторно опубликую там.   -  person Zhaochen He    schedule 04.03.2019


Ответы (1)


Я нашел ответ на эту ситуацию, имея дело со своими моделями. Это ДЕЙСТВИТЕЛЬНО оказывается проблемой кодирования. Вы должны включить unscaled=TRUE при включении вырожденных гнезд только одной группы. Это на стр.35 одной из версий виньетки.

person JOgawa    schedule 26.10.2020