Используйте periodReturn с данными 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

... но я все еще получаю ошибки. Какие-либо предложения?


person unmark1    schedule 27.08.2015    source источник


Ответы (1)


Самое простое решение — явно создать объект xts для передачи в periodReturn:

mydata_xts <- xts(mydata[,-1], mydata[,1])
monthly_return <- periodReturn(mydata_xts[,"Cash Price"], period="monthly")
person Joshua Ulrich    schedule 29.08.2015
comment
Спасибо @Джошуа Ульрих! - person unmark1; 31.08.2015