Ошибка функции земснаряда - R-пакет MuMln
Мне нужно делать статистические анализы в наборе данных. Я хотел бы создать все возможные модели и протестировать их с помощью функции экскаватора, но это не сработает.
Действительно, когда я печатаю:
glm1<-glm(presabs~dca1+dca2+se1+se2, family=binomial(logit))
dredge(glm1)
Я получил эту ошибку:
Erreur dans dredge(glm1) :
'global.model' 'na.action' argument is not set and options('na.action') is "na.omit"
Может кто-нибудь мне помочь?
Ответы
Ответ 1
См. ?dredge
:
# Example from Burnham and Anderson (2002), page 100:
data(Cement)
options(na.action = "na.fail") # prevent fitting models to different datasets
fm1 <- lm(y ~ ., data = Cement)
dd <- dredge(fm1)
Если вы пропустите вторую строку, ваша описанная ошибка появится, так как модели установлены на разные наборы данных (из-за удаления NA).
Ответ 2
Я знаю, что это было решено, однако я столкнулся с той же проблемой и считаю, что есть лучший способ.
Проблема с использованием options(na.action = "na.fail")
заключается в том, что он изменяет глобальные настройки R. Если у вас есть большой script, изменение глобальных настроек потенциально повлияет на другие разделы вашего кода, где вы неявно полагаетесь на настройки R по умолчанию. Существует два способа избежать этого:
- После использования
dredge
измените настройки с помощью options(na.action = "na.omit")
.
ИЛИ лучший способ...
- Используйте функцию функции регрессии для "установки аргумента". В вашем случае:
glm1<-glm(presabs~dca1+dca2+se1+se2, family=binomial(logit), na.action = "na.fail")