如何在Python中导入R语言的包

8
我遇到了一个小问题。我试图安装 hunspell 包,但我发现它最初是一个 R 语言包。我安装了这个版本:https://anaconda.org/conda-forge/r-hunspell,但是我无法导入它。这个包可以在 Python 中使用吗?我应该使用 rpy2 导入它吗?因为这是我第一次使用跨平台包,所以有点困惑。
只是为了清楚起见,import hunspell 返回 ModuleNotFoundError: No module named 'hunspell',而 import r-hunspell 返回 SyntaxError: invalid syntax
我还注意到,这个包也安装了一个 r-base 包,但我也不确定如何导入它。

R包是专为R而设计的,与Python不同,它们是两种不同的语言。相反,您不能在R中运行Python模块。但是,这两种语言都有接口,Python中的'rpy2'和R中的'reticulate'(类似于Java扩展:'Jython'和'rJava'),它们可以间接地通过安装的库互相通信。 - Parfait
1个回答

11

在命令行中运行后:

pip install rpy2

如果你在Jupyter Notebook中,可以加上"!",下面的步骤将解决您的问题,这些步骤基于官方文档

# Using R inside python
import rpy2
import rpy2.robjects.packages as rpackages
from rpy2.robjects.vectors import StrVector
from rpy2.robjects.packages import importr
utils = rpackages.importr('utils')
utils.chooseCRANmirror(ind=1)

# Install packages
packnames = ('hunspell', 'some other desired packages')
utils.install_packages(StrVector(packnames))

# Load packages
hunspell = importr('hunspell')

如果您想要访问此模块中的特定功能,您可以查看这些答案或者 那些答案。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接