从R中的回归结果列表中提取系数

从R中的回归结果列表中提取系数,r,linear-regression,R,Linear Regression,我已经用数据帧数据创建了向量,并将它们存储在一个列表中。举个例子: # Simulation data vec2 <- c(2:20) vec3 <- c(21:39) vec4 <- c(31:49) vec5 <- c(2:20) vec6 <- c(2:20) vec7 <- c(21:39) vec8 <- c(31:49) vec9 <- c(21:39) vec10 <- c(31:49) # Make simulated df

我已经用数据帧数据创建了向量,并将它们存储在一个列表中。举个例子:

# Simulation data
vec2 <- c(2:20)
vec3 <- c(21:39)
vec4 <- c(31:49)
vec5 <- c(2:20)
vec6 <- c(2:20)
vec7 <- c(21:39)
vec8 <- c(31:49)
vec9 <- c(21:39)
vec10 <- c(31:49)
# Make simulated df to replicate something close to what I have
df <- data.frame(vec2,vec3,vec4,vec5,vec6,vec7,vec8,vec9,vec10)
现在,我想在var list上运行一个回归,作为y独立变量,log.logs作为x独立变量

I try this with the following: 
#Initialize list
results<-vector("list", length(var)) 
# Run regression
for(i in 1:length(df)){
  results[[i]]<-lm(log(var[[i]])~log(log.lags), data = var)
}
我尝试以下方法:
#初始化列表
结果这个怎么样

res <- lapply(var, function(x) lm(log(x)~log(log.lags)))
coefs <- lapply(res, function(x) coef(x)[2])

res可能会将
1:length(df)
更改为
1:nrow(df)
。另外,
variance
var
相同?最佳做法是避免使用R命令名作为用户定义的变量名。给我一个lm.fit答案(更快)lm.fit with log(y)~log(x)和il accept,im close now…lm.fit需要一个矩阵输入。。。我的输入是一个列表。lm只是非常非常慢!!你可以做以下事情。。但是,我不认为它会更快res2
I try this with the following: 
#Initialize list
results<-vector("list", length(var)) 
# Run regression
for(i in 1:length(df)){
  results[[i]]<-lm(log(var[[i]])~log(log.lags), data = var)
}
results<-vector("list", length(var)) 
coef<-vector("list", length(var)) 
for(i in 1:length(df)){
  results[[i]]<-lm(log(var[[i]])~log(log.lags), data = var)
  coef[[i]]<- coef(results[[i]])[2]
}
res <- lapply(var, function(x) lm(log(x)~log(log.lags)))
coefs <- lapply(res, function(x) coef(x)[2])