RJava配置

  概念:rJava是一个简单的R到Java接口。它可以与.C / .Call C接口相媲美。rJava提供R和Java之间的低级桥接(通过JNI)。它允许从R创建对象,调用方法和访问Java对象的字段。rJava发行版本可以从CRAN获得- 通常install.package(“rJava”)在R中是可以的。当前的开发版本可以从文件部分下载,从某种意义上说,rJava的逆向是JRI(Java / R接口),它提供了相反的方向 - 从Java调用R。JRI现在作为rJava软件包的一部分发布,尽管它仍然可以作为一个独立的实体(特别是用于开发)。目前,rJava被用作JGR,iPlots和JavaGD软件/软件包的一部分。

  配置:

    1、安装r环境,导入rjava库,这样r这边几乎完成。

    2、环境变量的配置:

      CLASSPATH配置:D:\R-3.4.0\library\rJava\jri

      Path配置:D:\R-3.4.0\bin\x64

    3、java项目需要导入的依赖(在maven中)

    <!-- https://mvnrepository.com/artifact/com.github.lucarosellini.rJava/JRI -->
        <dependency>
            <groupId>com.github.lucarosellini.rJava</groupId>
            <artifactId>JRI</artifactId>
            <version>0.9-7</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.github.lucarosellini.rJava/REngine -->
        <dependency>
            <groupId>com.github.lucarosellini.rJava</groupId>
            <artifactId>REngine</artifactId>
            <version>0.9-7</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.github.lucarosellini.rJava/JRIEngine -->
        <dependency>
            <groupId>com.github.lucarosellini.rJava</groupId>
            <artifactId>JRIEngine</artifactId>
            <version>0.9-7</version>
        </dependency>    

    4、运行java程序指定环境

    -Djava.library.path="D:/R-3.4.0/library/rJava/jri/x64"

    例如:java -jar -Djava.library.path="D:/R-3.4.0/library/rJava/jri/x64" importHighfreqAvg.jar 

    eclipse中直接在run configurations中配置就行

    

  使用:

   1、在java中调用:

    实例化引擎

 private static final Rengine ren = new Rengine(new String[] { "--vanilla" }, false, null);

    编写命令

private static String command = "%s<-calYoyAvg('%s', '%s','%s','%s', '%s',%s,'%s')";

 retrieveStocksCommand = String.format(command, highfreqData, codes, startDate, endDate, coefAvg, coefHigh, flag,coefAdjust);

 

    将命令发送到r中执行,并接收返回值

org.rosuda.JRI.REXP list = ren.eval(retrieveStocksCommand);

    最后解析list。

  注意事项:

  1、第一次配置需要重启eclipse才能生效。

  2、所有的r需要依赖库需要在同一个文件夹下,一般默认安装在C:\Program Files,部分依赖库也会在这个文件夹下,但是后来安装的库会在“用户”文件夹下,将用户的库复制过去或者从新指定安装库位置。

 

转载于:https://www.cnblogs.com/fengmao/p/8259113.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值