Q:R如何循环节制分析

Q: R how to loop moderation analysis

我想对我的自变量 (x) 和因变量 (y) 之间的关系进行多项调节分析。我有一个数据集 (myData),其中包含变量 x、y 和许多调节器(a、b、c、d、e)。这里的代码:

for(i in 2:ncol(QBSData)){
    mod_name <- colnames(MyData)[i]
    mod_summaries[[i-1]]<-summary(
    lm(y ~ x + MyData[, c(mod_name)] + x * MyData[, c(mod_name)], data = MyData))
}
mod_summaries

代码运行正常,但我想在显示结果时将版主的名字(例如 a、b、c...)作为模型的名称。

关于如何实现此功能并改进代码以循环审核分析有什么建议吗?

提前致谢!

我认为你需要赋值函数:

a <- c("model1", "model2", "model3")
assign(a[1], 5)
#> model1
#[1] 5

#you name the moderator in a vector already, I believe (mod_name). So you need to add the following to your code:

slm <- summary(lm(y ~ x + MyData[, c(mod_name)] + x * MyData[, c(mod_name)], data = MyData))

assign(mod_name, slm)
``