R PerformanceAnalytics CoVariance функция merge.zoo ошибка - PullRequest
0 голосов
/ 15 октября 2019

Я пытаюсь вычислить CoVariance для фрейма данных:

cov_test <- CoVariance (возвращает, возвращает) </p>

возвращает выглядит примерно так:

             A          B         C

28/ 02/1999 -0.018816 -0.011451 -0.026870

31/03/1999 0,004001 0,006580 0,002293

Ошибка, которую я получаю:

Ошибка в файле merge.zoo (e1, e2,all = FALSE, retclass = NULL): серию нельзя объединить с неуникальными индексными записями в серии. Дополнительно: Предупреждающие сообщения: 1: В зоопарке (cd, order.by = index (x), ...): некоторыеметоды для объектов «zoo» не работают, если записи индекса в «order.by» не являются уникальными 2. В zoo (rval, index (x) [i]): некоторые методы для объектов «zoo» не работают, еслииндексные записи в 'order.by' не являются уникальными 3: в zoo (rval, index (x) [i]): некоторые методы для объектов "zoo" не работают, если индексные записи в 'order.by' не являются уникальными4: В зоопарке (cd, order.by = index (x), ...): некоторые методы для объектов «зоопарка» не работают, если записи индекса в «order.by» не уникальны 5: В зоопарке (rval, index (x) [i]): некоторые методы для объектов «zoo» не работают, если записи индекса в «order.by» не являются уникальными 6: в zoo (rval, index (x) [i]):некоторые методы для объектов «zoo» не работают, если записи индекса в 'order.by' не уникальны

Однако, когда я использую простую функцию cov в R, она работает просто отлично ...

Может ли кто-нибудь посоветовать, в чем может быть проблема? Я проверил наличие дублированных строк с помощью anyDuplicated (return), и он вернул 0. Кроме того, в общем, в чем главное отличие функции CoVariance от PerformanceAnalytics и простой функции cov? Спасибо.

1 Ответ

0 голосов
/ 15 октября 2019

Это работает для меня в R 3.6.1 с PerformanceAnalytics 1.5.3 и zoo 1.8-6:

library(PerformanceAnalytics)
returns <- data.frame(dt = as.Date(c('1999/02/28', '1999/03/31')), A=c(-0.018816, 0.004001), B=c(-0.011451, 0.006580), C=c(-0.02687, 0.002293))

z <- zoo(returns[,-1], returns[,1])
CoVariance(z,z)
                         A            B            C
Covariance: A 0.0001301539 1.028533e-04 0.0001663530
Covariance: B 0.0001028533 8.127924e-05 0.0001314595
Covariance: C 0.0001663530 1.314595e-04 0.0002126201

Возможно, у вашего объекта зоопарка нет упорядоченного индекса? Проверьте формат дат при создании объекта зоопарка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...