2015-08-27 7 views
1

Скачал временной ряд из Quandl, используя следующую команду:Использование periodReturn с 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

Самым простым решением является явно создать объект XTS перейти к periodReturn:

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

Спасибо @Joshua Ульриха! – unmark1

 Смежные вопросы

  • Нет связанных вопросов^_^