Полиномиальная модель логита

Я собираюсь использовать пакет mlogit. Я запускаю его как пример, но все равно выдает ошибку, и я не знаю, что с этим делать.

data72 = mlogit.data(data, choice ="Hour72motor", shape ="long", ,alt.levels="mode")
simple = mlogit(Hour72motor ~ Hemisphere +Lesionlocation + gender + Age+ DoesHematoma+study, data=data72)

Ошибка:

Ошибка в контрастах<- (tmp, value = contr.funs [1 + isOF [nn]]): контрасты могут применяться только к факторам с 2 или более уровнями

Спасибо за поддержку.

Я добавляю комментарий, который рекомендуется; изучить количество нечисловых переменных в модели

testdat <- na.omit(data72[c("Hour72motor", "Hemisphere", "Lesionlocation", 
      "gender","Age", "DoesHematoma", "study")]) ; 

lapply(testdat[!sapply(testdat, is.numeric)], table)
# $Hour72motor
# FALSE  TRUE 
#   128    16 

1 ответ

По моему опыту, это сообщение об ошибке обычно означает, что объект данных, который вы пытаетесь использовать на этапе моделирования, пуст или поврежден, или тип переменной, который вы используете в качестве y в вашей модели, не тот тип, который ему необходим быть. Вы проверяли фрейм данных, чтобы убедиться, что ваша первая строка кода выдает то, что вы хотели, Пытаться:

str(data72)
table(data72$Hour72motor)

Есть ли у вас ожидаемое количество столбцов и строк? Ваша целевая модель (Hour72motor) принимает значения, которые вы ожидали? Если нет, попробуйте поработать с первой строкой, чтобы убедиться, что вы извлекаете нужные данные в нужном формате.

Другие вопросы по тегам