美文网首页pythonRpython
python与R交互(rpy2的安装、配置和使用)

python与R交互(rpy2的安装、配置和使用)

作者: W_Dyuan | 来源:发表于2020-01-08 10:20 被阅读0次
    • 安装R
    • 安装rpy2
    • 配置
    • notebook的使用

    1. 安装R

    可以去网上搜索安装包直接安装。将R的路径放到系统环境,就可以在cmd中输入R来检验R安装是否成功。
    系统环境

    2. 安装rpy2

    作者直接pip install rpy2出错
    • 如果安装了anoconda或者miniconda,可以使用conda install rpy2直接安装rpy2(会自动选择合适的rpy2版本)。
    • 如果直接安装的python,可以去网上下载rpy2的安装包离线安装。

    3. 配置

    为了让python识别到R的安装地址,需要配置两个路径。
    • R_HOME;R_USER


      系统变量
    • 建议:设置好以后重启一下

    4. notebook的使用

    在配置好以后就可以直接在python中调用R了,例如:
    from rpy2.robjects import r as Rcode
    from rpy2.robjects.packages import importr as Rrequire
    Rrequire('ggplot2') # 导入R包
    print(Rcode("pi")) # 运行R语句
    # [1] 3.141593
    
    但是这么用有一些不方便,R很多时候需要一步步地运行来看变量或数据集的变化,此外Python调用的R与直接用R写代码时会有些许不同。使用notebook来解决这个问题,anoconda集成了notebook,以下的操作都在anoconda环境下的notebook中运行的。

    (如果只是调用R中的几个函数,以下可忽略)


    python调用R
    上图实现的过程中需要注意以下几点:
    • -i表示input,有时候还会用到-o,表示output。
    • 注意在这里R中的library用不了,用require。
    • 直接运行load_ext rpy2.ipython大概率会因为缺少一些包出错,缺什么补什么
    • %%R指的是调用%R,直接%R调用不了ggplot2。
    以下再给出一个调用R的例子,注意这里调用的%R调用的是R的基础包
    python调用R
    附1:
    • notebook中的语法提示,cmd中安装nbextensions,代码如下(以下代码在anoconda环境下可以运行):
    pip install jupyter_contrib_nbextensions
    jupyter contrib nbextension install --user
    pip install --user jupyter_nbextensions_configurator
    jupyter nbextensions_configurator enable --user
    
    • 重启后在nbextensions中勾选Hinterland
    附2:
    • R运行python可参考R的包reticulate,作者用不上,没有进一步研究。

    相关文章

      网友评论

        本文标题:python与R交互(rpy2的安装、配置和使用)

        本文链接:https://www.haomeiwen.com/subject/xebjactx.html