修订版(R中的for循环)

时间:2014-01-15 20:45:45

标签: r for-loop

我以前的问题没有得到论坛的好评,所以我发布了这段更新的代码。我试图在一些数据上运行for循环,用表达式(z-x)/ x填充向量的每个元素,但循环不会停止运行。我无法弄清楚原因。

for (i in 1:length(corr_data$close)) {
  x <- corr_data$close[i]; z <- corr_data$open[i+1]
  v <- corr_data$company[i]; w <- corr_data$company[i+1]
  x <- as.numeric(x)
  z <- as.numeric(z)
  overnight_ret <- rep(NA,length(corr_data$close))
  if (identical(v, w)){
    overnight_ret[i] <- ((z - x) / x)
  } else {
    overnight_ret <- "Null"
  }
}

1 个答案:

答案 0 :(得分:0)

我明白了。我决定在R中使用循环不是一个好主意,所以我只是偏移了向量。

open <- c(corr_data$open, 0)
close <- c(corr_data$close, 0)
openprice <- c(0, corr_data$open)
closeprice <- c(0, corr_data$close)

overnight_ret = (open - closeprice) / closeprice