如何在循环中使用$将R数据框中的列粘贴到公式中?

问题描述 投票:0回答:1

我需要帮助,使用$符号将数据框列作为公式粘贴到R中。

df1 <- data.frame(id1 = c(1, 2, 3, 4, 5),
              id2 = c(1, 2, 3, 4, 5),
              var1 = c(3,6,6,9,5),
              var2 = c(1, 1, 0, 0, 1))
rownames(df1)<-c("first","second","third","fourth","fifth")

trait=c("id1","id2")
list=as.character("var1","var2")

for(i in trait){
  fit <- lm(df1[,i]~df1$list[2])
}

我要粘贴lm的第二部分(df1 $ list [2])。在$之后,我希望它粘贴字符向量列表的相应元素。

r loops paste anova
1个回答
1
投票

[lm可以一次在多个左侧运行:

lm(cbind(id1, id2) ~ var1 + var2, f1)

给予:

Call:
lm(formula = cbind(id1, id2) ~ var1 + var2, data = f1)

Coefficients:
             id1      id2    
(Intercept)  0.09091  0.09091
var1         0.45455  0.45455
var2         0.45455  0.45455
© www.soinside.com 2019 - 2024. All rights reserved.