如果你同时使用Python和R进行开发工作,或是使用两种语言的数据科学团队的成员,那么两种语言之间的接口将极大地简化你的工作流程!本文分别介绍了在Python中使用R,以及在R中使用Python,目录如下:
1、rpy2——Python请R出山
1.1 rpy2安装与配置
1.2 rpy2.robjects的使用
1)R包的导入与安装
2)Python获取R中的变量
3)R使用Python中的变量
4)Python与R之间DataFrame的相互转换
5)执行R脚本文件
1.3 在Jupyter Notebook中同时使用Python与R
2、 reticulate——R调戏Python
2.1 安装reticulate包
2.2 R Markdown中使用Python
2.3 导入Python库
2.4 加载Python脚本
2.5 在R中与Python交互
2.6 Python与R变量相互引用
以下为正文内容
一、rpy2——Python请R出山
rpy2是在Python中最常使用的访问R的接口,由几个子包或模块组成:
1)rpy2.rinterface:低级别接口,接近R的C语言接口,适用于需要运算性能的项目。
2)rpy2.robjects:基于rpy2.rinterface的高级别接口,使用简单,是最常使用的方式。
3)rpy2.interactive:高级别接口,适合交互工作,主要基于rpy2.robjects。
4)rpy2.rlike:提供了一种在Python中使用类似R编程的方式,即使环境中没有安装R。
本章主要介绍rpy2.robjects的使用以及Jupyter Notebook中同时使用Python和R。
1.1 rpy2安装与配置
系统环境变量中加入R_HOME与R_USER两个地址,配置完成后重启。
import osos.environ['R_HOME'] = 'D:\R\R-3.6.3'os.environ['R_USER'] = 'D:\ProgramData\Anaconda3\Lib\site-packages\rpy2'
Python安装rpy2库
#使用pip安装pip install rpy2#或者在安装Anaconda后使用conda安装,第一步可以省略,Anaconda会自动安装R环境conda install rpy2
安装完成之后,运行以下语句,若未出现报错,则表示安装成功!
#查看rpy2版本import rpy2print(rpy2.__version__)#导入R对象import rpy2.robjects as robjects
1.2 rpy2.robjects的使用 1)R包的导入与安装 在使用R代码时,通常第一步是要导入R包,rpy2的importr函数提供了此功能;在导入R的utils包之后,便可以使用其install_packages()函数安装R包。 注意:在R中是install.packages()函数,因为Python与R中的'.'用法不同。
#导入rpy2.robjects相关模块from rpy2.robjects.packages import importr# 导入R的base包base = importr('base')# 导入R的utils包utils = importr('utils')# 选择R的CRAN镜像utils.chooseCRANmirror(ind=17) #17-20是国内镜像# 安装R包utils.install_packages('ggplot2')
2)Python获取R中的变量 rpy2调用R中的变量使用robjects.r
import rpy2.robjects as robjects#调用R内置变量pipi = robjects.r['pi'] #方式一pi = ro