1

我正在尝试使用 RBLPAPI BDH 创建列

StockMove <- function(ticker){
StockMove <- bdh("MSFT Equity", "Chg_Pct_1D", x$Date, x$Date)
colnames(ernmove) <- NULL
ernmove <- ernmove[,2]

}

但我不断收到错误

Error in eval(substitute(expr), envir, enclos) : expecting a single value
Called from: bdh_Impl(con, securities, fields, start.date, end.datee, options, overrides, verbose, identity)

x$Date 是一列历史日期,我正在尝试创建一个新列并为与该行中的 x$Date 列对应的每一行提取 BDH 数据。. 作为健全性检查,我使用 Sys.Date() 代替 x$Date 输入,它工作正常。

感谢您的任何建议,这是我的第一个问题,因此对任何错误表示歉意。

4

1 回答 1

1

你说 x$Date 是一列日期。BDH 想要一个开始日期和结束日期。我认为这就是错误告诉你的。你给它一个列,它需要一个值。

我从来没有写过任何 R 所以请原谅我这是错误的:

startDate <- min(x$Date)
endDate <-max(x$Date)
bdh("MSFT Equity", "Chg_Pct_1D", startDate, endDate)

BDH 不太适合从预定的日期列表中检索数据。一次甚至没有一个日期,因为假期有空数据,除非您使用覆盖来填充它们。

相反,我总是使用 BDH 检索从开始到结束的完整日期范围。如果我有一列我需要的特定日期,我会在该结果中查找它们。

于 2016-12-08T18:24:51.277 回答