Если честно, я впервые вижу такой массив - [1:2, 1:2, 1:2496]
.Я вижу, что невозможно получить значения из этого с многомерными индексами как [1, 2, 1:2496]
.Он имеет длину 9984 (2496 * 4), поэтому вы можете получить нужные значения с помощью:
merge(DGS10, SP500) %>%
na.omit() %>%
roll_cor(width=5) %>%
`[`(seq(2, length(.), 4)) %>%
as.data.frame()
. Это может показаться вам немного неопределенным, поскольку вы новичок в R
, что эквивалентно:
temp <-
merge(DGS10, SP500) %>%
na.omit() %>%
roll_cor(width=5)
temp[seq(2, length(temp), 4)] %>%
as.data.frame()
Но я посоветую вам использовать библиотеку tidyquant
.Тогда вы можете получить свои результаты более понятным способом:
library(tidyquant)
tq_get(c('DGS10', 'SP500'), get = 'economic.data') %>%
spread(symbol, price) %>%
na.omit() %>%
tq_mutate_xy(
x = DGS10,
y = SP500,
mutate_fun = runCor,
n = 5
)