嵌套For循环列表

时间:2017-08-23 06:25:48

标签: r

我试图创建一个嵌套的For循环来执行以下操作:外循环抓取100天的库存数据,然后每个循环向前迭代1天。内循环需要100天并运行100次回归(即第1天:100,第2天:100,第3天:100等)。它将每个回归的R2保存到列表中。假设,列表中的每个元素应包含100个r2。对R来说有点新,我不确定我做错了什么,但最终的结果是一个列表,其中每个元素只有一个值,而不是100.这是我的代码:

require(quantmod)

getSymbols("SPY", src = "google", from = "2016-10-15", to = "2017-08-14")
tmp <- SPY

tickerClose <- data.frame(tmp[,"SPY.Close"], Time = index(tmp))    

grab <- list()
for (j in 1:(nrow(tickerClose)-100)) {
        temp <- tickerClose[j:(99+j),]
                for (i in 1:100) {
                      tmpSet <- temp[(nrow(temp)-(100-i)):nrow(temp),]
                      colnames(tmpSet) <- c("Close","Time")
                      tickerQuad <- lm(Close ~ as.vector(Time), data = tmpSet)
                      grab[[i]] <- summary(tickerQuad)[8]
                } 
}

1 个答案:

答案 0 :(得分:2)

您可以将代码调整为

grab <- list()
final_grab <- list()
for (j in 1:(nrow(tickerClose)-100)) {
  for (i in 1:100) {
    <your code>
    grab[[i]] <- summary(tickerQuad)[8]
  } 
  final_grab[[j]] <- grab
}

final_grab将包含您感兴趣的结果列表。希望这会有所帮助!