r-访问getSymbols返回的奇数命名对象



我正在使用quantmod:从雅虎下载数据

> getSymbols("HNZ-A.TO")
[1] "HNZ-A.TO"
Warning message:
In download.file(paste(yahoo.URL, "s=", Symbols.name, "&a=", from.m,  :
  downloaded length 70893 != reported length 200

该文件显示在我的R工作区中。数据在那里,我可以使用edit来查看对象,但我不能使用对象。例如:

> head(HNZ-A.TO)
Error in head(HNZ - A.TO) : object 'HNZ' not found

我能做些什么来使用这个对象?

使用反勾号或get

HNZA.TO <- `HNZ-A.TO`
HNZA.TO <- get("HNZ-A.TO")

或者,您可以通过将呼叫中的auto.assign=FALSE设置为getSymbols来避免这一切。

HNZA.TO <- getSymbols("HNZ-A.TO", auto.assign=FALSE)

您可能还想通过以下方式调整列名:

colnames(HNZA.TO) <- make.names(colnames(HNZA.TO))

HNZ <- getSymbols('HNZ-A.TO', auto.assign=FALSE)根据getSymbols的帮助页面。

另一种选择是setSymbolLookup告诉getSymbols在查询中使用不同的Symbol。

> setSymbolLookup(HNZ=list(src="yahoo", name="HNZ-A.TO"))
> getSymbols("HNZ")
[1] "HNZ"

好的,但您无法获得引号。也许另一种解决方案是:

HNZ&lt-读取.csv("http://ichart.finance.yahoo.com/table.csv?s=HNZ-A.TO&ignore=.csv",字符串AsFactors=F)

磁头

其优点是仍然可以轻松地获得所需的列。

最新更新