Полиномиальная модель логита
Я собираюсь использовать пакет 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) принимает значения, которые вы ожидали? Если нет, попробуйте поработать с первой строкой, чтобы убедиться, что вы извлекаете нужные данные в нужном формате.