我正在从 quandl 下载股票数据,并使用 trycatch 来捕获无法下载数据的股票。在大约 800 只股票中,有 9 只出现错误,但 try catch 陷入了无限循环,并且没有为其他股票写入 csv 文件。我不希望该命令再次尝试下载数据。我如何摆脱困境?
这是代码:
常量声明
date_Start<-Sys.Date()-1
date_End<-Sys.Date()
#loop for downloading todays's data
stocksData<-lapply(stockName,function(x,start_date,end_date){
startDate<-date_Start
endDate<-date_End
path<- path_Data
from.dat <- as.Date(startDate, format="%m/%d/%y")
to.dat <- as.Date(endDate, format="%m/%d/%y")
stockNameNew <- gsub("[/]","_",x)
#to remove the "." from stocknames and replace it by "_"
for(i in stockName){
downloadData <-tryCatch(Quandl(i,type = "xts",start_date = from.dat,end_date = to.dat),error=identity)
if(inherits(downloadData, "error"))
cat("Symbol '", i, "' not downloadable!\n", sep = "")
}
#downloads data from quandl
stockData <- as.data.frame(downloadData)
write.csv(stockData,fileName)
#csv file is created
})
输出是:
符号“NSE/GSPL”不可下载!符号“NSE/INDHOTEL”无法下载!符号“NSE/KOTAKGOLD”无法下载!符号“NSE/GSPL”不可下载!符号“NSE/INDHOTEL”无法下载!符号“NSE/KOTAKGOLD”无法下载!
repeated continuously...