R lme4带挖泥船的随机效应结构

R lme4带挖泥船的随机效应结构,r,mixed-models,R,Mixed Models,我已在druge中构建了一个lme4模型,用于模型选择,但我无法将随机效应与相关固定效应对齐。我的完整模型的结构如下所示 fullModel<-glmer(y ~x1 + x2 + (0+x1|Year) + (0+x1|Country) + (0+x2|Year) + (0+x2|Country) + (1 | Year) +(1|Country), family=binomial('logit'),data = alldata) y ~x1 + (0+x1|Year) + (0+x1

我已在
druge
中构建了一个
lme4
模型,用于模型选择,但我无法将随机效应与相关固定效应对齐。我的完整模型的结构如下所示

fullModel<-glmer(y ~x1 + x2 + (0+x1|Year) + (0+x1|Country) + (0+x2|Year) + (0+x2|Country) + (1 | Year) +(1|Country), family=binomial('logit'),data = alldata)
y ~x1 + (0+x1|Year) + (0+x1|Country) + (0+x2|Year) +(0+x2|Country) + (1 | Year) +(1|Country), family=binomial('logit')

是否有一种方法可以配置
疏通
不选择具有其他指定固定效果的随机效果?我有大约x1…x50。

你不能开箱即用,因为
drage
目前省略了所有
(x | g)
表达式,但是你可以在(
g
lmer
周围做一个“包装器”,用其他东西(例如
re(x,g)
)替换公式中的“|”项,因此,
droge
认为这些是固定的效果。例如:

glmerwrap <-
function(formula) { 
    cl <- origCall <- match.call()
    cl[[1L]] <- as.name("glmer") # replace 'lmerwrap' with 'glmer'
    # replace "re" with "|" in the formula:
    f <- as.formula(do.call("substitute", list(formula, list(re = as.name("|")))))
    environment(f) <- environment(formula)
    cl$formula <- f
    x <- eval.parent(cl) # evaluate modified call
    # store original call and formula in the result:
    x@call  <- origCall
    attr(x@frame, "formula") <- formula
    x
}
formals(glmerwrap) <- formals(lme4::glmer)
现在,


操纵固定和随机效果

你不能开箱即用,因为
druge
目前省略了所有
(x | g)
表达式,但是你可以在(
g
lmer
周围做一个“包装器”,用其他东西(例如
re(x,g)
)替换公式中的“|”术语,这样
druge
认为这些是固定的效果。例如:

glmerwrap <-
function(formula) { 
    cl <- origCall <- match.call()
    cl[[1L]] <- as.name("glmer") # replace 'lmerwrap' with 'glmer'
    # replace "re" with "|" in the formula:
    f <- as.formula(do.call("substitute", list(formula, list(re = as.name("|")))))
    environment(f) <- environment(formula)
    cl$formula <- f
    x <- eval.parent(cl) # evaluate modified call
    # store original call and formula in the result:
    x@call  <- origCall
    attr(x@frame, "formula") <- formula
    x
}
formals(glmerwrap) <- formals(lme4::glmer)
现在,


操纵固定和随机效果

这是一项伟大的工作,对我来说很有效。我需要减少不必要的组合的数量。在您的示例中,我尝试只保留包含两种“固定”效果的模型,如下所示
druge(fm,subset=re(1,herd)和&re(1,obs))
,但这似乎不起作用。您将如何配置
druge
以仅保留包含're(1,obs)'和
re(1,herd)
druge(fm,fixed=~re(1,herd)+re(1,obs))
这是一个很好的解决方法,对我来说很有效。我需要减少不必要的组合的数量。在您的示例中,我尝试只保留包含两种“固定”效果的模型,如下所示
druge(fm,subset=re(1,herd)和&re(1,obs))
,但这似乎不起作用。您将如何配置
druge
以仅保留包含“re(1,obs)”和
re(1,羊群)
druge(fm,fixed=~re(1,羊群)+re(1,obs))
dredge(fm)