【发布时间】:2018-06-07 18:08:04
【问题描述】:
我正在冒险在 R 中使用 Reticulate 并且在安装软件包时遇到了麻烦,特别是 psycopg2,但我也尝试安装 twisted,结果相同。
在 R 中加载 reticulate 后,我再次检查以确保我的包已安装:
> conda_install(envname = "r-reticulate", packages="psycopg2")
Solving environment: ...working... done
# All requested packages already installed.
看起来不错。所以我将我的 condaenv 设置为 r-reticulate 只是为了确定。文档说我不应该这样做,但它不应该受到伤害:
> use_condaenv( "r-reticulate")
然后我尝试导入psycopg2:
> psycopg2 <- import('psycopg2')
Error in py_module_import(module, convert = convert) :
ImportError: No module named psycopg2
如果我以同样的方式安装twisted,我会得到同样的错误:
> twisted <- import('twisted')
Error in py_module_import(module, convert = convert) :
ImportError: No module named twisted
那么,我在这里做错了什么?
下面是conda_list 和py_config 的输出...我期待py_config 在我的r-reticulate 环境中向我显示python exe 的路径。但是我没有任何东西可以与之比较,所以我的期望可能是错误的。
> conda_list()
name python
1 Anaconda C:\\Users\\jal\\AppData\\Local\\Continuum\\Anaconda\\python.exe
2 r-reticulate C:\\Users\\jal\\AppData\\Local\\Continuum\\Anaconda\\envs\\r-reticulate\\python.exe
> py_config()
python: C:\Users\jal\AppData\Local\CONTIN~1\Anaconda\python.exe
libpython: C:/Users/jal/AppData/Local/CONTIN~1/Anaconda/python27.dll
pythonhome: C:\Users\jal\AppData\Local\CONTIN~1\Anaconda
version: 2.7.15 |Anaconda custom (64-bit)| (default, May 1 2018, 18:37:09) [MSC v.1500 64 bit (AMD64)]
Architecture: 64bit
numpy: C:\Users\jal\AppData\Local\CONTIN~1\Anaconda\lib\site-packages\numpy
numpy_version: 1.14.3
pandas: C:\Users\jal\AppData\Local\CONTIN~1\Anaconda\lib\site-packages\pandas
python versions found:
C:\Users\jal\AppData\Local\CONTIN~1\Anaconda\python.exe
C:\Users\jal\AppData\Local\CONTIN~1\ANACON~1\python.exe
【问题讨论】:
-
我第一次使用 reticulate 时遇到了类似的问题。从 shell 中删除并重新创建
r-reticulateconda 环境解决了我的问题,请参阅 github.com/rstudio/reticulate/issues/253。 -
我也一直在努力解决这个问题(在 OS X 上),但这些解决方案都没有奏效。我安装了 RStudio 1.2.x,我将 RETICULATE_PYTHON=
/python3 添加到我的 .Renviron 文件中,我删除并重新安装了 conda env r-reticulate。我运行 conda_install('r-reticulate', 'psycopg2')和'numpy' 相同,但是当我运行py_config()时两个包都没有出现。import('psycopg2')和import('numpy')都导致“ModuleNotFoundError: no module named ...” -
conda_install(...) 每次运行时都会安装。它无法识别软件包已安装。
-
在我的情况下,我有一个 ~/.virtualenvs/r-tensorflow 文件夹来尝试安装 tensorflow。删除该目录解决了这个问题。
-
重启 RStudio 为我解决了这个问题。
标签: r reticulate