我已经学习python大约一年了。我刚刚下载了R来尝试在Reticulate中使用Python。我的所有python包pip都安装在一个名为base的anaconda基础环境中。除了熊猫,我把所有的东西都弄好了。这是最奇怪的事情。
下面是我的代码:
{r}
library(reticulate)
use_condaenv(“base”){python}
import numpy as np
import matplotlib.pyplot as plt这很好用,我可以在RStudio中使用这两个包。然而,当我尝试import pandas as pd时,我得到了错误
ImportError: No Module named pandas...
我肯定在这个基础环境中安装了pandas pip和其他两个包。为了确认,我再次对所有3个都运行了一个pip install来进行检查。为什么熊猫不能工作呢?这太让人沮丧了!FWIW: seaborn (和其他软件包)也不能工作,也被安装了。
发布于 2020-08-25 06:18:07
也许您已经安装了多个版本的Python,如果在运行pip freeze时出现了不同的版本,那么您正在运行的是另一个版本。我建议在您的项目文件夹中安装virtualenv,以避免与其他包冲突。
pip install virtualenv
virtualenv venv
source venv/bin/activate然后把熊猫装进去。
pip install pandas您还可以尝试使用pip3安装pandas。
发布于 2020-08-25 06:19:09
你可以看看这个源码:
希望它能有所帮助:R Interface to Python
导入Python模块
来源: /python.R
导入指定的Python模块,从R调用。
import(module, as = NULL, convert = TRUE, delay_load = FALSE)
import_main(convert = TRUE)
import_builtins(convert = TRUE)
import_from_path(module, path = ".", convert = TRUE)参数
模块
模块名称
作为的
模块名称的别名(影响R类的名称)。请注意,这是一个高级参数,通常只应该在包开发中使用(因为它会影响导入类的S3名称,因此会影响S3方法调度)。
转换
如果为TRUE,则自动将Python对象转换为R等效项。如果您传递了FALSE,则可以使用the py_to_r()函数进行手动转换。
delay_load
如果为TRUE,则延迟加载模块,直到首次使用。如果为FALSE,则立即加载模块。如果提供了一个函数,那么它将在模块加载后被调用。如果提供了一个列表containing on_load() and on_error(E),则如果出现错误,将在成功加载and on_error(E)时调用then on_load()。
路径
要从中导入的路径
值
一个Python模块
详细信息
The import_from_path function从任意文件系统路径导入Python模块(指定的python脚本的目录会自动添加到the sys.path中)。
示例
if (FALSE)
{
main <- import_main()
sys <- import("sys")
}发布于 2022-01-11 21:10:38
看起来你使用的Mac是基于“框架”的输出。Python 2.7是Mac上的基础版本。最好的方法是安装Anaconda3,这将创建一个独立的新基础环境。
对于网格化,您需要PyQt5来呈现带有R Markdown的Python。因此,请执行以下步骤来设置它:
要将environment
pip install PyQT5激活到网状环境中,请下载并安装Anaconda
conda create --name cloned_env --clone original_env
,使其看起来与此conda create --name reticulate --clone base
conda activate reticulate类似现在检查您的Python:
which python3这将为您提供路径中包含Anaconda3的路径。在标准(文档)目录中,创建一个名为.Renviron.txt的文本文件
添加以下代码:
RETICULATE_PYTHON="your path from which python3"例如,我的是这样的,你的应该是蟒蛇:
RETICULATE_PYTHON="/anaconda3/bin/python" 它也可能是
RETICULATE_PYTHON="/anaconda3/envs/reticulate"然后,当您启动RStudio时,您应该拥有了所需的一切。
有很好的文档说明这个命令不起作用:
use_condaenv(“base”)在R中,检查命令Sys.getenv(),它应该确认您的RETICULATE_PYTHON变量已设置为您在.Renviron文件中指定的路径。
在这个链接上有更多关于这方面的讨论:
https://stackoverflow.com/questions/63569267
复制相似问题