将periodReturn与Quandl数据一起使用

时间:2015-08-27 13:48:55

标签: r xts quantmod quandl

我使用以下命令从Quandl下载了时间序列:

library(Quandl)
Quandl.auth("YOURSKEY")
mydata <- Quandl("TFGRAIN/SOYBEANS", authcode="YOURSKEY")

现在,我想使用quantmod包中的一些函数。但是,当我运行以下代码时收到错误消息:

periodReturn(mydata, period="monthly")
# Error in try.xts(x) : 
#   Error in as.POSIXlt.character(x, tz, ...) :
#   character string is not in a standard unambiguous format

我认为这是从mydata到xts对象的转换。所以,我尝试以下方法:

mydata_matrix <- as.matrix(mydata)
mydata_matrix_xts <- as.xts(mydata_matrix)
# Error in as.xts.matrix(mydata_matrix) : 
#   order.by must be either 'rownames()' or otherwise specified
rownames(mydata_matrix) <- mydata_matrix[,1]
mydata_matrix_xts <- as.xts(mydata_matrix)
# Error in as.POSIXlt.character(x, tz, ...) : 
#   character string is not in a standard unambiguous format

......但我仍然会遇到错误。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

最简单的解决方案是显式创建一个xts对象以传递给periodReturn

mydata_xts <- xts(mydata[,-1], mydata[,1])
monthly_return <- periodReturn(mydata_xts[,"Cash Price"], period="monthly")