首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未能使用reticulate::use_virtualenv加载包

未能使用reticulate::use_virtualenv加载包
EN

Stack Overflow用户
提问于 2020-07-29 07:31:32
回答 1查看 1.1K关注 0票数 4

我一直试图通过R网运行一些python代码,但没有成功。我尝试创建一个虚拟环境并在其中安装两个包: numpy和一个名为scrublet的GitHub包。

代码语言:javascript
复制
library(reticulate)
if(!"r-scrublet" %in% virtualenv_list()) {
  virtualenv_create("r-scrublet")
  virtualenv_install("r-scrublet", c("numpy","git+https://github.com/AllonKleinLab/scrublet.git"))
}
use_virtualenv(virtualenv = "r-scrublet", required = T)

然后我想激活环境并在其上运行代码。当我运行py_discover_config()时,会得到输出:

代码语言:javascript
复制
python:         C:/Users/gilad/Documents/.virtualenvs/r-scrublet/Scripts/python.exe
libpython:      C:/Users/gilad/Documents/.virtualenvs/r-scrublet/Scripts/python36.dll
pythonhome:     C:/Users/gilad/Documents/.virtualenvs/r-scrublet
version:        3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)]
Architecture:   64bit
numpy:          C:/Users/gilad/Documents/.virtualenvs/r-scrublet/Lib/site-packages/numpy
numpy_version:  1.19.1

NOTE: Python version was forced by use_python function

这似乎是我想要的。问题是我似乎无法真正使用这个环境。如果我测试是否有numpy可用(py_numpy_available()),则不会得到,并且当我尝试任何import语句时(无论是对一个已安装的软件包,甚至是对类似于os的程序包),R都会崩溃:

R会话中止。R遇到一个致命的错误。会议结束

我尝试了不同的网状手册(这里这里)和不同的git问题,但仍然无法解决。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-02 17:18:52

从您提供的安装路径来看,您似乎在使用Windows。

如果您指的是virtualenv doc

Windows不支持虚拟环境函数(建议在Windows上使用conda环境 )。

尝试:

代码语言:javascript
复制
library(reticulate)
conda_create("r-scrublet")
conda_install(envname="r-scrublet", packages ="numpy","pip","git")

conda_python(envname =  "r-scrublet")

可以通过从scrublet.git环境根文件夹中运行来添加r-scrublet

代码语言:javascript
复制
Scripts\pip install git+https://github.com/AllonKleinLab/scrublet.git

或直接来自R:

代码语言:javascript
复制
conda_install(envname='r-scrublet','git+https://github.com/AllonKleinLab/scrublet.git',pip=T)

只要您应用此补丁。为了避免修补程序,您可能可以将\r-scrublets\Library\bin添加到系统路径中。

为了实现代码片段的完整性,一旦安装就绪,请通过以下方式指定它的用途:

代码语言:javascript
复制
use_miniconda("r-scrublet", required=T)
scrub <- import("scrublet")
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63148490

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档