RStudio 发现 Python pyenv 安装,但我无法 运行 Python 进程
RStudio discovers Python pyenv installation, but I'm unable to run Python processes
我正在尝试 运行 Python 在 RStudio 中。我已经通过 pyenv 安装了 Python 3.8.5,并在我的 RStudio 项目文件夹中创建了一个带有 pyenv virtualenv(我称之为 venv-Rstudio)的虚拟环境。根据给出的说明 here,我想我已经正确地向 RStudio 指示要使用哪个 Python 环境:
>Sys.setenv(RETICULATE_PYTHON="/Users/my_username/.pyenv/versions/venv-Rstudio/bin/python")
> py_discover_config()
python: /Users/my_username/.pyenv/versions/3.8.5/envs/venv-Rstudio/bin/python
libpython: [NOT FOUND]
pythonhome: /Users/my_username/.pyenv/versions/3.8.5:/Users/my_username/.pyenv/versions/3.8.5
version: 3.8.5 (default, Oct 1 2020, 21:50:37) [Clang 12.0.0 (clang-1200.0.32.2)]
numpy: /Users/my_username/.pyenv/versions/3.8.5/envs/venv-Rstudio/lib/python3.8/site-packages/numpy
numpy_version: 1.18.5
尝试调用 Python 时,出现以下错误:
> py_config()
Error: Python shared library not found, Python bindings not loaded.
Use reticulate::install_miniconda() if you'd like to install a Miniconda Python environment.
我怀疑这与上面看到的libpython: [NOT FOUND]
有关,但我确定libpython已安装在venv-Rstudio虚拟环境中:
(venv-Rstudio) my_username@MBP15 Rstudio % pip list
Package Version
---------------------- ---------
...
Keras 2.4.3
Keras-Preprocessing 1.1.2
libpython 0.2
Markdown 3.2.2
multidict 4.7.6
numpy 1.18.5
...
知道我可能遗漏了什么以及如何解决这个问题吗?我正在 运行ning macOS 10.15.7 Catalina,RStudio 1.3 和 R 版本 4.0.2。
发布我的问题后,@nucholab 的 appeared in the Related list, and 解决了我的问题。简而言之,re-installing Python 和 pyenv 使用以下命令启用可共享库:
env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install 3.8.5
在那之后 re-creating 我的虚拟环境(为了记录,安装 numpy),在 RStudio 中加载 Python 按预期工作:
> py_config()
python: /Users/my_username/.pyenv/versions/3.8.5/envs/venv-Rstudio/bin/python
libpython: /Users/my_username/.pyenv/versions/3.8.5/lib/libpython3.8.dylib
pythonhome: /Users/my_username/.pyenv/versions/3.8.5:/Users/andreas/.pyenv/versions/3.8.5
version: 3.8.5 (default, Oct 2 2020, 13:54:11) [Clang 12.0.0 (clang-1200.0.32.2)]
numpy: /Users/my_username/.pyenv/versions/3.8.5/envs/venv-Rstudio/lib/python3.8/site-packages/numpy
numpy_version: 1.19.2
tensorflow: [NOT FOUND]
NOTE: Python version was forced by RETICULATE_PYTHON
我正在尝试 运行 Python 在 RStudio 中。我已经通过 pyenv 安装了 Python 3.8.5,并在我的 RStudio 项目文件夹中创建了一个带有 pyenv virtualenv(我称之为 venv-Rstudio)的虚拟环境。根据给出的说明 here,我想我已经正确地向 RStudio 指示要使用哪个 Python 环境:
>Sys.setenv(RETICULATE_PYTHON="/Users/my_username/.pyenv/versions/venv-Rstudio/bin/python")
> py_discover_config()
python: /Users/my_username/.pyenv/versions/3.8.5/envs/venv-Rstudio/bin/python
libpython: [NOT FOUND]
pythonhome: /Users/my_username/.pyenv/versions/3.8.5:/Users/my_username/.pyenv/versions/3.8.5
version: 3.8.5 (default, Oct 1 2020, 21:50:37) [Clang 12.0.0 (clang-1200.0.32.2)]
numpy: /Users/my_username/.pyenv/versions/3.8.5/envs/venv-Rstudio/lib/python3.8/site-packages/numpy
numpy_version: 1.18.5
尝试调用 Python 时,出现以下错误:
> py_config()
Error: Python shared library not found, Python bindings not loaded.
Use reticulate::install_miniconda() if you'd like to install a Miniconda Python environment.
我怀疑这与上面看到的libpython: [NOT FOUND]
有关,但我确定libpython已安装在venv-Rstudio虚拟环境中:
(venv-Rstudio) my_username@MBP15 Rstudio % pip list
Package Version
---------------------- ---------
...
Keras 2.4.3
Keras-Preprocessing 1.1.2
libpython 0.2
Markdown 3.2.2
multidict 4.7.6
numpy 1.18.5
...
知道我可能遗漏了什么以及如何解决这个问题吗?我正在 运行ning macOS 10.15.7 Catalina,RStudio 1.3 和 R 版本 4.0.2。
发布我的问题后,@nucholab 的
env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install 3.8.5
在那之后 re-creating 我的虚拟环境(为了记录,安装 numpy),在 RStudio 中加载 Python 按预期工作:
> py_config()
python: /Users/my_username/.pyenv/versions/3.8.5/envs/venv-Rstudio/bin/python
libpython: /Users/my_username/.pyenv/versions/3.8.5/lib/libpython3.8.dylib
pythonhome: /Users/my_username/.pyenv/versions/3.8.5:/Users/andreas/.pyenv/versions/3.8.5
version: 3.8.5 (default, Oct 2 2020, 13:54:11) [Clang 12.0.0 (clang-1200.0.32.2)]
numpy: /Users/my_username/.pyenv/versions/3.8.5/envs/venv-Rstudio/lib/python3.8/site-packages/numpy
numpy_version: 1.19.2
tensorflow: [NOT FOUND]
NOTE: Python version was forced by RETICULATE_PYTHON