我正在运行以下代码,工作正常:
model <- NULL
summary <- NULL
stepwise <- NULL
for (i in 1:100){
model[[i]] <- lm(r[[i]]~x1[[i]]+x2[[i]]+x3[[i]]+noise1[[i]]+noise2[[i]]+noise3[[i]]+noise4[[i]]+noise5[[i]]+noise6[[i]]+noise7[[i]])
summary[[i]] <- summary(model[[i]])$coefficients
stepwise[[i]] <- step(model[[i]], direction="both")$coefficients
}
我想设置一个计数器来跟踪存储在逐步列表中的变量。我想要计算每个变量(x1,x2,x3,noise1,noise2,noise3,noise4,noise5,noise6,noise7)出现的次数。我在想这样的事情
createCounter <- function(VALUE){
for (i in 1:100){
output <- VALUE <- VALUE+i
return(output)
}
}
但我不知道如何微调它,以便R知道如果逐步列表包含特定变量,则计算一个值。任何帮助,将不胜感激。
答案 0 :(得分:0)
嗯,step()$ coefficients返回系数的命名向量。虽然值包含实际系数,但向量上的名称存储变量的实际名称。因此,您可以使用
从所有100个模型中提取和计算所有变量名称table(unlist(lapply(stepwise, function(x) names(x))))