Длина переменных различается по ступенчатой ​​функции r - PullRequest
1 голос
/ 17 июня 2020

Я подогнал модель с помощью функции lmer() (работает хорошо). У меня есть 11 независимых переменных. Три из них, если они присутствуют в модели, приводят к тому, что функция step() (из пакета lmerTest) возвращает ошибку: «Длина переменных различается (найдено в« ... »)», где «...» - формула вызов. У меня нет значений NA в данных: там 600 строк, и все три проблемные c переменные (H, I, J) являются факторами.

Мой код:

library(purrr) ## for rdunif() 
library(lmerTest)
data2 = as.data.frame(matrix(c(rdunif(600*7,1,5),
                         rdunif(600*3,0,1),
                         rdunif(600,1,9),
                         rep(c("a","b"),300)),
                       nrow = 600), byrow = FALSE)
names(data2) = c("A","B","C","D", "E","F","G","H","I","J","Z","M")
data2[,7:10] = lapply(data2[,7:10],factor)
data2[,c(1:6,11)] = lapply(data2[,c(1:6,11)],as.numeric)

mod1 = lmer(Z ~ A+B+C+D+E+F+G+
          #H+
          #I+
          #J+ 
          (1|M),data2)
step.mod1 = lmerTest::step(mod1) #it works
#
mod2 = lmer(Z ~ A+B+C+D+E+F+G+H+
          #I+
          #J+ 
          (1|M),data2)
step.mod2 = lmerTest::step(mod2) #it does not work and returns: Variables length differ (found on "A+B+C+D+E+F+G+")
mod3 = lmer(Z ~ A+B+C+D+E+F+G+H+I+J+ 
          (1|M),data2)
step.mod3 = lmerTest::step(mod3) #it does not work and returns: Variables length differ (found on "A+B+C+D+E+F+G+H+I+")

Я знаю, что эта ошибка часто встречается при наличии НП, но какова ошибка в этом случае? Как исправить?

...