Импорт библиотеки rugarch R в python

Мне нужно импортировать в python библиотеку rugarch из R для прогноза волатильности. Это всего лишь пример, который можно было бы сделать полностью на питоне, поскольку он одномерный, однако позже мне придется применить многомерный метод, для которого у меня нет решения на питоне. Итак, я сделал следующее:

from rpy2.robjects.packages import importr
import rpy2.robjects as robjects
from rpy2.robjects import numpy2ri

ошибка возникает, когда:

rugarch = importr('rugarch')
RRuntimeError: Error in loadNamespace(name) : there is no package called 'rugarch'

Я также попытался указать правильную папку как:

import rpy2.rinterface
utils = importr("utils")

base = importr('base')
print(base._libPaths())
got: C:/Users/simeone/Anaconda3/envs/Luigi/Lib/R/library

rugarch = importr('rugarch', lib_loc = C:/Users/simeone/Anaconda3/envs/Luigi/Lib/R/library")

все та же ошибка: RRuntimeError: ошибка в loadNamespace (имя): нет пакета с именем «rugarch». Кроме того, я попытался принудительно установить rugarch следующим образом:

utils.install_packages('rugarch')

но я получаю эту ошибку: RRuntimeError: Ошибка в contrib.url(repos, source): попытка использовать CRAN без установки зеркала.

Кто-нибудь может помочь? Я застрял


person Luigi87    schedule 29.07.2020    source источник


Ответы (1)


Я решил опубликовать ответ на этот вопрос, который работает и может помочь другим людям. Последняя команда работала, но отсутствовало зеркало CRAN. Итак, окончательный код:

from rpy2.robjects.packages import importr
import rpy2.robjects as robjects
from rpy2.robjects import numpy2ri

utils = importr("utils")
utils.chooseCRANmirror(ind=1) # this was missing
utils.install_packages('rugarch')
rugarch = importr('rugarch')
person Luigi87    schedule 29.07.2020