У меня проблемы с функцией mlogit(). Я пытаюсь предсказать, какие переменные в заданном наборе являются наиболее предпочтительными среди людей, принявших участие в нашем опросе. Я пытаюсь предсказать оптимальное сочетание переменных для создания наиболее предпочтительного варианта. По сути, мы измеряем «Имя», «Размер логотипа», «Дизайн», «Тема», «Аромат» и «Цвет».
Для этого у нас есть большой набор данных, и мы пытаемся запустить его через mlogit.data() и mlogit(), хотя мы продолжаем получать ту же ошибку:
Ошибка в if (abs(x - oldx) ‹ ftol) { : отсутствует значение там, где требуется TRUE/FALSE
Ни один из моих данных не является отрицательным или отсутствует, так что это очень сбивает с толку. Мой синтаксис:
#Process data in mlogit.data()
data2 <-
mlogit.data(data=data, choice="Choice",
shape="long", varying=5:10,
alt.levels=paste("pos",1:3))
#Make character columns factors and "choice" column (the one we are
#measuring) a numeric.
data2$Name <- as.factor(data2$Name)
data2$Logo.Size <- as.factor(data2$Logo.Size)
data2$Design <- as.factor(data2$Design)
data2$Theme <- as.factor(data2$Theme)
data2$Color <- as.factor(data2$Color)
data2$Choice <- as.numeric(as.character(data2$Choice))
##### RUN MODEL #####
m1 <- mlogit(Choice ~ 0 + Name + Logo.Size + Design + Theme + Flavor
+ Color, data = data2)
m1
Похоже ли, что у меня проблема с синтаксисом, или, вероятно, проблема связана с моими данными?