r-Loop混合线性模型纵向时间数据评估组对连续变量的影响



编辑:

我试图评估随着时间(天(的推移,变量(如严重创伤的存在(对连续变量(此处为能量消耗(REE(,单位为卡路里(的影响。该数据帧称为my_data。在变量中

下面,我想在一个大文件中显示每个评估变量的混合线性模型的结果。

一般概念:

REE ~ Time*predictor + (1 + Time | Case identifier)

(1( 开始创建lmer模型:

library(tidyverse)
library(ggpmisc)
library(sjPlot)
library(lme4)
mixed.modelloop <- function(x) {
lmer(REE ~ Day*(x) + (1 + Day | Studynumber), 
data=my_data, 
REML=FALSE, 
na.action=na.omit,
control = lmerControl(check.nobs.vs.nRE = "ignore"))
}

(2( 然后创建预测器(x(

cols <- c(colnames(my_data))

(3( 然后生成整体purrr函数:

output <- purrr::map(cols, ~ mixed.modelloop(.x) %>% tab_model)

(4( 生成文件,该文件应包括所有单独的单变量混合模型分析:

pdf(file="mixed linear models.pdf" )
output
dev.off()

不幸的是,目前在步骤(3(之后,我收到以下错误消息:

Error in model.frame.default(data = my_data, na.action = na.omit, drop.unused.levels = TRUE, : 
variable lengths differ (found for 'x')

关于如何调整功能以解决此问题,有什么想法吗?

谢谢!

公式有特殊的规则,不能在其中插入字符串并期望它们工作。

这应该是可行的,尽管你还没有给出一个可复制的例子来测试。。。

mixed.modelloop <- function(x) {
form <- reformulate(c(sprintf("Day*%s", x), "(1 + Day | Studynumber)"),
response = "REE")
lmer(form,
data=my_data, 
REML=FALSE, 
na.action=na.omit,
control = lmerControl(check.nobs.vs.nRE = "ignore"))
}

最新更新