- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
rJava操作说明和注意事项
rJava操作说明和注意事项
R是统计计算的强大工具,而JAVA是做应用系统的主流语言,两者天然具有整合的需要。JAVA很适合开发应用系统,但是数学建模与计算能力非其所长,如果该系统需要进行大量的统计或者优化的计算,调用R是一种很好的方式。JAVA负责系统的构建,R用来做运算引擎,从而实现应用型与分析性相结合的系统。
rJava是一个R语言与Java语言的通信接口,通过底层JNI实现调用,允许在R中直接调用Java的对象与方法。
rJava还提供了Java调用R的功能,是通过JRI(Java/R Interface)实现的。JRI现在已经被嵌入到rJava的包中,我们也可以单独试用这个功能。
通过Java调用R,有两种方式,一种是Rserve,另一种方式是rJava。rJava方式通过调用R的动态链接库从而利用R中的函数。
章节介绍:
1.环境
2.rJava的安装
3.rJava实现R调用Java
4.rJava实现Java调用R
1.环境:Win7+RStudio+Eclipse
2.rJava的安装
install.packages(rJava)
安装好后需要修改环境变量,在PATH中添加%R_HOME%/bin与%R_HOME%/library/rJava/jri,注意R_HOME的路径要正确,重启系统使之生效。
我的R_HOME路径为:D:\R-3.1.1
PATH中关于rJava的部分为:
%R_HOME%\bin;%R_HOME%\library\rJava\jri;%R_HOME%\library\rJava\jri\i386;
3.rJava实现R调用Java
library(rJava)
Warning message:
程辑包‘rJava’是用R版本3.1.2 来建造的
search()
[1] .GlobalEnv package:rJava tools:rstudio
[4] package:stats package:graphics package:grDevices
[7] package:utils package:datasets package:methods
[10] Autoloads package:base
#启动JVM
.jinit()
#声明并赋值到字符串
s-.jnew(java/lang/String,Hello World!)
s
[1] Java-Object{Hello World!}
#查看字符串长度
.jcall(s,I,length)
[1] 12
#索引World的位置
.jcall(s,I,indexOf,World)
[1] 6
#查看concat的方法声明
.jmethods(s,concat)
[1] public java.lang.String java.lang.String.concat(java.lang.String)
#使用concat方法连接字符串
.jcall(s,Ljava/lang/String;,concat,s)
[1] Hello World!Hello World!
#打印字符串对象
print(s)
[1] Java-Object{Hello World!}
#打印字符串值
.jstrVal(s)
[1] Hello World!
#rJava优化过的方法调用,用$来调用方法
s$length()
[1] 12
s$indexOf(World)
[1] 6
4.rJava(JRI)实现Java调用R(win7)
1)在R中安装rJava
2)配置环境变量
3)启动Eclipse编写程序
需要引入三个jar包,分别为:JRI.jar、REngine.jar与JRIEngine.jar
在rJava包安装目录下的jri/examples里有现成的例子(rtest.java与rtest2.java),可以测试是否成功。
rtest.java源代码如下:
package rJava;
import java.io.*;
import java.awt.Frame;
import java.awt.FileDialog;
import java.util.Enumeration;
import org.rosuda.JRI.Rengine;
import org.rosuda.JRI.REXP;
import org.rosuda.JRI.RList;
import org.rosuda.JRI.RVector;
import org.rosuda.JRI.RMainLoopCallbacks;
c
您可能关注的文档
最近下载
- 新人教版八年级上册物理全册教学课件(2024年秋季新版教材).pptx
- 心房颤动患者心脏康复指南.pptx VIP
- 2023年美国心脏学会(AHA)心肺复苏(CPR)和心血管急救(ECC)指南.docx
- 第12章 机械效率 难题练习 2021年初中物理培优(重点高中自主招生 竞赛).docx VIP
- 中医内科学肥胖.pptx
- 整形外科诊疗指南.docx
- 提高四级手术术前多学科讨论完成率PDCA案例.pptx VIP
- 2025年秋新教科版三年级上册科学全册精编教案教学设计(新教材).docx
- 电工电子技术基础.pptx VIP
- 2025年新版《GAMP5(良好自动化生产实践规范)指南》中英对照版.pdf VIP
文档评论(0)