如何使用 R reticulate 安装 gekko 包?
How can I install gekko package using R reticulate?
我无法通过 R reticulate 安装 gekko 包。我的 R 版本是 3.4.4,我的 Python 版本是 3.8.8,我在 Python 中使用 Gekko 没有问题。所以我尝试以我知道的这两种方式在 R 上安装:
py_install("gekko")
网状::conda_install("my_conda_environment", "gekko")
然而,在这两种情况下,我都收到以下相同的错误。
PackagesNotFoundError:当前渠道不提供以下软件包:
- 壁虎
当前频道:
- https://conda.anaconda.org/root/win-64
- https://conda.anaconda.org/root/noarch
- https://repo.anaconda.com/pkgs/main/win-64
- https://repo.anaconda.com/pkgs/main/noarch
- https://repo.anaconda.com/pkgs/r/win-64
- https://repo.anaconda.com/pkgs/r/noarch
- https://repo.anaconda.com/pkgs/msys2/win-64
- https://repo.anaconda.com/pkgs/msys2/noarch
我没有在 Anaconda 文档中找到其他选择。我该如何解决这个问题?
编辑:我根据John Hedengren的回答和reticulate docs中的参考资料解决了我的问题。为此,我需要创建一个新环境以在 R 中使用以下代码指定 Python 版本和包:
reticulate::py_install(
packages = c(
"numpy",
"pandas", # Or another packages that you need
"gekko"
),
envname = "r-gekko",
method = "conda", # On Windows, the 'conda' method is always used
python_version = "3.8.8",
pip = TRUE # It's mandatory to install gekko
)
Gekko 可从 pypi.org 和 pip install gekko
获得,但不适用于 conda install gekko
的 conda 包管理器。这里有更多关于 how to install Python packages 和 pip
的信息。您可能已经知道这一点,因为您在 Python 中使用 gekko
,但我将其包含在此处以备不时之需。
两个潜在的问题是:
- 安装了多个 Python 版本,
gekko
未安装与 R 一起使用的版本。
- Reticulate 没有使用 PyPi 存储库来安装
gekko
。 additional information 管理源(Conda 或 PyPi)以检索包。
我对 R 不熟悉,但其他人也有类似的问题,例如:
- Error when installing package from PyPi in R using reticulate and Anaconda3
- reticulate conda_install fails to install package from PyPI
在类似情况下寻求帮助的更一般的答案:
- 在 R 的新环境中安装 gekko 和其他包。
reticulate::py_install(
packages = c(
"gekko",
"other_package==x.x.x", # It's possible to specify the package version
...
),
envname = "new_env",
method = "conda", # For Windows
python_version = "3.x.x",
pip = TRUE
)
- 使用新环境调用 reticulate 包。
Sys.setenv(RETICULATE_PYTHON = "/Users/user_name/anaconda#/envs/new_env/python.exe")
library(reticulate)
- 运行 你的 Python R 中带有 gekko 的脚本
source_python("path/script.py")
我无法通过 R reticulate 安装 gekko 包。我的 R 版本是 3.4.4,我的 Python 版本是 3.8.8,我在 Python 中使用 Gekko 没有问题。所以我尝试以我知道的这两种方式在 R 上安装:
py_install("gekko")
网状::conda_install("my_conda_environment", "gekko")
然而,在这两种情况下,我都收到以下相同的错误。
PackagesNotFoundError:当前渠道不提供以下软件包:
- 壁虎
当前频道:
- https://conda.anaconda.org/root/win-64
- https://conda.anaconda.org/root/noarch
- https://repo.anaconda.com/pkgs/main/win-64
- https://repo.anaconda.com/pkgs/main/noarch
- https://repo.anaconda.com/pkgs/r/win-64
- https://repo.anaconda.com/pkgs/r/noarch
- https://repo.anaconda.com/pkgs/msys2/win-64
- https://repo.anaconda.com/pkgs/msys2/noarch
我没有在 Anaconda 文档中找到其他选择。我该如何解决这个问题?
编辑:我根据John Hedengren的回答和reticulate docs中的参考资料解决了我的问题。为此,我需要创建一个新环境以在 R 中使用以下代码指定 Python 版本和包:
reticulate::py_install(
packages = c(
"numpy",
"pandas", # Or another packages that you need
"gekko"
),
envname = "r-gekko",
method = "conda", # On Windows, the 'conda' method is always used
python_version = "3.8.8",
pip = TRUE # It's mandatory to install gekko
)
Gekko 可从 pypi.org 和 pip install gekko
获得,但不适用于 conda install gekko
的 conda 包管理器。这里有更多关于 how to install Python packages 和 pip
的信息。您可能已经知道这一点,因为您在 Python 中使用 gekko
,但我将其包含在此处以备不时之需。
两个潜在的问题是:
- 安装了多个 Python 版本,
gekko
未安装与 R 一起使用的版本。 - Reticulate 没有使用 PyPi 存储库来安装
gekko
。 additional information 管理源(Conda 或 PyPi)以检索包。
我对 R 不熟悉,但其他人也有类似的问题,例如:
- Error when installing package from PyPi in R using reticulate and Anaconda3
- reticulate conda_install fails to install package from PyPI
在类似情况下寻求帮助的更一般的答案:
- 在 R 的新环境中安装 gekko 和其他包。
reticulate::py_install(
packages = c(
"gekko",
"other_package==x.x.x", # It's possible to specify the package version
...
),
envname = "new_env",
method = "conda", # For Windows
python_version = "3.x.x",
pip = TRUE
)
- 使用新环境调用 reticulate 包。
Sys.setenv(RETICULATE_PYTHON = "/Users/user_name/anaconda#/envs/new_env/python.exe")
library(reticulate)
- 运行 你的 Python R 中带有 gekko 的脚本
source_python("path/script.py")