在 R 中解析引号:Quantmod 应用程序

Posted

技术标签:

【中文标题】在 R 中解析引号:Quantmod 应用程序【英文标题】:Parsing quotes in R: Quantmod application 【发布时间】:2011-10-11 17:44:12 【问题描述】:

我正在尝试创建在从 Yahoo 获取符号后提供历史波动率的函数。但是,当我将输出传递给波动率函数时,它不喜欢它; Get 变量被分配一个带引号的向量,例如“SPY”,但波动率函数只需要不带引号(SPY 没有“SPY”)。我尝试使用 noquote() 取消引号,现在出现以下错误:

log(x) 中的错误:数学函数的非数字参数

我的代码

require(quantmod)

vClose = function(X)
Get <- getSymbols(X, from="2000-01-01", src="yahoo")
Set <- noquote(Get)
volatility(Set, calc="close")

任何帮助都会很棒。

【问题讨论】:

【参考方案1】:

noquote()不是答案。相反,您想要get()。以下示例有效,但您可能希望将变量名称更改为 getGet 可能会混淆。

require(quantmod)

vClose = function(X)
Get <- getSymbols(X, from="2000-01-01", src="yahoo")
volatility(get(Get), calc="close")


vClose("SPY")

【讨论】:

【参考方案2】:

只需在您对getSymbols 的调用中设置auto.assign=FALSE

require(quantmod)
Get <- getSymbols("SPY", from="2000-01-01", auto.assign=FALSE)
volatility(Get, calc="close")

【讨论】:

以上是关于在 R 中解析引号:Quantmod 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

利用R语言获取股票数据教程

R语言实战应用精讲50篇(三十二)-R语言实现单变量时间序列(附R语言代码)

PHP “引号兄弟”

如何重命名 R 对象?

R语言 字符串

CSV 文件中的 ASP.NET 智能引号解析问题