挖泥功能错误 - R包MuMln

Mor*_*nor 19 statistics static-analysis r

我必须对数据集进行统计分析.我想创建所有可能的模型并使用挖泥功能测试它们但它不起作用.的确,当我输入:

glm1<-glm(presabs~dca1+dca2+se1+se2, family=binomial(logit))
dredge(glm1)
Run Code Online (Sandbox Code Playgroud)

我收到了这个错误:

Erreur in dredge(glm1) : 
'global.model''s 'na.action' argument is not set and options('na.action') is "na.omit"
Run Code Online (Sandbox Code Playgroud)

有人能帮我吗?

Luk*_*ham 32

我知道这已经解决,但我遇到了同样的问题,并认为有更好的方法.

使用的问题options(na.action = "na.fail")是它更改了R的全局设置.如果您有一个大的脚本更改全局设置可能会影响您隐含地依赖R的默认设置的代码的其他部分.有两种方法可以避免这种情况:

  1. 使用后通过dredge更改设置options(na.action = "na.omit").

或者更好的方式......

  1. 利用回归函数"设置参数"的能力.在你的情况下:

glm1<-glm(presabs~dca1+dca2+se1+se2, family=binomial(logit), na.action = "na.fail")


EDi*_*EDi 10

?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)
Run Code Online (Sandbox Code Playgroud)

如果跳过第二行,则会弹出描述的错误,因为模型适用于不同的数据集(由于删除了NA).