开始

rpy2安装使用中的问题

rpy2是python中的R语言接口模块,今天捣鼓了一个下午,终于把rpy2搞定,记录一下安装过程中需要注意的问题:

 

1. R编译的过程中,必须选择--enable-R-shlib 选项,将R编译成lib模式,在此模式下,会生成path-to-R/lib/libR.so库;

    同时,确保同目录下libRblas.so、libRlapack.so两个链接库也被正确生成,这两个库默认会生成,如果没有,需要添加参数:--enable-BLAS-shlib  --with-blas   --with-lapack

    如果不编译生成libR.so,rpy2就无法正确编译

2. R安装完成之后,如果安装到个人路径下,需要添加四个环境变量到配置文件中:

    export R_HOME=path-to-R

    export R_LIBS=$R_HOME/lib64/R/library

    export LD_LIBRARY_PATH=$R_HOME/lib:$LD_LIBRARY_PATH

    export PATH=$R_HOME/bin:$PATH

    其中比较容易漏掉的是PATH和LD_LIBRARY_PATH,如果是用root安装,可能会没有问题,如果安装到个人目录下,不添加这两个变量的话,就无法正确寻找需要的动态链接库;

    R_LIBS的作用是rpy2中调用安装的R包时,根据该变量寻找对应的包;

3. python编译安装之前,必须要先安装sqlite-devel,否则会报找不到_sqlite模块的错误信息,

    如果是已经安装好的python,则需要安装sqlite-devel库之后,重新安装python;

 

    确保以上三点没有问题之后,rpy2安装就比较简单了,直接使用

    pip install rpy2

    即可

 

检查rpy2是否正确安装:

>>> import rpy2.robjects as rb

>>> rb.r("library('ade4')")

<StrVector - Python:0x7fccfd2a2248 / R:0x2e44108>
[str, str, str, ..., str, str, str]

确保没有警告信息以及错误信息,rpy2就成功安装,并且可以正确调用已安装的R包了

 

posted @ 2015-07-30 19:25  Lyon2014  阅读(1404)  评论(0编辑  收藏  举报