Я пытаюсь использовать пакет mlogit в R, чтобы провести некоторый анализ. К сожалению, я немного смущен тем, как указать подходящую модель с учетом типа имеющихся у меня данных.
В частности, мои данные относятся к следующему типу:
Individual Choice1 Choice2 Choice3 ...
A 1.24e4 256 17 ...
B 792 531 420 ...
C 26 1.8e5 930 ...
... ... ... ... ...
По сути, это кросс-таблица, показывающая, сколько раз каждый человек делал тот или иной выбор. Вот код для воспроизведения моей проблемы:
library(mlogit)
data(Fishing)
otherFrame <- as.data.frame(xtabs(rep(1,1182) ~ income + mode, data = Fishing))
otherFrame$income <- as.numeric(as.character(otherFrame$income))
otherFrame <- otherFrame[otherFrame$Freq > 0, ]
Fish <- mlogit.data(Fishing, varying = c(2:9), shape = "wide", choice = "mode")
Fish2 <- mlogit.data(otherFrame, "mode", shape = "wide")
summary(mlogit(mode ~ 1 | income, data = Fish)) #model from mlogit examples
summary(mlogit(mode ~ 1 |income, data = Fish2, weights = Freq)) #my attempt to re-create the model with differently shaped data
В принципе, мои данные (не показаны) можно придать той же форме, что и otherFrame
, но у меня нет возможности придать им форму, используемую в примерах mlogit
(поскольку существуют сотни вариантов и миллионы наблюдений, поэтому размер непомерно высок). Ключом к otherFrame
является столбец Freq
, который показывает, сколько раз был сделан выбор (mode
) с учетом некоторых других переменных (здесь income
).
У меня проблема в том, что последние две строки кода дают разные результаты. Я предполагаю, что первая строка (которая идет непосредственно из mlogit
примеров) дает правильные оценки и стандартные ошибки. Я думал, что вторая спецификация модели с моими альтернативными данными «Fish2», где я указываю weights = Freq
, должна дать те же результаты. К сожалению, хотя предполагаемые наклоны одинаковы, их стандартные ошибки сильно различаются. Я полагаю, это неверно.
Может кто поможет правильно указать модель? Или, возможно, моя спецификация верна, а стандартная ошибка оценок должна быть другой?
Заранее спасибо.