【问题标题】:Unique response variable for a linear model in a for loopfor循环中线性模型的唯一响应变量
【发布时间】:2014-11-27 23:51:22
【问题描述】:

我有一个循环来创建线性模型,该模型使用相同的预测变量集用于不同的响应

for(i in resp){
  y=data[,i]
  df=data.frame(y, modelpredictors) #this creates a temporary data frame for you 
  name=paste("MODEL", nameIndex, sep=".") #Create unique model names
  model=lm(y~.,data=df)

  assign(name, model)
  nameIndex=nameIndex+1

}

稍后在我的代码中,我使用了一个函数(我正在循环的 dredge()),它需要为每个模型调用响应向量,在本例中为“y”。

我需要每个模型都有一个唯一的响应“名称”,以便我可以调用正确的向量。

【问题讨论】:

    标签: r loops for-loop


    【解决方案1】:

    如果您为不同的“y”变量创建不同的模型,您只需将第四行编辑为:

    name=paste('model',i,sep='.')
    

    然后你可以通过使用'get()'循环并调用每个模型,例如:

    for( i in resp){
    
        model_name<-paste('model',i,sep=',')
        model<-get(model_name)
    
    }
    

    【讨论】:

      猜你喜欢
      • 2014-11-24
      • 1970-01-01
      • 1970-01-01
      • 2011-12-08
      • 2017-06-27
      • 2021-02-16
      • 2021-01-17
      • 2020-12-21
      • 2021-10-08
      相关资源
      最近更新 更多