Почему xts.index перестал работать после обновления до R 4.0.0? - PullRequest
1 голос
/ 27 мая 2020

У меня есть большой объем кода с использованием объектов xts, все работает нормально с обновлением до R 4.0.0, но функция индекса теперь не работает. 1004 *

... Однако, если я запустил index (as.zoo (SPY)) ->, он вернет индекс дат, как ожидалось.

Похоже, что любая версия индекса соответствует к, он не может извлечь значение indexCLASS из объекта XTS.

Кто-нибудь знает, что не так? Я заключил index в функцию, которая вызывает zoo.index, но это полный взлом, и это неверно.

> sessionInfo()
R version 4.0.0 (2020-04-24)
Platform: x86_64-apple-darwin17.0 (64-bit)
Running under: macOS Catalina 10.15.4

Matrix products: default
BLAS:   /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/4.0/Resources/lib/libRlapack.dylib

Random number generation:
 RNG:     Mersenne-Twister 
 Normal:  Inversion 
 Sample:  Rounding 

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] parallel  stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] rugarch_1.4-2   Quandl_2.10.0   lubridate_1.7.8 quantmod_0.4.17 TTR_0.23-6      xts_0.12-0      zoo_1.8-8      

loaded via a namespace (and not attached):
 [1] Rcpp_1.0.4.6                MASS_7.3-51.5               mclust_5.4.6                lattice_0.20-41            
 [5] R6_2.4.1                    Rsolnp_1.16                 httr_1.4.1                  GeneralizedHyperbolic_0.8-4
 [9] tools_4.0.0                 SkewHyperbolic_0.4-0        spd_2.0-1                   grid_4.0.0                 
[13] KernSmooth_2.23-16          numDeriv_2016.8-1.1         Matrix_1.2-18               nloptr_1.2.2.1             
[17] DistributionUtils_0.6-0     ks_1.11.7                   curl_4.3                    compiler_4.0.0             
[21] generics_0.0.2              expm_0.999-4                jsonlite_1.6.1              truncnorm_1.0-8            
[25] mvtnorm_1.1-0 

1 Ответ

0 голосов
/ 04 июня 2020

В текущем коде xts нет следующей строки с ошибками, и она никогда не существовала исторически.

if (type == "Date" || type == "yearmon" || type == "yearqtr") temp = as.Date(temp)

Итак, я предполагаю, что в вашей глобальной среде есть функция index.xts(), строка кода, которая вызывает ошибку.

Вы упоминаете атрибут indexCLASS, который был удален в xts 0.12.0. Таким образом, функция, маскирующая index.xts(), скорее всего, имеет type <- attr(x, "indexCLASS") вместо использования indexClass() (не рекомендуется) или (предпочтительно) tclass() функции.

...