require(quantmod)
require(TTR)
require(PerformanceAnalytics)
tckr<-"^GSPC"
start<-"1986-12-31"
end<- format(Sys.Date(),"%Y-%m-%d") # yyyy-mm-dd
getSymbols(tckr, from=start, to=end)
US10yRate<-getSymbols("DGS10",src="FRED",auto.assign=FALSE,from=start, to=end)
US10yRate<-to.daily(US10yRate)[,1]
#running 25 day correlation
correlationSPand10y<-runCor(US10yRate[,1],GSPC[1:12789,2],n=25)
Этот код из блога TimelyPortfolio. Это дает мне ошибку в последней строке runCor. Причина в том, что количество наблюдений за US10yRate отличается от числа наблюдений GSPC. US10yRate имеет несмежные даты (1990-01-02, 1990-01-05 и т. Д.). Я хочу подмножество GSPC на основе дат US10yRate, чтобы они соответствовали друг другу. Эта операция похожа на слияние в SQL. Как я могу справиться с этим с объектами xts в R?Как использовать индекс объекта xts для подмножества другого объекта xts?
Спасибо!
Спасибо, что указал мне на соединение functino. Я пробовал ваш код, но он не работает. это структура xts [0]. – zsljulius
Это может быть проблема с часовым поясом с помощью xts. Что произойдет, если вы сначала выполните «Sys.setenv (TZ =« GMT »)? – GSee