使用循环一次运行多个回归

时间:2014-12-11 23:06:10

标签: r loops

我有一个包含147列的数据集,每列有7行。我想使用每列进行单独的回归分析。

fit = nls(DD$X1, ~ (1/(1+k*xValues)),start=list(k=k))

说明:

DD是数据集:它是一个数据框)级别为" X1," " X2"等

xValues = c(1,2,7,14,30,180,720)

k是我试图确定的参数

但是我想在一个循环中这样做,例如接下来为DD $ 2做,...一直到DD $ 147。 一路走来,我想存储适合的价值观。

我是r的新手:有人可以建议怎么做吗?非常感谢。

1 个答案:

答案 0 :(得分:0)

我在这里使用BodyFat数据集。您必须替换数据集文件名,并为响应和解释变量分配适当的列。

formu <-function(a,lis)
{
 k=""
 k= paste(a,'~',sep="")
 h=do.call("paste", c(lis, sep = "+"))
 formula1= paste(k,h,sep="")
 return(formula1) 
}

results=list()
dat = read.table("BodyFatPercentage.txt",header=TRUE)
g=names(dat)
target=names(dat)[2:2]
print(target)
expla=names(dat)[3:16]
for(i in 1:length(expla))
{
 formula1=formu(target,list(expla[i]))
 model1=lm(formula1,dat)
 print(model1)
 results[i] = model1
}
print results