如何动态构造lmer公式?

贝塔

我正在做混合模型,并且有4个变量x1-x4以及因变量y。该类变量称为cla。当前的建模结构是

md<-lmer(y~x1+x2+x3+x4+(1+x2|cla)+(1+x4|cla),data=mydata)

但是,假设我想将模型更改为以下格式

md<-lmer(y~x1+x2+x3+x4+(1+x2|cla)+(1+x3|cla)+(1+x4|cla),data=mydata)

我的问题是,如何使此代码动态化,以便我可以选择变量,并将其合并到模型中。对于仅4个变量,并不是很困难。但是对于大量变量,手动添加变量非常麻烦。

谢谢!

罗曼·卢斯特里克(Roman Lustrik)

事先准备公式的各个部分,将它们粘合在一起,然后将其强制到一个formula对象上。您可以将各个部分准备为其自己的变量,将它们命名为可预测的(x2x37,x4 ) so that you can automatically find them usingls(pattern =“”). You fetch each object usingget , pass that topaste , use acrash`参数,将它们粘合在一起,等等

fixed.part <- "y ~ x1 + x2 + x3"

x2 <-"(1+x2|cla)"
x3 <- "(1+x3|cla)"
x4 <- "(1+x4|cla)"

random.part <- paste(sapply(ls(pattern = "^x"), get), collapse = " + ")
formula(paste(fixed.part, random.part, sep = " + "))

y ~ x1 + x2 + x3 + (1 + x2 | cla) + (1 + x3 | cla) + (1 + x4 | cla)

如果您希望减少手动控制,则可以构造一个“空白”随机零件,添加一个适当的数字,其余与上述相同。

x <- "(1+x%s|cla)"
random.part <- paste(sprintf(x, 1:10), collapse = " + ")
formula(paste(fixed.part, random.part, sep = " + "))

y ~ x1 + x2 + x3 + (1 + x1 | cla) + (1 + x2 | cla) + (1 + x3 | 
    cla) + (1 + x4 | cla) + (1 + x5 | cla) + (1 + x6 | cla) + 
    (1 + x7 | cla) + (1 + x8 | cla) + (1 + x9 | cla) + (1 + x10 | 
    cla)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

动态构造要在XIRR公式中使用的范围

来自分类Dev

如何达到有关动态数组调整大小的公式?

来自分类Dev

如何在Flask中构造动态javascript创建?

来自分类Dev

TAPi18n:如何构造要动态翻译的密钥?

来自分类Dev

如何动态更改单元格的公式

来自分类Dev

创建动态公式

来自分类Dev

如何从类构造函数动态初始化项目?

来自分类Dev

如何动态构造lmer公式?

来自分类Dev

如何动态更改公式内的范围?

来自分类Dev

R:动态更新公式

来自分类Dev

如何为具有两个固定效应的混合效应模型编写lmer公式

来自分类Dev

Excel VBA-如何添加动态数组公式

来自分类Dev

使用NSE构造公式

来自分类Dev

如何在lmer for loop中动态使可变权重

来自分类Dev

如何使用动态工作表名称挂载公式

来自分类Dev

如何在Excel中动态计算公式的结果?

来自分类Dev

如何从动态数据构造JSON?

来自分类Dev

在参数化构造函数中如何动态?

来自分类Dev

如何摆脱lmer警告信息?

来自分类Dev

如何在公式中动态设置选项卡名称?

来自分类Dev

动态添加公式

来自分类Dev

如何在Java中动态计算公式?

来自分类Dev

动态Excel公式

来自分类Dev

如何构造动态@Para 语句?

来自分类Dev

变长公式构造

来自分类Dev

动态Excel公式

来自分类Dev

如何使用动态变量捕获地址放置 VBA 公式?

来自分类Dev

如何使我的条件格式公式更具动态性?

来自分类Dev

如何在空白行之间插入动态公式?