我正在尝试从我在Rmarkdown文档中创建的virtualenv中导入一些python模块。我是python的新手,所以我将逐步完成设置过程。
(1)我使用以下命令在默认根目录r-reticulate
中创建了一个名为~/.virtualenvs
的新virtualevn
virtualenv -p /usr/bin/python3 r-reticulate
(2)激活环境后,我使用pip
安装了一些模块。以下是已安装软件包的列表:
$ pip list
Package Version
--------------- -------
cycler 0.10.0
kiwisolver 1.0.1
matplotlib 3.0.2
numpy 1.16.1
pandas 0.24.1
pip 19.0.3
pkg-resources 0.0.0
pyparsing 2.3.1
python-dateutil 2.8.0
pytz 2018.9
setuptools 40.8.0
six 1.12.0
virtualenv 16.4.1
wheel 0.33.1
(3)现在到我的R代码。我只有2个代码块。第一个:
```{r}
library(reticulate)
use_virtualenv(virtualenv = "r-reticulate")
```
第二个:
```{python}
import pandas as pd
import numpy as np
```
第一个代码卡盘运行没有错误,但是第二个代码卡盘返回:
ImportError: No module named matplotlib
我已通过激活r-reticulate
环境并通过终端导入这些模块来验证其工作原理。
Sesssion Info
R version 3.5.1 (2018-07-02)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.1 LTS
Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/atlas/libblas.so.3.10.3
LAPACK: /usr/lib/x86_64-linux-gnu/atlas/liblapack.so.3.10.3
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] reticulate_1.10 ggplot2_3.1.0
答案 0 :(得分:0)
经过进一步的挖掘,我发现我没有最新版本的reticulate
。升级到reticulate_1.9
似乎已解决了模块导入错误。我已经成功地从r-reticulate
环境中导入了其他软件包,因此我相信use_virtualenv(virtualenv = "r-reticulate")
现在可以正常工作了。