在Python中调用R语言,你可以使用`rpy2`这个第三方库。以下是使用`rpy2`调用R的基本步骤:
安装rpy2
你可以通过`pip`来安装`rpy2`。如果你使用的是Anaconda环境,可以使用`conda`来安装。
pip install rpy2
或者
conda install rpy2
导入rpy2
安装完成后,在Python脚本中导入`rpy2.robjects`模块。
import rpy2.robjects as robjects
调用R函数
你可以通过`robjects.r`来调用R中的函数。例如,调用R中的`pi`常量:
pi = robjects.r['pi']
print(pi)
执行R代码
如果你需要执行更复杂的R代码,可以将R代码作为字符串传递给`robjects.r`函数。
code = '''
f <- function(r) {
pi * r
}
f(3)
'''
r_code = robjects.r(code)
print(r_code)
导入R包
如果需要使用R的包,可以使用`rpy2.robjects.packages`中的`importr`函数。
from rpy2.robjects.packages import importr
hwriter = importr('hwriter')
使用hwriter包中的函数
hwriter.hwrite_table(matrix(1:10, 2))
转换数据类型
如果需要将R中的`data.frame`转换为Python的`pandas.DataFrame`,可以使用`pandas2ri`模块。
from rpy2.robjects import pandas2ri
corr_df_in_R = pandas2ri.py2ri_rdataframe(pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}))
确保在调用R之前,R的可执行文件路径已经添加到系统的环境变量中,以便Python可以找到R并执行R代码。