(R MuMIn) Ошибка поднабора функции земснаряда
Я пытаюсь выбрать переменные, используя корреляционную матрицу в качестве аргумента "подмножество" с помощью dredge() в MuMIn (R).
Моя проблема точно такая, как описано в этом неразрешенном посте: я запускаю модель fm1* и использую dredge для проверки всех комбинаций переменных. Чтобы исключить некоторые комбинации, я использую матрицу sub1 sub1, следуя методу, описанному в демонстрационной версии dredge.subset.
> sub1
X1 X2 X3 X4 X5 X6 X7 X8 X9 X10
X1 NA NA NA NA NA NA NA NA NA NA
X2 TRUE NA NA NA NA NA NA NA NA NA
X3 FALSE FALSE NA NA NA NA NA NA NA NA
X4 FALSE FALSE TRUE NA NA NA NA NA NA NA
X5 FALSE FALSE FALSE FALSE NA NA NA NA NA NA
X6 FALSE FALSE FALSE FALSE TRUE NA NA NA NA NA
X7 TRUE FALSE TRUE FALSE FALSE TRUE NA NA NA NA
X8 FALSE TRUE TRUE TRUE TRUE FALSE TRUE NA NA NA
X9 TRUE TRUE TRUE TRUE FALSE TRUE FALSE FALSE NA NA
X10 TRUE TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE NA
Работает до 9 переменных; с более я получаю сообщение об ошибке:
> form
N ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10
> fm1<-glm(form,data=dfmod)
> ms1<-pdredge(fm1,subset=sub1,cluster=clust)
Warning message: In pdredge(fm1, subset = sub1, cluster = clust) :
non-missing values exist outside the lower triangle of 'subset'
Это не так, как показано:
any(!is.na(sub1[!lower.tri(sub1)]))
[1] FALSE
В дополнение к предупреждению таблица выбора модели включает наборы переменных, которые не были разрешены матрицей корреляции.
Я нашел обходной путь, преобразовав матрицу sub1 в логическое выражение, которое затем отлично работает как условие поднабора. Но было бы интересно понять, что происходит с матрицей.
* обратите внимание, что то же самое происходит с glm и glmer