我正在尝试循环浏览符号列表,下载数据并将其保存为csv文件。如果存在单个股票,它就会工作得很好,但如果出现错误,它就会停止,而我不知道如何处理错误(R的新手)我在这里使用了部分答案,但在循环将其保存到文件时,我无法找到错误处理的答案。
quantmod omitting tickers in getSymbols
startDate = Sys.Date()- 365
pth = "C:\\"
tickers <- c("LMT","AAPL","AMT", "GOOG")
#the sapply method works by not stopping when it has issues with LMT and still it goes not to dwld AAPL,
library(quantmod)
WoW <- new.env()
sapply(tickers, function(x){
try(
getSymbols(
x,
src ="google",
from =startDate,
env=WoW),
silent=TRUE)
})
#Now for the looping to save to file, somehow it does not go althe way till GOOG. it stops at AAPL
#Error in data.frame(sym) : row names contain missing values.
for (i in 1:length(tickers) ) {
col <- c( "Open","High","Low","Close","Volume")
sym <- eval(parse(text=paste("WoW$",tickers[i],sep="")))
if (!is.null(nrow(sym))){
colnames(sym) <- col
sym <- data.frame(sym)
sym <- cbind(BizDay = 0, sym)
sym$BizDay <- rownames(sym)
op <- paste0(pth,tickers[i],".csv")
print(op)
write.table(sym, file=op, na="", sep=",", row.names = FALSE)
}
}有什么关于如何处理基本错误的建议吗?我必须浏览完整的安全列表,并且必须确保我能够处理这些列表。但现在就卡在这上面了。
谢谢
发布于 2017-07-21 02:59:45
让它与nrow(sym) > 1 check一起工作。
https://stackoverflow.com/questions/45221515
复制相似问题