小能豆

将 rugarch R 库导入 python

py

我需要将 R 的 rugarch 库导入到 Python 中,以便进行波动性预测。这只是一个例子,由于它是单变量的,因此可以完全用 Python 完成,但是我稍后必须应用多变量方法,而我没有 Python 解决方案。所以我做了以下事情:

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(name) 中出错:没有名为“rugarch”的包。此外,我尝试强制安装 rugarch,如下所示:

utils.install_packages('rugarch')

但是我收到此错误:RRuntimeError:contrib.url(repos,“source”)中出现错误:尝试使用 CRAN 而不设置镜像。

有人能帮忙吗?我被困住了


阅读 6

收藏
2025-01-13

共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')
2025-01-13