你能通过 R 安装一个 Python 包吗 - Reticulate
Can you install a Python package via R - Reticulate
我将要在 R 中使用包 Reticulate 创建一个 python 界面。为了访问 R 中的 python 函数,需要安装相应的 python 包。
我想到了两个问题:
1) 如果使用reticulate包,需要安装Anaconda包吗?还是仅安装 python 个软件包就足够了?
2) 是否可以在 R 中安装 python 包,类似于 install.packages("r_package")?
有人有这方面的经验吗?提前致谢!
1) R 包 reticulate
可以使用默认的 python 或 Anaconda2
或 Anaconda3
。如果你想让 Anaconda 与 R 一起工作,你必须先安装 Anaconda。安装后,调用 library(reticulate)
和 运行 py_config()
或 reticulate::py_discover_config()
,这将为您提供 Python 安装使用的路径和环境列表。然后,一旦您知道了 Python 路径,就可以在 library(reticulate)
之后添加这样一行 use_python("/opt/miniconda2/bin/python")
,您就可以开始工作了。
2) 要安装 Python 包以便 R(或网状)可以看到它们,您必须从终端或控制台将它们作为常规 Python 包安装;不是 R。示例:conda install numpy
安装 numpy,或 conda install scipy
安装 scipy,等等。
我只是在 Docker 容器 rocker/rstudio
中完成所有这些工作。在标准 OS.
中应该更容易
这里是分步说明:rstudio reticulate
干杯!
我将在之前的答案中添加一些细微差别。
正如@f0nzie 所说,Anaconda 不是一个包,而是一个包管理器。理想情况下,您将使用 Anaconda 创建一个环境来协助您进行包管理和版本控制。 conda 环境的文档是 here.
现在,您可以将 python 包安装到 R 中的 anaconda 包中。这可以使用 reticulate::conda_install(envname, packages)
。 conda_install()
的文档可以在 here.
中找到
如果您需要特定版本的 Python 模块,请在模块名称后放置 ==
,例如以下将使用 pip 安装 3 个模块的特定版本:
reticulate::conda_install(c("PyMuPDF==1.14.20", "PyPDF2==1.26.0", "reportlab==3.5.23"),
envname = "myenv", pip = TRUE)
我将要在 R 中使用包 Reticulate 创建一个 python 界面。为了访问 R 中的 python 函数,需要安装相应的 python 包。
我想到了两个问题:
1) 如果使用reticulate包,需要安装Anaconda包吗?还是仅安装 python 个软件包就足够了?
2) 是否可以在 R 中安装 python 包,类似于 install.packages("r_package")?
有人有这方面的经验吗?提前致谢!
1) R 包 reticulate
可以使用默认的 python 或 Anaconda2
或 Anaconda3
。如果你想让 Anaconda 与 R 一起工作,你必须先安装 Anaconda。安装后,调用 library(reticulate)
和 运行 py_config()
或 reticulate::py_discover_config()
,这将为您提供 Python 安装使用的路径和环境列表。然后,一旦您知道了 Python 路径,就可以在 library(reticulate)
之后添加这样一行 use_python("/opt/miniconda2/bin/python")
,您就可以开始工作了。
2) 要安装 Python 包以便 R(或网状)可以看到它们,您必须从终端或控制台将它们作为常规 Python 包安装;不是 R。示例:conda install numpy
安装 numpy,或 conda install scipy
安装 scipy,等等。
我只是在 Docker 容器 rocker/rstudio
中完成所有这些工作。在标准 OS.
这里是分步说明:rstudio reticulate
干杯!
我将在之前的答案中添加一些细微差别。
正如@f0nzie 所说,Anaconda 不是一个包,而是一个包管理器。理想情况下,您将使用 Anaconda 创建一个环境来协助您进行包管理和版本控制。 conda 环境的文档是 here.
现在,您可以将 python 包安装到 R 中的 anaconda 包中。这可以使用 reticulate::conda_install(envname, packages)
。 conda_install()
的文档可以在 here.
如果您需要特定版本的 Python 模块,请在模块名称后放置 ==
,例如以下将使用 pip 安装 3 个模块的特定版本:
reticulate::conda_install(c("PyMuPDF==1.14.20", "PyPDF2==1.26.0", "reportlab==3.5.23"),
envname = "myenv", pip = TRUE)