Я пытаюсь запустить модель смешанного логита и скрытого класса с использованием пакета gmnl в R. Однако я сталкиваюсь с неконформируемой ошибкой, когда запускаю следующий код:
> data<- mlogit.data(data,id.var = "ID", chid.var="key",
choice="choice", shape="long",alt.var = "alt")
> mixl<-gmnl(choice~Medium+Large+Farmed+Imported+Fresh+Frozen+price|0,
+ data = data,reflevel=3,
ranp = c(Medium = "n", Large="n",Farmed="n", Imported="n",Fresh="n", Frozen="n"),
model = "mixl", R = 50)
Исходя из этого,Я получаю следующую ошибку:
Error in s + x[[i]] : non-conformable arrays
Интересно, что эти данные работают, когда я использую пакет mlogit или использую определенные подмножества из моих данных, например, со следующим кодом:
> mixl<-gmnl(choice~Medium+Large+Farmed+Imported+Fresh+Frozen+price|0,
+ data = data, subset= 1:3000, reflevel=3,
ranp = c(Medium = "n", Large="n",Farmed="n", Imported="n",Fresh="n", Frozen="n"),
model = "mixl", R = 50)
Мой общий набор данных составляет 5004 obs из 16 переменных, см. Небольшой пример ниже
> head(data,48)
ID key obs optout alt price choice Small Medium Large Farmed Wild Imported Fresh Frozen Fried
1.1 1 1 1 0 1 12000 TRUE 0 1 0 0 1 0 0 0 1
1.2 1 1 2 0 2 7000 FALSE 1 0 0 0 0 1 0 1 0
1.3 1 1 3 1 3 0 FALSE 0 0 0 0 0 0 0 0 0
2.1 1 2 4 0 1 9000 FALSE 0 1 0 1 0 0 0 0 1
2.2 1 2 5 0 2 10000 FALSE 1 0 0 0 0 1 1 0 0
2.3 1 2 6 1 3 0 TRUE 0 0 0 0 0 0 0 0 0
3.1 1 3 7 0 1 10000 FALSE 1 0 0 0 0 1 1 0 0
3.2 1 3 8 0 2 10000 FALSE 1 0 0 1 0 0 0 1 0
3.3 1 3 9 1 3 0 TRUE 0 0 0 0 0 0 0 0 0
4.1 1 4 10 0 1 8000 FALSE 0 0 1 1 0 0 1 0 0
4.2 1 4 11 0 2 11000 TRUE 0 1 0 0 1 0 0 1 0
4.3 1 4 12 1 3 0 FALSE 0 0 0 0 0 0 0 0 0
5.1 1 5 13 0 1 7000 FALSE 0 0 1 0 0 1 0 0 1
5.2 1 5 14 0 2 12000 TRUE 0 0 1 0 1 0 0 1 0
5.3 1 5 15 1 3 0 FALSE 0 0 0 0 0 0 0 0 0
6.1 1 6 16 0 1 8000 TRUE 0 0 1 0 1 0 0 1 0
6.2 1 6 17 0 2 7000 FALSE 1 0 0 0 0 1 1 0 0
6.3 1 6 18 1 3 0 FALSE 0 0 0 0 0 0 0 0 0
7.1 1 7 19 0 1 8000 FALSE 0 1 0 1 0 0 0 1 0
7.2 1 7 20 0 2 11000 FALSE 1 0 0 1 0 0 0 0 1
7.3 1 7 21 1 3 0 TRUE 0 0 0 0 0 0 0 0 0
8.1 1 8 22 0 1 10000 FALSE 0 0 1 0 0 1 0 1 0
8.2 1 8 23 0 2 9000 FALSE 0 1 0 1 0 0 0 0 1
8.3 1 8 24 1 3 0 TRUE 0 0 0 0 0 0 0 0 0
9.1 1 9 25 0 1 11000 FALSE 1 0 0 0 0 1 0 1 0
9.2 1 9 26 0 2 9000 FALSE 0 1 0 1 0 0 0 0 1
9.3 1 9 27 1 3 0 TRUE 0 0 0 0 0 0 0 0 0
10.1 1 10 28 0 1 9000 FALSE 1 0 0 1 0 0 1 0 0
10.2 1 10 29 0 2 10000 FALSE 0 1 0 0 0 1 0 0 1
10.3 1 10 30 1 3 0 TRUE 0 0 0 0 0 0 0 0 0
11.1 1 11 31 0 1 7000 FALSE 1 0 0 0 0 1 1 0 0
11.2 1 11 32 0 2 12000 TRUE 1 0 0 0 1 0 1 0 0
11.3 1 11 33 1 3 0 FALSE 0 0 0 0 0 0 0 0 0
12.1 1 12 34 0 1 11000 FALSE 1 0 0 0 0 1 1 0 0
12.2 1 12 35 0 2 10000 TRUE 0 1 0 0 1 0 1 0 0
12.3 1 12 36 1 3 0 FALSE 0 0 0 0 0 0 0 0 0
13.1 2 13 37 0 1 10000 TRUE 0 1 0 0 1 0 0 1 0
13.2 2 13 38 0 2 9000 FALSE 1 0 0 0 0 1 1 0 0
13.3 2 13 39 1 3 0 FALSE 0 0 0 0 0 0 0 0 0
14.1 2 14 40 0 1 8000 TRUE 0 1 0 0 1 0 1 0 0
14.2 2 14 41 0 2 11000 FALSE 0 0 1 1 0 0 0 0 1
14.3 2 14 42 1 3 0 FALSE 0 0 0 0 0 0 0 0 0
15.1 2 15 43 0 1 12000 TRUE 0 0 1 0 1 0 0 1 0
15.2 2 15 44 0 2 7000 FALSE 0 0 1 0 0 1 0 0 1
15.3 2 15 45 1 3 0 FALSE 0 0 0 0 0 0 0 0 0
16.1 2 16 46 0 1 11000 FALSE 0 0 1 0 0 1 0 0 0
16.2 2 16 47 0 2 8000 TRUE 0 0 1 0 1 0 0 0 0
16.3 2 16 48 1 3 0 FALSE 0 0 0 0 0 0 0 0 0
Кто-нибудь знает, как я могу справиться с этой ошибкой?Заранее благодарю