Я задавал этот вопрос раньше, но так и не получил ответа, поэтому я пытаюсь снова и предоставляю пример набора данных, чтобы кто-то мог сказать мне, почему я получаю ошибки, которые я получаю, когда пытаюсь внедрить тест Вальда из aod и пакеты lmtest.
Пример данных:
marital <- sample(1:5, 64614, replace = T)
race <- sample(1:3, 64614, replace = T)
educ <- sample(1:20, 64614, replace = T)
test <- data.frame(educ, marital, race)
test$marital <- as.factor(test$marital)
test$race <- as.factor(test$race)
test$marital <- relevel(test$marital, ref = "3")
require(nnet)
require(aod)
require(lmtest)
testmod <- multinom(marital ~ race*educ, data = test)
testnull <- multinom(marital ~ 1, data = test) #null model for the global test
waldtest(testnull, testmod)
wald.test(b = coef(testmod), Sigma = vcov(testmod), Terms = 1:24) #testing all terms for the global test
Как вы можете видеть, когда я использую функцию waldtest из пакета lmtest, я получаю следующую ошибку:
Error in solve.default(vc[ovar, ovar]) : 'a' is 0-diml
Когда я использую функцию wald.test из aod, я получаю следующую ошибку:
Error in L %*% b : non-conformable arguments
Я предполагаю, что это связанные ошибки, поскольку обе они, похоже, связаны с матрицей отклонений. Я не уверен, почему я получаю эти ошибки, хотя в наборе данных нет пропущенных значений.