无法在 R 中将 python 用于 Modeltime.gluonts
Unable to use python for Modeltime.gluonts in R
我正在构建一个 docker 图像,它将在 R 中包含 modeltime.gluonts
库。
我在 docker 文件中使用以下命令安装了 miniconda:
RUN R -e "reticulate::install_miniconda('/home/rstudio/miniconda/'); Sys.setenv(RETICULATE_MINICONDA_PATH = '/home/rstudio/miniconda/'); q(save = 'no')"
但是每当我尝试加载 modeltime.gluonts 库时,它都会抛出以下错误:
> library(modeltime.gluonts)
Loading required package: modeltime
Could not detect any Conda Python Environments with `reticulate::conda_list()`. Conda is required for 'modeltime.gluonts'. Try using `reticulate::install_miniconda()`.
其实镜像上已经准备好了conda环境:
> library(reticulate)
> conda_list()
name python
1 r-reticulate /home/rstudio/miniconda/envs/r-reticulate/bin/python
> conda_binary()
[1] "/home/rstudio/miniconda/bin/conda"
> conda_python()
[1] "/home/rstudio/miniconda/envs/r-reticulate/bin/python"
> conda_version()
[1] "conda 4.9.2"
> py_config()
python: /home/rstudio/miniconda/envs/r-reticulate/bin/python
libpython: /home/rstudio/miniconda/envs/r-reticulate/lib/libpython3.6m.so
pythonhome: /home/rstudio/miniconda/envs/r-reticulate:/home/rstudio/miniconda/envs/r-reticulate
version: 3.6.12 | packaged by conda-forge | (default, Dec 9 2020, 00:36:02) [GCC 9.3.0]
numpy: /home/rstudio/miniconda/envs/r-reticulate/lib/python3.6/site-packages/numpy
numpy_version: 1.19.4
python versions found:
/home/rstudio/miniconda/envs/r-reticulate/bin/python
/home/rstudio/miniconda/bin/python3
/usr/bin/python3
/home/rstudio/miniconda/bin/python
我尝试了以下方法:
- Change miniconda location
- Install miniconda by directly downloading from the terminal.
Sys.setenv(GLUONTS_PYTHON = 'path/to/python')
modeltime.gluonts::install_gluonts()
我正在使用 rocker/verse
基本图像。
我不知道是什么导致了这个错误。
有人可以帮我解决这个问题吗?
每当我尝试使用 r-gluonts
环境时,它都没有被设置为默认值。 Reticulate 仍将 r-reticulate
环境称为默认环境。
所以我不得不通过 conda
显式删除 r-reticulate
并为 GLUONTS_PYTHON="path/to/gluonts/enviroment"
设置路径
这对我有用:
reticulate::use_miniconda("~/Library/r-miniconda/envs/r-gluonts/bin/python")
我正在构建一个 docker 图像,它将在 R 中包含 modeltime.gluonts
库。
我在 docker 文件中使用以下命令安装了 miniconda:
RUN R -e "reticulate::install_miniconda('/home/rstudio/miniconda/'); Sys.setenv(RETICULATE_MINICONDA_PATH = '/home/rstudio/miniconda/'); q(save = 'no')"
但是每当我尝试加载 modeltime.gluonts 库时,它都会抛出以下错误:
> library(modeltime.gluonts)
Loading required package: modeltime
Could not detect any Conda Python Environments with `reticulate::conda_list()`. Conda is required for 'modeltime.gluonts'. Try using `reticulate::install_miniconda()`.
其实镜像上已经准备好了conda环境:
> library(reticulate)
> conda_list()
name python
1 r-reticulate /home/rstudio/miniconda/envs/r-reticulate/bin/python
> conda_binary()
[1] "/home/rstudio/miniconda/bin/conda"
> conda_python()
[1] "/home/rstudio/miniconda/envs/r-reticulate/bin/python"
> conda_version()
[1] "conda 4.9.2"
> py_config()
python: /home/rstudio/miniconda/envs/r-reticulate/bin/python
libpython: /home/rstudio/miniconda/envs/r-reticulate/lib/libpython3.6m.so
pythonhome: /home/rstudio/miniconda/envs/r-reticulate:/home/rstudio/miniconda/envs/r-reticulate
version: 3.6.12 | packaged by conda-forge | (default, Dec 9 2020, 00:36:02) [GCC 9.3.0]
numpy: /home/rstudio/miniconda/envs/r-reticulate/lib/python3.6/site-packages/numpy
numpy_version: 1.19.4
python versions found:
/home/rstudio/miniconda/envs/r-reticulate/bin/python
/home/rstudio/miniconda/bin/python3
/usr/bin/python3
/home/rstudio/miniconda/bin/python
我尝试了以下方法:
- Change miniconda location
- Install miniconda by directly downloading from the terminal.
Sys.setenv(GLUONTS_PYTHON = 'path/to/python')
modeltime.gluonts::install_gluonts()
我正在使用 rocker/verse
基本图像。
我不知道是什么导致了这个错误。 有人可以帮我解决这个问题吗?
每当我尝试使用 r-gluonts
环境时,它都没有被设置为默认值。 Reticulate 仍将 r-reticulate
环境称为默认环境。
所以我不得不通过 conda
显式删除 r-reticulate
并为 GLUONTS_PYTHON="path/to/gluonts/enviroment"
这对我有用:
reticulate::use_miniconda("~/Library/r-miniconda/envs/r-gluonts/bin/python")