R 回归循环中表的新对象

R 回归循环中表的新对象,r,loops,R,Loops,我是R新手,正在尝试按组循环回归。对于我的数据,我有13个组,并且想要创建13个对象——每个组的回归结果,所以我可以将所有回归结果放在一个表中。 以下是我尝试过的: for (i in 1:13) {groupi = lm(Yvariable ~ Xvariables, data = dataset, subset = dataset$group== i )} 因此,我将有13个“I”组对象,每个对象都是要放入表中的回归结果。 谢谢 如果我没弄错你的

我是R新手,正在尝试按组循环回归。对于我的数据,我有13个组,并且想要创建13个对象——每个组的回归结果,所以我可以将所有回归结果放在一个表中。 以下是我尝试过的:

for (i in 1:13) {groupi = lm(Yvariable ~ Xvariables,
           data = dataset,
           subset = dataset$group== i )}
因此,我将有13个“I”组对象,每个对象都是要放入表中的回归结果。
谢谢

如果我没弄错你的问题,nlme包中有一个专门的命令:lmList。 试试这个:

    library(nlme)
    your.result.list <- lmList(Yvariable ~ Xvariables | group, data = dataset)
    your.result.list
库(nlme)

your.result.list考虑
by
,它是
tapply
的面向对象包装器,设计用于按因子对数据帧进行子集划分,并在子集上运行操作。通常,它可以替换
split
+
lappy
,以实现更精简的调用:

reg_list <- by(dataset, dataset$group, function(sub)
                summary(lm(Yvariable ~ Xvariables,
                           data = sub)
                       )
              )

reg\u list尝试本文中的一种解决方案:分割数据,然后将
lm
映射到不同的子集以形成一个列表:
值请参见
lme4::lmList()